Cart Recovery

How to Test Your Abandoned Cart Flow on a Second Device

You can't see from a flow report what a shopper finds after they click your cart email. This test shows you: build a cart on a laptop, open the email on a phone, and write down what happens. Here's how to run it and how to read the result.

Sam Schrup · October 31, 2026

To test your abandoned cart flow on a second device, build a cart on one device while identified to Klaviyo, let the flow send, then open the email on a different device that has never held that cart. What you see on that second screen is what a cross-device shopper sees, and it's the part your flow report can't show you.

Your report counts a click whether it landed on a full cart or an empty one. So a flow can look healthy while a shopper who starts on a laptop opens the email on a phone, finds an empty cart or a product page, and tries to rebuild the order from memory. The test takes a few minutes of attention plus however long your flow's delay runs.

What do you need before you start?

  • A laptop and a phone. A second browser also works, with less realism.
  • An email address with a Klaviyo profile on your account that can enter the flow. Your personal address is better than a staff seed list because the flow's filters will treat it like a customer.
  • At least two products from your store, so you can see whether the whole cart survives. Add a subscribe & save product if you sell them.
  • Your phone logged out of your store. Being logged in can change what the page shows, and many shoppers aren't logged in.

How do you run the test?

Step 1: Read the flow first

Open your Added to Cart flow in Klaviyo and click into each email. Write down where every button and image link points. Most links will be one of these: /cart, a product page or a hand-built permalink. Repeat this for any other cart flow in your account, including parallel flows from vendors.

Then check the flow's filters and its delay, so you know when to expect the send and whether you qualify.

Step 2: Build the cart on your laptop

Make sure Klaviyo knows this browser. The simplest way is to click a link in a recent email from your store to that address. Next, add your two products to the cart. Leave without starting checkout, since that would likely move you into a different flow.

Step 3: Confirm the event

In Klaviyo, open your profile and look for an Added to Cart event in its activity. If it appears, the trigger worked. If it doesn't, your first problem is identification, and you should fix it before worrying about the click. See the Klaviyo Added to Cart entry for more.

Step 4: Wait, and don't touch the laptop cart

Let the flow run its delay. Don't complete the order. If your delay is long, you can make a temporary copy of the flow with a shorter delay for your own address, as long as you turn it off after.

Step 5: Open the email on your phone

Open the email in your phone's mail app and tap the main button. This is the moment you're testing. Take a screenshot before you do anything else.

Step 6: Try to finish the order

Act like a shopper who wants exactly what they added. Note how many taps it takes to get both items into a phone cart and reach checkout. If you sold a subscribe & save item, note whether the subscription option is still there.

Step 7: Repeat the click on the laptop

Tap the same link on the laptop. This shows you the same-device case, and it helps you catch a different bug: quantities doubling or an existing cart being replaced.

How do you read what you found?

What the phone showed What it means What to consider next
Both items in an editable cart The destination handled the cross-device case Check the same-device click for doubled quantities, then stop
An empty cart The cart stayed on the laptop Change the destination
A product page with one item The other item depends on the shopper's memory Fine if most of your carts hold one item. Otherwise change it.
A checkout page with both items Probably a permalink Check it carries subscribe & save, and that a shopper can edit items comfortably
A checkout page, from a Started Checkout flow Shopify's checkout_url doing its job Leave it alone
Your 404 or an error A broken link or merge tag Fix this first

What should you score?

Write these down so you can compare destinations and retest later.

Question Your answer
Did the full cart appear? Yes, partly, no
Did the email's promise match the page? "Your cart is waiting" should land on a cart
Could you edit quantities and remove an item? Yes or no
Did subscribe & save survive? Yes, no or not applicable
How many taps to reach checkout? Count them
Did discounts apply correctly? Yes, no or not applicable
Did items already on the phone survive? Add something to the phone cart first and rerun

What should you try after the first run?

Run a few variants once you've done the basic test. Each one takes little time and each exposes something different.

  • Shopper with a cart on the phone already. Does the click replace it, merge it or ignore it?
  • Sold-out item. Does the destination error, drop the item silently or suggest something?
  • Klaviyo text. If you send cart texts, run the same test from the text link.
  • Started Checkout flow. Compare it side by side. It's a good reminder of what a working cross-device link looks like.

What does the result tell you, and what doesn't it?

The test tells you what one person sees. It doesn't tell you how often that happens on your store. We don't publish a cross-device percentage, because we don't have one we'd trust for your store. Your own analytics can give you a rough sense of how much of your email traffic arrives on mobile, and what share of your cart emails get clicked.

How much the problem matters also depends on your carts. A store where most carts hold one product has less at stake than a store where shoppers build carts of three or four. Knowing your typical cart size will help you decide whether to act.

The test also won't tell you whether a new destination will earn more. To find that out, split the destination and compare orders, with a holdout if your tools offer one.

What are your options if the phone showed an empty cart?

  • Accept it, if your carts are small and your shoppers mostly click on the device that shopped.
  • Build a permalink. It rebuilds the items on any device, with limits you should know.
  • Use a persistent cart app. Apps such as Casper and Firecart describe syncing carts for logged-in customers, so this fits stores where most shoppers log in.
  • Use a cart recovery page. You keep your Klaviyo flow and change the button link.

That last one is what reOtter does. When reOtter holds that 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 in your own theme and domain. Carts are held only with analytics consent from your store's banner, and held carts last 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. You can read more on our abandoned cart recovery page, and running this test first will give you a useful baseline either way.

Frequently asked questions

Can I test this without waiting for the flow to send?
Partly. Open the flow in Klaviyo and check where each button links, then visit that link on your phone. That shows you the destination, but only a real send shows whether your flow fires and what the personalized link does.
Do I need two devices?
A phone and a laptop give the most realistic result. A second browser or a private window will also separate you from the original cart, so it works if you only have one device. It won't show you the phone layout, though.
What if the email never arrives?
Check your profile's activity in Klaviyo for the Added to Cart event, then the flow's filters. A missing event points to an identification problem. A present event with no email usually means a filter or delay.

Keep exploring