Article icon Blog

Klaviyo Shopify Integration Audit: Events, Consent, Identity, Flows, and Deliverability

Article main image
Article main image

As with any Shopify integration, connecting to an external app or tool is pretty simple. The challenge is ensuring you’re getting the most out of the integration and that it’s working as expected both immediately and over time. 

A healthy Klaviyo Shopify integration means your customer profiles need to contain the right data, marketing consent needs to behave as intended, product views and add-to-cart actions need to reach the right customer, orders from both ecommerce and POS need to appear correctly, flows need to exclude people who no longer qualify, and, ultimately, the emails those flows generate have to reach an inbox.

Klaviyo’s native Shopify integration can sync customer, order, subscription, catalogue and onsite behavioural data. Much of that information syncs in real time, but different data types use different tracking and synchronization mechanisms. Some also have important exceptions.

This makes implementation QA a super important part of any Klaviyo setup.

A Klaviyo Shopify integration audit should verify the complete customer journey, from the first identifiable website visit through checkout, purchase, repeat purchase and in-store activity. 

Here’s everything you need to know about testing it. 

What Data Syncs Between Shopify and Klaviyo?

Before breaking down how to troubleshoot and audit individual events, let’s look closer at the Klaviyo and Shopify data sync and what this integration is supposed to do.

Your Shopify store can send Klaviyo:

  1. Customer profiles and profile properties

  2. Email subscription data and supported SMS consent data

  3. Shopify customer tags

  4. Order and product-level purchase events

  5. Fulfillment, cancellation and refund events

  6. Product and catalogue information

  7. Shopify Markets localization data

  8. Onsite behavioural activity

  9. Shopify POS order information

Klaviyo can also send back selected profile information, custom properties, and email or SMS subscription status to Shopify (when enabled). 

Most Shopify order, customer, and catalogue data syncs to Klaviyo in real time, but there are some exceptions: Klaviyo syncs Shopify collection updates every 12 hours, and Shopify Markets prices caused by exchange rate changes update every 14 days,  

Customer Profile Tests

Rather than starting your tests with real customers that likely have years of data and activity associated with them, use some controlled test customers instead. Create test identities like:

  • A brand-new email subscriber

  • An existing Shopify customer

  • An email subscriber who has unsubscribed

  • An SMS subscriber

  • A Shopify POS customer

  • A returning customer using an alternate email address

Create an action for each customer and inspect the corresponding Klaviyo profile. Confirm that the email address, phone number, name, locale, Shopify Tags and other properties actually used by segments or flows are present and correct.

Shopify customer tags appear in Klaviyo as the Shopify Tags list property, which means filtering logic should be built against the synced property rather than an assumed custom field.

Orders and Purchase Event Tests

Klaviyo tracks several Shopify events, including Checkout Started, Placed Order, Ordered Product, Fulfilled Order, Fulfilled Partial Order, Cancelled Order and Refunded Order.

To test that your events are triggering properly, complete a transaction and confirm: 

  • Checkout Started appears against the expected profile.

  • Placed Order appears after the transaction.

  • Product-level information is correct.

  • Fulfillment activity appears when the order is fulfilled.

  • The appropriate cancellation or refund event appears when applicable.

Two things of note here, however: 

  1. Klaviyo currently receives Refunded Order information only for fully refunded Shopify orders, not partial refunds. A missing Refunded Order event after a partial refund is therefore expected behaviour. 

  2. Similarly, Klaviyo won’t re-sync the original Shopify event every time an order changes. This means that if someone adds an order tag after the order has already been processed, that later tag won’t be retroactively added to the original Klaviyo event.

Neither of these should be counted as bugs even though they may feel like it. 

Catalogue and Shopify Markets Data Tests

If you’re using Klaviyo product blocks, merchandising flows, or selling to international markets, you’ll want to do a QA pass on your catalogue. Test representative products with:

  • Multiple variants

  • Sale and compare-at pricing

  • Different collections

  • Different market availability

  • Localized URLs

  • Multiple languages or currencies

If you’re using Shopify Markets, Klaviyo can sync localized product and variant titles, prices, compare-at prices, status, currency and URLs. Check that everything is appearing as it should.

How to Test a Shopify and Klaviyo Integration

A good Klaviyo Shopify integration audit uses repeatable test cases so that you can easily spot issues and unusual behaviour. When prepping your testing process, document: 

Precondition → customer action → expected Klaviyo event or profile change → expected properties → pass/fail result

This will make your audit reproducible and give developers a concrete example and guide to fix any uncovered issues. 

Here are a few audit areas of note, how to test, and what results you should expect:

Audit area

Test

Expected result

Integration

Review Shopify integration settings

Correct store and required sync options are active

App embed

Inspect Shopify’s active theme

Klaviyo app embed is enabled

Profile

Create a new Shopify customer

Correct Klaviyo profile appears

Email consent

Subscribe through Shopify

Profile joins the intended Klaviyo list

Onsite activity

Browse as an identified user

Active on Site appears

Viewed Product

Visit a product page

Viewed Product appears on the correct profile

Added to Cart

Add an item to cart

Shopify Added to Cart event appears

Checkout

Begin checkout

Checkout Started event appears

Purchase

Complete an order

Placed Order and product data appear

Full refund

Fully refund test order

Refunded Order appears

Catalogue

Inspect representative products

Correct product, variant, price and URL data

Identity

Use linked alternate identifiers

Where Klaviyo has a valid linking signal, activity resolves to the intended profile

POS

Complete an identified POS sale

Order appears with Source Name = pos

Shopify Flow

Trigger a custom event

Event and expected properties appear in Klaviyo

Flow exclusion

Purchase after entering abandonment flow

Remaining abandonment messages are skipped

Deliverability

Review authentication and recent sends

Authentication and negative-engagement metrics are healthy

Why Is Klaviyo Not Tracking Viewed Products?

Viewed Product not tracking in Klaviyo is one of the most common Shopify integration problems because order syncing and on-site tracking are separate aspects of the implementation. 

For Shopify, Viewed Product and Active on Site depend on the Klaviyo app embed. Viewed Collection, Submitted Search and the current automatic Added to Cart event are enabled through the “Track behavioural events” setting and use Shopify tracking.

If Viewed Product disappears, check the active Shopify theme first.

Publishing a new theme can leave the Klaviyo app embed disabled on that theme. Klaviyo specifically instructs merchants to re-enable the embed after adding a new Shopify theme.

Privacy settings can also affect the test. Depending on Shopify Customer Privacy configuration, Klaviyo might not collect certain onsite events from visitors in the EU, EEA, UK or Switzerland until the visitor has provided the required consent.

How to Audit Added to Cart Tracking in Klaviyo

Since Added to Cart tracking in Klaviyo has changed over time, many older accounts may need to audit their current setup to ensure everything is up to date.

Klaviyo’s current Shopify implementation can automatically track Added to Cart when Track behavioural events is enabled. Klaviyo describes this newer Shopify event as server-side and recommends migrating accounts that still rely on its older custom Added to Cart snippet; otherwise, older accounts might unintentionally end up with two similarly-named metrics.

During your audit, search through metrics, segments, flow, reports and email templates. Make sure production automation is listening to the intended Shopify-branded Added to Cart event, not an old snippet-based event left over from a previous implementation.

Klaviyo recommends enabling the new event, updating flows, segments, reports and other dependencies that use the old metric, and then removing the old implementation. One important exception: if the existing Added to Cart event is used in a Klaviyo product feed, Klaviyo currently recommends keeping the old snippet in place, as the legacy snippet hasn't been formally deprecated.

You should also test every cart interaction the storefront supports. This includes:

  • Standard product-page Add to Cart

  • Quick-add buttons on collection pages

  • Sticky Add to Cart components

  • Product bundles

  • Recommended-product widgets

  • Custom product builders

When testing the newer Shopify Added to Cart event, make sure the test customer has been identified through one of Shopify's supported identification methods. For example, submit a Shopify form, enter customer information during checkout, or log into a customer or Shop account before testing. A Klaviyo form can also identify the shopper for these Shopify-pixel events when profile syncing from Klaviyo to Shopify is enabled.

How Should Marketing Consent Sync Between Shopify and Klaviyo?

Shopify and Klaviyo shouldn’t be treated as if they share one consent field. When Shopify email subscriber syncing is enabled, historical email subscribers can be synchronized into the selected Klaviyo list. If a profile already exists, Klaviyo uses the more recent consent status based on its timestamp.

For ongoing Shopify-to-Klaviyo behaviour:

  • New Shopify subscribers can sync into the selected Klaviyo list.

  • A person unsubscribing in Shopify doesn’t automatically unsubscribe that person in Klaviyo.

  • A Klaviyo subscriber who simply leaves the Shopify checkout marketing checkbox unchecked isn’t automatically unsubscribed.

  • Someone who previously unsubscribed in Klaviyo can resubscribe through a later eligible Shopify checkout opt-in.

The opposite direction, however, behaves differently: When Klaviyo-to-Shopify subscription syncing is enabled, future Klaviyo email subscribe and unsubscribe changes can update Shopify. Email subscription status isn’t historically backfilled through that setting, and Klaviyo suppression is separate from Shopify consent. Suppressing an address in Klaviyo doesn’t change that customer’s consent status in Shopify.

Most of those Klaviyo-to-Shopify profile and consent changes will appear within about a minute, although Klaviyo allows up to 30 minutes.

Email and SMS Need Separate Tests

In the same way that you shouldn’t assume SMS consent equals email consent or vice versa, email and SMS are treated differently by Klaviyo and Shopify and will need to be audited separately. 

Historical Shopify email subscribers can be synchronized automatically, and historical Shopify SMS subscribers don’t automatically backfill into Klaviyo and therefore require a separate import process.

When performing your consent audit, test these four states separately:

  1. Subscribe

  2. Unsubscribe

  3. Suppress

  4. Resubscribe

How Does Klaviyo Identity Resolution Work With Shopify?

Clean, solid customer identity information turns transactional, behavioural, and POS data into useful lifecycle marketing, not a bunch of unrelated events.

Klaviyo’s identity resolution combines customer activity when it has reliable identifiers connecting profiles. An event containing multiple identifiers, like an email address and phone number, can provide the information Klaviyo needs to associate those identities. Forms and onsite tracking can also contribute to that process.

When auditing identity, follow one test customer through several interactions:

  1. Submit a form.

  2. Browse products.

  3. Add something to cart.

  4. Begin checkout.

  5. Purchase.

  6. Purchase again through Shopify POS, where applicable.

Then, inspect whether those behaviours contribute to a coherent customer record.

Klaviyo Multi Email Profiles Change the Profile-Merge Conversation

As of 2026, you’ll also need to account for Klaviyo’s new Multi Email Profile (MEP) feature. Now, you can store and manage up to five email addresses on one profile. Profiles can automatically merge when they share an external ID, such as an ecommerce customer ID. Each email retains its own consent and suppression information.

That means a modern Klaviyo customer profile merge audit shouldn’t automatically flag every alternate email as a duplicate-profile problem anymore. 

This is also relevant for flows, as the default behaviour changes: For campaigns, Klaviyo will send your emails to the profile’s Primary Email, but for event-triggered flows, the email will be sent to the address associated with the triggering event. If that event email can’t receive the message, the flow is skipped rather than falling back to another address on the profile. 

If you’re troubleshooting apparently missing abandoned-cart emails, it’s worth noting that this distinction could be your issue. 

Auditing Klaviyo POS Integration

Don’t just stop your integration audit with your website. Klaviyo syncs Shopify’s source_name on order events. Shopify POS orders can therefore be distinguished from web orders using Source Name = pos in Klaviyo segments and flow filters.

A Klaviyo POS integration audit should place an in-store order against a known customer and confirm:

  • The order appears against the expected profile.

  • Placed Order contains the expected merchandise.

  • Source Name identifies the order as pos.

  • Location or other required data is available.

  • In-store activity doesn’t accidentally trigger web-specific automation.

Consider that last point as strategic. Not every action should trigger every automation, but some should. For example, an in-store purchase should probably trigger a replenishment flow, but a post-purchase email about home delivery probably shouldn’t go out to a customer who just walked out of the store with their purchase. 

Auditing Shopify Flow and Custom Klaviyo Events

The Klaviyo Connector for Shopify Flow currently provides a Track an event action that can send an event name, customer information and properties from a Shopify workflow into Klaviyo. Those events appear as Shopify events in Klaviyo and can then support flows or segmentation.

For every Shopify Flow Klaviyo event, test the chain:

Shopify trigger → Flow conditions → Klaviyo Track an event action → Klaviyo profile → event properties → downstream flow or segment

Keep in mind that Klaviyo specifically warns that malformed JSON in Customer Properties or Event Properties can prevent data from being ingested correctly. Inspect the received event and verify the fields your automation depends on.

What Should a Klaviyo Flow Audit Include?

Once your data layer passes the audit, the next step is to check whether Klaviyo is doing what’s expected with that data. A Klaviyo flow audit should check:

  • Trigger metric

  • Trigger filters

  • Profile filters

  • Re-entry settings

  • Time delays

  • Purchase exclusions

  • POS versus web logic

  • Consent eligibility

  • Smart Sending settings

  • Dynamic event properties

  • Links

  • Message status

  • Skipped-recipient reasons

Check that your purchase exclusions work: For a checkout abandonment flow, Klaviyo recommends a profile filter that checks whether Placed Order has occurred zero times since the flow started. Because profile filters are re-evaluated as a recipient reaches actions, someone who purchases after entering the flow can then be skipped.

You’ll also want to make sure that you’re preventing overlapping abandonment flows. If you have separate flows for browse abandonment, added-to-cart abandonment, and checkout abandonment, add exclusions. 

Exclude people who have progressed to checkout or purchase. Where an Added to Cart flow is also running, exclude people who have added something to cart so they aren’t targeted simultaneously by both journeys.

What Should a Klaviyo Deliverability Audit Include?

Lastly, audit your Klaviyo deliverability to check whether your sending configuration and audience behaviour give your messages the best chance of reaching customers. Here’s what to review: 

  • Branded sending-domain configuration

  • DomainKeys Identified Mail (DKIM)

  • Domain-based message authentication, reporting, and conformance (DMARC)

  • Sender Policy Framework (SPF) configuration where applicable

  • Domain alignment

  • Click-tracking domain

  • Bounce rates

  • Unsubscribe rates

  • Spam complaints

  • Engagement by inbox provider

  • List acquisition sources

  • Sending frequency

  • Unengaged-profile strategy

Don't forget Gmail and Yahoo sender requirements. For merchants sending at scale, authentication is now an inbox-provider requirement, rather than just a best practice. Google requires bulk senders to personal Gmail accounts to authenticate with SPF and DKIM, publish a DMARC record, maintain domain alignment and support one-click unsubscribe for marketing and subscription emails. 

Yahoo has similar requirements for bulk senders, including SPF, DKIM, DMARC, easy unsubscribe and low spam complaint rates. Your Klaviyo deliverability audit should verify these requirements against the domains customers actually receive mail from.

Conclusion

A good Klaviyo Shopify integration gives marketing teams dependable information about what customers have done, what they’ve purchased, what they’re interested in and whether they’ve actually consented to receive marketing, but none of that matters if the underlying systems powering that integration aren’t working as expected. 

Profiles, tracking, Shopify consent sync, identity resolution, Shopify POS data, custom events, flow exclusions and deliverability all affect what eventually reaches the customer. Testing them together is the only reliable way to know whether a Klaviyo implementation is supporting the customer journey you intended to build.

For merchants with more complicated Shopify environments, especially those combining ecommerce, POS, custom integrations and sophisticated lifecycle automation, periodic audits can also catch problems introduced by theme launches, new apps, tracking changes or evolving Klaviyo functionality before they affect revenue. 

As both a Klaviyo and Shopify partner agency, we at Blue Badger can help you audit and improve your Klaviyo and Shopify ecosystems, including data synchronization, lifecycle flows, Shopify POS integrations and ongoing ecommerce support. Get in touch with us today to learn more.