Cart abandonment recovery on Shopify
Most recovery advice is really email advice. Email is excellent at what it reaches, but it can only reach shoppers who identified themselves. This is a map of all the layers, including the one most stores leave empty.
The three layers, and who each one reaches
Recovery is usually discussed as one thing. It is actually three, and they act at different moments on different people.
| Layer | Reaches | Timing | Requires |
|---|---|---|---|
| Email and SMS flows | Shoppers who reached checkout and gave contact details | Minutes to days later | An email address or phone number |
| Paid retargeting | Shoppers trackable across sites | Hours to days later | Ad budget and tracking consent |
| On-site recovery | Anyone still on the site, including anonymous visitors | The seconds before leaving | Nothing from the shopper |
The gap
Layers one and two both require the shopper to have given you something first: an address, or a trackable identity. The largest group of abandoning visitors gave you neither. They looked at a product, did not add to cart or added and stalled, and closed the tab.
For that group there is exactly one window: while they are still on the page. Once the tab closes they are gone, and no flow, budget, or segment brings them back.
Building the stack in the right order
- Start with abandoned-checkout email. It is the highest-intent group and Shopify supports it natively. If you are not running this, do it first; nothing below replaces it.
- Add on-site recovery for the anonymous majority. This is the layer that requires nothing from the shopper, and it is usually the empty one.
- Layer retargeting last. It costs money per impression and depends on tracking consent, so its economics are the least predictable.
How to measure without fooling yourself
Recovery reporting is unusually easy to inflate. Two rules keep it honest:
- Demand order-level proof. A single-use code that appears on a specific Shopify order proves that specific intervention was used. An "influenced revenue" number that counts every order touching a campaign proves very little.
- Test incrementality. Withhold the intervention from a random share and compare purchase rates. Without this you cannot separate sales you created from sales you relabeled.
Clinch was built around both. It attributes only orders carrying one of its single-use codes, and it can stay silent for a configurable share of leaving shoppers to measure the difference. A low measured lift is a legitimate result and tells you to stop discounting that traffic.
Related reading
How exit-intent detection works, on desktop and mobile · How on-site recovery fits alongside Klaviyo
Common questions
What counts as an abandoned cart versus an abandoned checkout?
An abandoned cart means items were added but checkout never started. An abandoned checkout means the shopper began checkout, usually leaving an email address. Shopify recovery emails and most flows depend on abandoned checkouts, because that is where the address is captured.
Why can email not reach most abandoning shoppers?
Because an email address is the entry requirement. Shoppers who browse a product, hesitate, and close the tab never provide one. There is no address to send to and no checkout record to reference.
What recovery rate should I expect?
Any single number quoted without your data is guesswork, because it depends on traffic mix, price point, and category. The useful approach is to measure your own with deterministic attribution, then test incrementality to see how much of it was actually caused by the offer.
Does offering a discount always increase recovered revenue?
Not necessarily. A discount given to someone who would have bought anyway is pure margin loss. That is why holding the offer back from a random share of shoppers and comparing outcomes is worth doing.
Try it on your own store
Clinch is free to install. The Free plan costs $0 per month and takes 10% of revenue it actually recovers, so if it recovers nothing you pay nothing.
Add to Shopify · Free to install