Cart recovery

'Your basket is waiting' opens the basket.

Win-back emails, texts and pushes that open the saved basket, ready to pay. If they've uninstalled since, the same link survives the reinstall.

Who runs it
Product, marketers
Time to set up
Minutes, after the SDK
Plan
Free
1The link you make

The link carries the cart.

The win-back link carries the cart ID and the incentive, if there is one. It opens the app directly for people who have it, and handles the store and reinstall for people who don't.

  • One template per message, filled per person.
  • The campaign tag says which message brought them back.
2The screen they land on

The basket, as they left it.

The app opens on the basket with the items still in it and any incentive applied. One tap to pay.

  • Works on iPhone and Android.
  • Tell them if an item sold out, rather than failing quietly.
3The number that proves it worked

Baskets recovered per message.

Recovered revenue per message sent, from the purchase events your app sends. Keep a holdout that gets no message, so you can tell whether the reminder or the incentive did the work.

  • Opens and purchases per message and timing.
  • Revenue credited to the message that brought them back.
For your developer

One-time setup, then it's all yours.

Your developer adds the LinkTrail SDK once and opens the cart from the link's data. After that, every win-back message works without a release.

LinkTrail.onLink(link => {
  // link.customData = { cart: "c_88213", incentive: "free-ship" }
  openCart(link.customData.cart);
});

The full walkthrough: Cart recovery: 'your basket is waiting' has to open the basket

Someone adds three things to a basket and leaves. Six hours later you send the reminder. They tap it, and land on the home tab. The basket is still there — three taps away — but you have just asked someone who was already drifting to go find it. Most don't.

What problem does this solve?

The reminder has to reopen the app on the basket, or on the single item if it was a single item, with any incentive already applied. And you need to know whether the reminder produced the order, or whether they would have come back anyway.

How do you set the links up?

The re-engagement link carries the cart identifier and the incentive, if there is one. Because this user already has the app, the link opens it directly; if they've since uninstalled, the same link survives the reinstall and lands on the basket after.

{
  "deepLinkPath": "/cart/c_88213",
  "customData": {"cmp": "abandon-6h", "incentive": "free-ship", "expires": "24h"}
}

When should it send, and through what?

TimingChannelNotes
1 hourPushHighest recovery, but only if the person hasn't already bought elsewhere
6–12 hoursPush or emailThe usual sweet spot; the incentive, if any, goes here
48 hoursEmailLast attempt; a stronger incentive or none at all

The same link works in push and email. Push opens the app directly; email goes through smart routing. Either way the destination is the basket.

How do you know the message did it?

Send the purchase as a post-install event and let it attribute to the re-engagement campaign. Then compare recovery rate against a holdout that got no message — a slice of abandoned carts you deliberately leave alone. The uplift over the holdout is what the message is worth; the raw recovery rate includes everyone who was coming back anyway.

What should the basket screen show when they come back?

Exactly what they left, with the incentive already applied and nothing to redo. The items should still be there — if one has gone out of stock, say so on that line rather than silently dropping it, because a basket that quietly shrank reads as a bug. The discount from the message should be visible on the total before they touch anything, not waiting behind a code field. And the path from this screen to a completed order should be as short as the app allows: a returning abandoner has already decided once and changed their mind; the second decision needs to be easier than the first.

Which metric should you watch?

Recovered revenue per message sent, against the holdout. If the incentive is doing the work rather than the reminder, that number tells you, and it may mean the reminder alone is enough.

Which teams own a cart-recovery flow?

  • Mobile product teams
  • Growth marketers

Which LinkTrail features does a cart-recovery flow need?

  • Re-engagement links
  • Smart routing
  • Post-install events
  • Per-link campaign and creative tagging

Cart recovery questions.

How do cart recovery links reopen the basket?

The re-engagement link carries the cart identifier and any incentive. It opens the installed app directly on the basket, and if the user has since uninstalled, the same link survives the reinstall and lands on the basket afterwards.

When should cart recovery messages be sent?

Around one hour by push for the highest recovery, six to twelve hours by push or email as the usual sweet spot, and 48 hours by email as a last attempt. The same link works in push and email.

How do you know the reminder recovered the order?

Send the purchase as a post-install event attributed to the re-engagement campaign, and compare recovery against a holdout of abandoned carts that got no message. The uplift over the holdout is what the message is worth.

Make your first win-back link.

Free for your first 5,000 users. No card, no sales call.