My Shopify Flow abandoned cart email keeps failing because the customer "doesn't accept marketing" - how do I fix it?
Shopify Flow's Send Marketing Email action won't fire for customers who haven't opted into marketing. Here's why, and which native settings actually recover the sale.
What's going on
You set up a Shopify Flow to email customers who leave items in their cart, but it keeps failing on the Send Marketing Email step with an error like customer does not accept marketing. The workflow runs fine for some customers and fails for others, and nothing in the Flow editor explains why, there's no option on the action itself to ignore consent.
This happens because Send Marketing Email is built specifically for marketing sends, and Shopify enforces consent at the platform level: it will only act on a customer whose marketing subscription status shows they've opted in. A customer who abandoned a cart or checkout without ever subscribing to marketing emails, which includes most guest checkouts and anyone who skipped or unchecked a subscribe box, isn't a valid target for that action, so Flow blocks the send rather than emailing someone who hasn't consented.
This is a different problem from Shopify's built-in abandoned checkout email, which is a separate, narrower feature: it targets people who got as far as entering an email address at checkout and didn't complete the order, and it isn't routed through the same marketing-consent gate. Cart abandonment (never reaching checkout) and checkout abandonment (reaching checkout, providing an email, not completing) are different events in Shopify, and only the second one currently has a solid native recovery path.
Why it happens
Shopify treats abandoned-cart follow-up emails as marketing communications rather than transactional order updates, because they're promotional in intent (come back and buy this) even when the copy reads like a plain reminder. Marketing emails generally require opt-in consent under laws like CAN-SPAM, CASL, and GDPR, so Shopify builds that consent check directly into the Send Marketing Email action in Flow rather than leaving enforcement to the merchant.
The native abandoned checkout email avoids this specific error because it's scoped to a narrower, more transactional moment, someone who was already mid-checkout and provided an email address, and Shopify ships that feature with its own eligibility rules separate from the general marketing-consent flag used elsewhere.
4 ways to fix it
Turn on Shopify's native abandoned checkout email instead of fighting Flow
In your Shopify admin, look in the checkout settings for the abandoned checkout email option and turn it on. This built-in feature emails anyone who entered an email address during checkout and didn't finish the order, and it isn't gated by the same marketing-consent flag that blocks Flow's Send Marketing Email action. It costs nothing, works immediately, and is the right tool for checkout abandonment specifically, which is the case described here.
If you keep the Flow, add a consent check before the marketing-email step
Add a condition step ahead of Send Marketing Email that checks whether the customer has accepted marketing, and only route consented customers into that action. For everyone else, end that branch cleanly, for example by logging it or sending an internal notification, instead of letting the whole run error out. This stops the workflow from failing and makes the split between customers you can and can't email explicit.
Capture marketing consent at checkout so fewer future customers get blocked
Check your checkout settings for an option to ask customers for marketing consent during checkout, and make sure it's enabled. This won't recover the specific abandoned session you're looking at now, but it steadily grows the pool of customers your Flow-based marketing sends are allowed to reach, which shrinks this problem over time.
For customers who haven't consented, use a channel other than marketing email
For customers without marketing consent, some merchants fall back to on-site retargeting, paid ad retargeting, or SMS, each of which follows different consent rules than email marketing. Treat any of these as its own compliance question, not a technical workaround for the same requirement, and check the rules that apply in your customers' regions before relying on them.
Bottom line
This is a consent design choice, not a Shopify bug: Flow's Send Marketing Email action enforces marketing consent because abandoned-cart follow-ups are legally marketing, while the native abandoned checkout email is scoped more narrowly and isn't gated the same way. Start with that native toggle, and only build Flow branching or bring in a dedicated marketing app if you need custom timing or copy beyond what the native feature offers. No app can legally bypass the underlying consent requirement.
Browse the rest of the problem library, run a free storefront scan to catch issues like this automatically, or email us and we'll work out a custom solution for it.