Why isn't Shopify sending my abandoned checkout emails?

Shopify's abandoned-checkout recovery email skips certain checkouts on purpose. Here are the conditions that commonly suppress it, and what to check for each one.

emailabandoned-checkoutcheckoutmarketing-automationrecovery

What's going on

A merchant sets up abandoned checkout recovery, watches customers add items and start checkout, and then nothing happens. No recovery email goes out, no entry shows up as sent in the abandoned checkouts report, and there's no error message anywhere explaining why. It looks like a bug, and it's a recurring source of confused threads in the Shopify community and elsewhere, because none of this is obvious from the admin alone.

In reality, Shopify's abandoned-checkout recovery has a set of conditions under which it deliberately does not send, and the picture gets more complicated because there are effectively two different paths a merchant might be using: a built-in checkout notification, and an optional marketing automation set up separately. The two can behave differently, particularly around whether a customer's marketing consent affects delivery, which is a common source of confusion when recovery volume changes without any obvious cause.

Because none of these conditions are surfaced to the merchant at the moment they happen, diagnosing a specific missing email usually means manually checking the checkout record against each known cause. There's no single log or toggle that states which condition applied to a given customer.

Why it happens

Abandoned-checkout recovery isn't a simple cart-sat-idle-so-send-an-email trigger. It's gated by several conditions that are easy to overlook: the customer needs to have supplied an email address rather than just a phone number, the checkout needs to still be incomplete when the send would go out, there can't be a payment error on the checkout, your store needs to support shipping to that address, and the cart can't consist entirely of free items with no shipping charge attached.

On top of those conditions, if you're using a marketing automation rather than (or in addition to) the built-in checkout notification, delivery can also depend on the customer's marketing consent status, since automation-based sends are treated as marketing communications. A customer who completes checkout up to the abandonment point but never opts in to marketing emails may be excluded from that automation entirely, which can look like a sudden, unexplained drop in recovery email volume if a merchant isn't aware of the distinction.

Multiple abandoned checkouts from the same customer, whether from retries, duplicate drafts, or a completed order superseding an earlier attempt, also tend to suppress the email for the earlier checkout. That further widens the gap between the number of checkouts a merchant expects to see an email for and the number that actually get one.

5 ways to fix it

1

Confirm you're looking at the right recovery mechanism and that it's turned on

Shopify has more than one way to follow up on an abandoned checkout: a built-in notification and, on many stores, an optional marketing automation you set up under Marketing. If you're relying on the automation, open it and confirm it's published and active, not just saved as a draft. If the automation sends only to customers who agreed to receive marketing emails, a customer who left that box unchecked at checkout won't get it no matter how long their cart sits — that's expected behavior, not a delivery failure, so check the customer's marketing subscription status before assuming something is broken.

2

Look for a duplicate or completed checkout suppressing the send

If a customer opens checkout more than once, for example they abandon it, come back, and start over, Shopify generally won't send a separate recovery message for the earlier attempt, and if any resulting checkout converts to a paid order before the recovery send would go out, no email fires at all. In your abandoned checkouts list, check for more than one entry tied to the same customer or email address around the same time. This is intentional suppression to avoid double-messaging a customer, but it does mean your recovery counts will always run a bit lower than raw abandonment counts.

3

Rule out a payment error or an address you can't ship to

A checkout that failed because of a payment processing error, or one where no shipping rate could be calculated for the customer's address, typically won't trigger a recovery email, since Shopify treats those as failed or incomplete checkouts rather than ones worth recovering. Check the individual checkout record for any error indicator, and confirm your shipping settings actually cover every country or region you accept orders from. These two conditions come up often enough to be worth ruling out early.

4

Check whether the customer only left a phone number

If your checkout setup allows a customer to proceed with just a phone number and no email address, Shopify has nothing to send a recovery email to, so the checkout will show up as abandoned with no message ever going out. If recovering those checkouts matters to you, you'll need a separate SMS marketing tool, since Shopify's native abandoned-checkout recovery works over email only.

5

Confirm the cart wasn't entirely free

A checkout made up entirely of $0 line items, such as free samples or a fully discounted order, with no shipping charge ever added, generally won't get a recovery email since there's no paid amount for the customer to come back and complete. This is a narrow case, but worth checking if the abandoned checkouts you're chasing are gift or sample orders rather than typical paid carts.

Bottom line

Most reports of a missing abandoned-checkout email trace back to one of a handful of conditions Shopify applies on purpose, rather than a bug: no marketing consent on an automation-based send, a duplicate or completed checkout, a payment or shipping failure, phone-only contact info, or an all-free cart. Work through your abandoned checkouts list and marketing automation settings to identify which condition applies before assuming email is broken. If you need to recover checkouts that Shopify's built-in tools intentionally skip, such as non-subscribers or phone-only customers, that usually calls for a separate recovery workflow or app rather than a native fix.

Still Stuck?

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.