Shopify Checkout Email Consent

  • 29 April 2022
  • 2 replies

  • Anonymous
  • 0 replies


my Shopify integration works correctly - when someone signups through a form, they receive a double-optin email from Klaviyo and after approving, they’re added into a list and Consent in their profile is green checked.

However, when someone signups through the Shopify Checkout (they check the box under the email), this happens:

  1. Their Klaviyo profile has Accepts Marketing = true, as it should (this is Shopify’s property).
  2. They will receive a separate double opt-in email from Klaviyo, because my integration is set to “Collect email subscribers” from Shopify and move them into my list in Klaviyo. That list triggers a separate double opt-in email by Klaviyo, which is intended.
  3. However, even after accepting the double opt-in email from Klaviyo, their Consent is still not set. I would expect, since they receive a separate double opt-in email from Klaviyo, that their Consent would be a green checkmark as well.

Am I missing something, please? My intention was to create a separate segment of people with a rule that if $consent = not set then suppress these people from all possible marketing emails. Just a safety net due to GDPR.

However, this is not possible since even if someones willingly signups during the checkout and then approve the double optin, they still have no Consent set in their Klaviyo profile.

I would understand that if they only signed up through Shopify. But in addition to that, they also manually approve their subscription through the native Klaviyo’s double-optin email. Shouldn’t this trigger approval trigger a Consent attribute in their profile?

Many thanks!


Best answer by David To 2 May 2022, 17:30

View original

2 replies

Userlevel 7
Badge +60

Hello @pqn,

Welcome to the Klaviyo Community!

This actually sounds like normal functioning behavior! Users who’ve opted into marketing via your checkout is not expected to have a green consent channel marker. Unlike users who have subscribed through a signup form. 

I’ve briefly explained this in a similar Community posts which I’ve included below:

To break it down simply, consent details are not synced to Klaviyo from third-party integrations. This includes ecommerce integrations such as Shopify. Because users who are synced from checkout to Klaviyo is considered an API (third-party integration) source, despite the contact joining your list, they would not have a green consent marker under their channel details. To learn more about these consent statuses of profiles, I would suggest taking a look at both our Understanding Consent in Profiles and Guide to Profiles in Klaviyo Help Center articles. 

Along this same understanding, profiles who have opted in via checkout wouldn’t be segmentable using the $consent property since Shopify - along with many third-party sources - is not recording and passing such a property to Klaviyo. For this reason, if you were concerned with GDPR, I would recommend reviewing our Guide to Collecting GDPR Compliant Consent article and reaching out to your own legal counsel for more details on how to appropriately collect this sort of consent detail. 

In order to use this $consent definition to include users who have opted in via the the checkout process, you’ll want to ensure that the checkbox is passing this $consent property. You can oftentimes adjust this via how your checkout page is coded with the help of a developer. 

I hope this helps!


@David To Thank you David, much appreciated. Now I understand why it is intended behaviour. In that case, I will still use my “fail-safe” segment, however I will suppress everyone that meets:

$consent = not set


Accepts marketing Doesn't Equal True

This should work hopefully.

Many thanks!