Cart Recovery

Cart Restoration

Cart restoration is putting a shopper's items back in their cart when they return. On the same browser the cart is often still there. On another device, restoration needs the items saved outside the browser or carried in a link, plus a way to get them to that shopper.

October 31, 2026

Cart restoration is putting a shopper's items back in their cart when they return. On the same browser the cart is often still there, so the harder case is a return on another device.

Why is restoration harder on another device?

A cart belongs to the browser that built it. A shopper who starts on a laptop and opens your email on a phone arrives in a browser with no record of those items. That's cross-device cart abandonment, and it's why a cookie can't solve restoration on its own. A cookie stays in one browser.

Restoring on the phone needs the items to be reachable from the phone. Either the link carries them or a server holds them. If a server holds them, something also has to identify who clicked, such as Klaviyo's click identifier or a store login.

What are the ways to restore a cart?

Method Works across devices? Where the shopper lands Watch for
/cart link Only shows the current device's cart Cart page Empty on another device
Checkout link (Started Checkout) Yes The payment form Only for shoppers who began checkout
Cart permalink Yes Checkout by default Selling plans aren't supported
Persistent cart app Described for logged-in customers Varies Check how it treats guests
Server-held cart with a recognized click Yes, when the cart is held and the clicker is known Depends on the tool Consent and expiry

The Klaviyo Added to Cart event has no native saved-cart link, so cart flows need one of these added on purpose. Checkout flows already have one, as covered in abandoned cart vs abandoned checkout.

What makes a good restoration?

The items are only part of it. Check these on any method you're considering:

  • Subscribe and save survives. A shopper who chose a subscription should be able to keep that choice.
  • Existing items stay. Restoring shouldn't erase what's already on the phone.
  • Quantities stay correct. A click on the original device shouldn't double the order.
  • Changes are handled. A sold-out item or a new price needs a sensible response.
  • Bought carts stay gone. A shopper who already ordered shouldn't get the same cart again.

How does reOtter restore carts?

When reOtter holds a shopper's cart and knows who clicked, the cart goes back into the real Shopify cart on whatever device they're on, on a page inside the store's own theme and domain. What's on the device isn't wiped, and a same-device click doesn't double quantities. Sold-out items suggest an alternative, and price changes get a quiet note.

The limits are worth stating. Carts are held only with analytics consent from the store's banner, and that's never worked around. Held carts last 30 days. Already-bought carts aren't put back. If the cart isn't held or the clicker isn't known, the shopper sees the page with whatever cart that device has.

Key takeaways

  • Restoring on another device needs the items in the link or on a server, and a server-held cart also needs a known clicker.
  • Checkout links and permalinks restore items, and both tend to land on or near payment.
  • Judge a method on subscriptions, existing items, quantities and sold-out handling as well as whether the items come back.

See how reOtter restores the cart → Abandoned cart recovery

Frequently asked questions

What's the difference between cart restoration and cart recovery?
Cart recovery is the whole effort to win back an abandoned cart, including the emails, timing and offers. Cart restoration is the specific step of putting the items back. You can recover a sale without restoring anything if a shopper rebuilds the cart themselves, but you're asking more of them.
Does restoring a cart overwrite what's already on the device?
It depends on the method. reOtter's cart recovery page never wipes what's on the device, and a click on the same device doesn't double the quantities. If you're using another method, test with items already in the cart.
Can every abandoned cart be restored?
No. Restoring on another device needs the items to be available somewhere and usually needs to know who clicked. With reOtter, carts are held only with analytics consent from the store's banner and last 30 days, and carts already bought aren't put back. Strangers aren't identified.

Keep exploring

Cart Recovery

Cart Permalinks vs Cart Recovery Pages: Which Should Your Cart Email Use?

A cart permalink rebuilds a cart from a link. A cart recovery page puts a held cart back on a page the shopper can edit. Here's a fair comparison of both, including when a permalink is all you need.

Cart Recovery

The Abandoned Cart Recovery Guide for Shopify and Klaviyo

A practical guide to abandoned cart recovery for Shopify brands on Klaviyo. It covers the three flows people mix up, what the timing evidence says, where the button should link, when to discount, and how to tell whether any of it adds revenue.

Cart Recovery

Cross-Device Cart Abandonment

Cross-device cart abandonment happens when a shopper builds a cart on one device and returns on another, where the cart isn't there. A cart stored in one browser stays in that browser, so the click from a recovery email can land on an empty cart or a product page.

Cart Recovery

Cart Rebuild Link

A cart rebuild link is a link in an abandoned cart email that recreates the shopper's cart when clicked, so it works on a different device from the one that built the cart. Depending on the platform, the link either lists the products itself or carries a key that looks up a saved cart.

Cart Recovery

Cart Permalink

A cart permalink is a Shopify URL that names product variants and quantities, so opening it builds a cart with those items on any device. It goes to checkout by default, doesn't support selling plans, and Shopify describes it as a legacy feature.

Cart Recovery

Abandoned Cart vs. Abandoned Checkout

An abandoned cart means a shopper added items and left before starting checkout. An abandoned checkout means they started checkout and left before paying. In Klaviyo the Started Checkout event has a link that restores across devices, and the Added to Cart event has no native saved-cart link.