Skip to main content

Discover how Shopify’s Checkout Blocks empower merchants to capture valuable first-party customer data at checkout, creating new events and customer properties in Klaviyo to fuel smarter, data-driven marketing strategies.
 

Leveraging Checkout Extensibility to Unlock Valuable Customer Data

In a world where privacy regulations are tightening and third-party data sources are shrinking, first-party data has become more critical than ever. It’s the data your customers willingly share—direct from the source. This unlocks opportunities for deeper personalisation and smarter marketing. In this article, we’ll explore how you can leverage this data using Checkout Blocks & Shopify’s Checkout Extensibility.

In Shopify Summer Editions 2024, Shopify announced that Checkout Blocks is now free for all Plus merchants, offering more flexibility to customise the checkout experience. With Checkout Blocks, merchants can easily add custom fields, style changes, and even modify text, all without coding. These custom fields enable merchants to gather valuable first-party data directly at checkout, which can then be stored as order or customer properties for actionable insights in Klaviyo, enhancing both customer segmentation and personalised marketing.

When it comes to Klaviyo, much of the data merchants gather comes from signup forms, where visitors exchange information for discounts or freebies. However, customers aren’t always willing to share data upfront, and existing customers often skip signup forms and may not engage with questions via email. This is where Checkout Blocks comes in, offering an opportunity to gather first-party data directly at checkout, providing deeper insights not only into your customers but also into the products they order.

Real-Life Use Cases for Checkout Blocks

I run a multi-brand alcohol e-commerce business called The Bottle Club, and we initially assumed customers buying whisky or gin were purchasing for themselves, so we mistakenly added them to a whisky or gin segment. By adding a custom field at checkout, Who is this for? We discovered many customers were buying gifts or hosting events. This gave us a deeper understanding of our customer's behaviour and use cases. With this insight, we can now identify our best gift products and enable personalised marketing with timely gift reminders or hosting-related content, instead of relying on assumptions. It also helps us see which wines customers bought for hosting versus personal consumption.

This insight also allows us to go beyond product promotion. For customers hosting events, we can inspire them with guides on how to host memorable gatherings, creating a sense of community around shared experiences rather than simply focusing on sales.

In other industries, this approach can be equally valuable. In health and beauty, asking What skin concern are you addressing? helps target follow-ups with personalised product recommendations and advice. In sports fashion, asking What sport are you playing? allows for continued engagement with relevant gear or training tips. Similarly, in fashion, asking What occasion are you buying for? creates opportunities to offer styling tips or suggest accessories for weddings or special events.

Beyond customer insights, Checkout Blocks can capture important functional data. For example, collecting a Date of Birth is essential for age-restricted purchases like alcohol, and can also populate age-gating for SMS marketing, ensuring compliance with legal requirements. Additionally, collecting delivery instructions, such as preferred drop-off locations or access details, helps improve delivery accuracy and customer satisfaction. Other useful fields may include preferred delivery times or contact preferences, streamlining logistics and enhancing the overall customer experience.

Step-by-Step Guide to Setting Up Checkout Blocks and Automation

Now that we’ve explored the importance of first-party data and real-life use cases, let’s dive into how you can set up Checkout Blocks to start gathering actionable insights at checkout. Below is a step-by-step guide to get you started:

1. Download and Access Checkout Blocks 

Begin by downloading Checkout Blocks from the Shopify App Store. After installation, it will appear under Sales Channels in your Shopify admin, not under Apps. From the Sales Channels section, you can access and start setting up your custom fields to gather first-party data.

2. Setting Up a Custom Field in Checkout Blocks

Now that you're in Checkout Blocks, follow these steps to create and configure your custom field:

  • Navigate to Blocks and click on Create a Block.
  • Choose Custom Field: Collect additional information from customers.
  • Start with a Blank Template.
  • Name the block and set the App Block ID to make it easy to identify later.
  • Add display rules if needed, though in this case, we want the block visible to all customers.
  • Choose whether to store the data as an order metafield or an order note.

3. Choosing a Custom Field Type

When configuring the custom field, select from options like:

  • Checkbox
  • Date and time picker
  • Date of birth
  • Dropdown
  • Phone
  • Radio button
  • Text field

In the example provided, we're using Radio Buttons with multiple choices, as shown in the attached screenshots.

4. Configuring the Radio Button Custom Field

  • Set the field as a Required Field so that customers cannot proceed without answering.
  • Add the Field Label: "Who is this for?"
  • Notice the Metafield Key that will be created (in this case, checkoutblocks.who_is_this_for). This maps the response to the order data.
  • Add the choices for the Radio Buttons:
    • Label: It's for Me! | Value: self
    • Label: It's a Gift | Value: gift
    • Label: I'm Hosting | Value: host
    • Label: Business/Trade | Value: trade
    • Label: Other | Value: other
  • Choose the Display Style—whether you prefer Grouped or Plain radio buttons (this is a personal preference).

5. Finalising the Block Configuration

After setting up your field and options, review the Section Title and Subtitle on the page. This allows you to label the section appropriately within your checkout flow. You can leave it as is or adjust it to fit your branding or customer communication needs.

6. Accessing the Checkout Editor

Once you’ve finished setting up your custom block, click the More Actions dropdown and select Add to Checkout. Follow the on-screen instructions, then click Open Editor to access the Checkout Editor, where you can begin positioning your new block within the checkout flow.

7. Placing the Block in the Checkout Editor

In the Checkout Editor, click Add App Block from the menu on the left-hand side. Then, choose Custom Field and select the app block ID you set when creating the block. Once selected, click Back, and drag the block to your desired location in the checkout flow—such as just before the payment section. You can see a preview of the block in the editor to check its placement. Save your changes, and test its functionality to ensure it works as expected in the checkout process.


The same process can be followed to add a Date of Birth field or other functional data. For age-restricted products, placing this in the Delivery > Shipping section is ideal. This location makes the request seem part of the delivery information, rather than for marketing purposes, helping to build trust with customers. Simply create a new custom field, choose Date of Birth as the field type, and follow the same steps to integrate it into your checkout flow.

 

8. Defining the Metafield in Shopify

To define the metafield, go to Settings in the bottom-left corner of your Shopify admin. Click on Custom Data, then select Orders and choose View Unstructured Metafields. Here, you’ll find the metafields you created in Checkout Blocks. Assign a name and select the appropriate type: for custom fields like "Who is this for?", use single-line text; for Date of Birth, select date. Once set, the data will appear in the order details in your Shopify admin.

9. Setting Up Shopify Flow

While Shopify Flow may seem intimidating, it’s an incredibly powerful tool for automating workflows. Navigate to the Flow app (pre-installed in Shopify). Start by creating a new flow:

  • Click Create Workflow and select the trigger: Shopify > Order is created.
  • Then add an action: Flow > Wait > 1 minute (to allow backend processing).
  • Next, add a condition: If > Add a variable > Order > Search for metafield (not metafields).
  • Select one of your defined metafields (e.g., Who is this for?), give it an alias (e.g., who_is_this_for), and input the value (e.g., self).

Repeat this process for each defined value (self, gift, host, etc.) to build your flow.

10. Connecting Shopify Flow with Klaviyo

For each of the actions previously defined, you'll now integrate Klaviyo to track events:

  1. Click Then > Action > Klaviyo > Track Event.
  2. Inside this event:
  • Add your Klaviyo Public API Key.
  • Set the Event Name for Klaviyo.
  • For Customer Email, click Add Variable > Order > Email. This will insert the value {{order.email}}.
  • For Customer First Name, click Add Variable > Order > Customer > First Name ({{order.customer.firstName}}).
  • For Customer Last Name, click Add Variable > Order > Customer > Last Name ({{order.customer.lastName}}).

For Customer Properties (e.g., for "self" buyers), use:

{

  "self-consumer": "true"

}

For Event Properties, follow these steps:

 

Copy this template:
{

  "order-type": ""

}

Click between the quotation marks ("") and then click Add Variable > Order.

From the list of metafield values you created earlier, select the relevant metafield (e.g., who_is_this_for).

This will automatically insert the value from the checkout block into the event properties, ensuring it reflects the customer’s selection.

Repeat this process for each value (e.g., gift, host, etc.). For "other," leave Customer Properties empty and just set Event Properties to

The Same steps will work in a second flow for Date of birth, this would just be a customer property.

11. Running a Test and Verifying in Klaviyo

Run a test order using the profile information you’ve set up. Once the order is completed, navigate to Klaviyo and search for the customer profile associated with the test. Check that the flow was triggered correctly and that the event data is populated, showing the correct "order-type" values. Additionally, verify that the Customer Properties have been updated with the defined values, such as "self-consumer: true", if applicable.

12. Building Segments and Using Data to Create Flows in Klaviyo

Now that data is coming into Klaviyo, you can start building segments. Navigate to Lists & Segments, click Create Segment, and name it (e.g., "Self Consumers"). Set the conditions: Property about someone > select the property you created (e.g., self-consumer) > and set the value to is true (type: boolean).

Now you can use this data to begin building flows:

  • Create a flow > Build your own > Create manually.
  • Choose the trigger: All triggers > Metrics > Search for the event (e.g., "Who is this for?").
  • Add Trigger Filters: Select order-type from the Dimension options and then in dimension value, select the desired event (e.g., self, gift, host).

You can also trigger flows based on Added to Segment.

Bringing It All Together: Unlocking the Power of First-Party Data

In conclusion, leveraging Shopify Checkout Blocks, Shopify Flow, and Klaviyo allows you to collect valuable first-party data directly from your checkout process, helping you create more personalised marketing strategies. By customising fields, automating workflows, and segmenting your audience based on real-time data, you can build stronger customer relationships and improve overall business performance. Whether gathering customer preferences or functional data like age verification, these tools empower you to unlock deeper insights and drive more effective engagement with your audience.

 

Great piece @TimMartinHarvey!  I think all merchants, especially those on Shopify Plus, should take advantage of this to collect more data about their customers.

Coupling this with other places to collect “zero party data” and you can build better Segments and in turn, more personalized Flows and messaging.  


Reply