Cart Recovery
Klaviyo Added to Cart
Added to Cart is the Klaviyo event recorded when a visitor Klaviyo can identify adds a product to their cart. Brands use it to trigger abandoned cart flows. Unlike Started Checkout, it has no native saved-cart link, so the email button needs a destination chosen by the brand.
October 31, 2026
Added to Cart is the Klaviyo event recorded when a visitor Klaviyo can identify adds a product to their cart. Brands use it to trigger abandoned cart flows. Unlike Started Checkout, it has no native saved-cart link, so the brand has to choose where the email button goes.
How does Added to Cart differ from Started Checkout?
| Added to Cart | Started Checkout | |
|---|---|---|
| Fires when | A known visitor adds a product | A shopper begins checkout |
| Native link to saved items | None | checkout_url, which restores across devices |
| Usual destination | /cart, a product page or a hand-built permalink |
Shopify's checkout |
| On a second device | Empty cart or a product page, unless you've added something | The items on a payment form |
Abandoned cart vs abandoned checkout covers the difference in more depth.
Who does the event catch?
Only visitors Klaviyo can identify. Klaviyo normally relies on its __kla_id cookie, which is set by JavaScript for 2 years and which browsers can shorten, according to Klaviyo's cookie documentation. Safari ITP can delete it after 7 days of browser use without interaction with the site. A returning customer in that position may add to cart and create no email at all.
Klaviyo offers two responses. Extended ID is on all plans, free and paid, and the server-set First-Party ID restores __kla_id for people with an existing profile. Turn those on first.
Why is the link a problem?
A 2022 Klaviyo community thread describes it well. Added to Cart emails don't link to a saved cart, and the accepted fix is a custom permalink that takes "a fair bit of custom coding".
Each usual destination has a tradeoff:
/cartworks on the original device. On another device it shows that device's cart, which is often empty.- A product page shows one item from what might be several.
- A cart permalink carries items to any device, goes to checkout by default and doesn't support selling plans.
So a shopper who starts on a laptop and opens the email on a phone may have to rebuild the cart from memory. See cross-device cart abandonment, or run the second-device test on your own flow.
How does reOtter work with Added to Cart flows?
Your flow stays in Klaviyo, and Klaviyo keeps sending. You replace the button link with reOtter's cart recovery page and leave Klaviyo's click tracking on. When reOtter holds that shopper's cart and knows who clicked, the cart goes back into the real Shopify cart on the device they're using. Carts are held only with analytics consent, for 30 days. If the cart isn't held or the clicker isn't known, the shopper sees the page with whatever cart that device has.
The change affects where the click lands. It doesn't change who enters your flow.
Key takeaways
- Added to Cart can only start a flow for a visitor Klaviyo can identify, so browser cookie limits affect it.
- The event has no native saved-cart link, which leaves
/cart, a product page or a permalink as the usual choices. - Started Checkout has
checkout_url, so the gap applies to cart flows specifically.
See how reOtter restores the cart → Abandoned cart recovery
Frequently asked questions
- Does Klaviyo's Added to Cart event include a link to the cart?
- It has no native saved-cart link. Merchants typically use /cart, a product page or a hand-built permalink. Started Checkout is different, since it has checkout_url and that restores across devices.
- Why does the button in my Added to Cart email land on an empty cart?
- A /cart link opens whatever cart exists in the browser where it's tapped. If the shopper built the cart on a laptop and tapped on a phone, the phone's cart is empty. The link itself is working as designed.
- Why doesn't Added to Cart fire for some shoppers?
- Klaviyo needs to know who the visitor is to email them. If the browser's identifier is missing, perhaps because Safari removed a script-set cookie, there may be nobody to attach the event to. Klaviyo's Extended ID and First-Party ID can help for people with existing profiles.
- Do I have to rebuild my flow to use reOtter's cart recovery page?
- No. You keep the Added to Cart flow and change the button link. Your trigger, filters, timing, template and sender stay the same, and your Klaviyo account does the sending.