Cart Abandonment: Why Shoppers Leave and What You Can Do On-Site

Most carts never become orders. Some of that is unavoidable — people use carts as wish lists — but a large share comes from problems you can see and fix on your own site: surprise costs, forced account creation, a checkout that feels long or untrustworthy. This guide walks through what the research says, how to find the problem on your own store, and how to remind returning shoppers who left from the cart, without overstating what any on-site tool can do.

Updated

What “cart abandonment” actually measures

Cart abandonment rate is the share of shopping carts that are created but never turn into a completed order. If 1,000 visitors add something to the cart in a month and 280 of them place an order, 720 carts were abandoned — a 72% abandonment rate.

Two details matter when you compare your number with anyone else’s. First, definitions differ: some tools count a cart as abandoned the moment a session ends, others only after the shopper has started checkout and entered an email address. Second, abandonment is measured per cart, not per person. One shopper who adds items on Monday, comes back on Thursday and buys may appear as one abandoned cart and one completed order. So treat your own trend over time as more useful than any single benchmark.

It also helps to separate cart abandonment (left after adding to cart, before checkout) from checkout abandonment (started checkout, didn’t finish). The causes overlap, but the fixes live on different pages, and you will want to look at them separately.

What the research says: Baymard Institute’s figures

The most widely cited source on this topic is Baymard Institute, an independent e-commerce UX research firm. Its cart abandonment rate statistics page (last updated September 22, 2025, as checked on October 12, 2026) reports an average documented cart abandonment rate of 70.22%, calculated from 50 different studies. In other words, roughly seven in ten carts are not completed.

Baymard also surveyed US online shoppers about why they abandoned. The largest group — 42% — said they were “just browsing” or not ready to buy. Baymard describes that segment as largely unavoidable. Setting it aside, the remaining reasons for abandoning during checkout were reported as follows:

Reason given (Baymard Institute, US online shoppers)ShareWhere you can act
Extra costs too high (shipping, tax, fees)40%Product page, cart, shipping policy
Delivery was too slow20%Shipping options, delivery estimates
I didn’t trust the site with my credit card information19%Payment step, site design, policies
The site wanted me to create an account18%Checkout entry (guest checkout)
Too long / complicated checkout process17%Checkout form
Website had errors / crashed17%QA and testing on real devices
Returns policy wasn’t satisfactory13%Returns policy and where it is shown
I couldn’t see / calculate total order cost up-front12%Cart page
The credit card was declined10%Payment provider, error messages
There weren’t enough payment methods9%Payment options
I don’t know7%—
Shoppers could give more than one reason, so the percentages add up to more than 100%. Baymard also estimates that the average large e-commerce site could gain a 35.26% increase in conversion rate through better checkout design, counting only issues it considers solvable — and notes that such gains “won’t come easy.” That is a research estimate across sites, not a promise for any individual store. Source: Baymard Institute.

Read the table as a to-do list. Most of the reasons are about information and friction on your own pages: costs that appear too late, an account wall, a form that feels long, a payment step that doesn’t look trustworthy. Those are things you control. That is why the first half of this guide is about fixing the store, and only the second half is about reminders.

Fix 1: Show the full cost before checkout

“Extra costs too high” is the biggest single reason in Baymard’s list, and “couldn’t see the total order cost up-front” is a separate entry. The two are related: a shipping fee that shows up for the first time on the last checkout step feels like a surprise charge, even when it is reasonable.

  1. State your shipping rules in plain words on product pages, near the price or the add-to-cart button — for example, “Free shipping on orders over $50. Otherwise $6.95 flat.”
  2. On the cart page, show an estimated total including shipping. If tax depends on the address, say so (“Tax calculated at checkout”) rather than leaving it unexplained.
  3. If you offer free shipping above a threshold, show how far the cart is from it (“$12 away from free shipping”). See our guide to free shipping banners and threshold wording.
  4. Link your shipping and returns policies from the cart page, not only from the footer.

You don’t have to absorb shipping costs to fix this. The goal is that nothing in the final total comes as a surprise.

Fix 2: Make guest checkout easy to find

18% of shoppers in Baymard’s survey left because the site wanted them to create an account. Many stores do offer guest checkout, but hide it. Baymard’s account selection research reports that 44% of sites have a design that makes it needlessly difficult for users to locate the guest checkout option, which can lead people to assume that registration is required.

  1. Give “Continue as guest” the same visual weight as “Sign in.” Don’t bury it below a long registration form.
  2. Offer account creation after the order is placed (“Save your details for next time?”), when the shopper has nothing left to lose.
  3. If you need an email address for the receipt, ask for just that, and explain why.

Fix 3: Shorten the form and remove errors

“Too long / complicated checkout” (17%) and “website had errors / crashed” (17%) are often the same problem seen from two angles: a field rejects a valid phone number format, an address lookup fails, a coupon box clears the form. Go through your own checkout on a phone, with a real card, at least once a month. Try the awkward cases too — an apartment number, a long last name, a postal code with a space, a coupon that has expired.

Practical clean-up: remove optional fields you don’t use, let browsers autofill name and address, show errors next to the field that caused them, and keep what the shopper typed when an error appears. If your platform lets you, offer the express wallets your customers already use, since “not enough payment methods” is another 9%.

Fix 4: Earn trust at the payment step

19% didn’t trust the site with their card details. Trust is built across the whole visit, but the payment step is where doubt turns into leaving. Make sure the checkout looks like the rest of your store (an abrupt change of design can feel like a redirect to somewhere else), show your returns policy and contact details nearby, and name the payment provider that processes the card. Avoid stacking unverifiable badges; a clear policy and a real way to reach you do more.

Fix 5: Be honest about delivery times and returns

“Delivery was too slow” (20%) and “returns policy wasn’t satisfactory” (13%) are not always fixable — you may not be able to ship faster. But you can make sure shoppers don’t discover the delivery date only at the end. Show an estimated delivery window on the product page and in the cart, and summarize the returns policy in one sentence (“Free returns within 30 days”) where people decide.

Find where your own shoppers leave

Research tells you what is common. Your analytics tell you what is happening on your store. Before changing anything, collect three views of the same problem.

  1. The funnel numbers. Product page views → add to cart → cart page → checkout start → order complete. Compare by device. A big drop at one step on mobile only usually points to a layout or form problem on that step.
  2. Heatmaps of the cart page. How far do people scroll? Do they click the shipping link, the coupon field, the “continue shopping” link? A coupon field that attracts many clicks can send shoppers off to search for codes.
  3. Individual visitor timelines. Reading the page-by-page path of a few dozen visitors who reached the cart and didn’t buy shows patterns that averages hide — for example “cart → shipping policy → cart → left,” which suggests the shipping cost was the issue.

In marketingLABO, all three views come from the same tracking tag: per-page heatmaps (time on page, scroll depth and clicks), a timeline of each visitor’s actions, and reports by traffic source, page and conversion. You can follow moves like “went to the cart and came back” for an individual visitor. Analytics, heatmaps and visitor history are included in the Free plan.

Don’t over-read single sessions. One visitor bouncing between pages proves nothing; the same loop in 20 out of 50 timelines is a pattern worth testing a fix for.

Reminding returning shoppers on-site

After the store is fixed, there will still be people who leave from the cart and come back later — the “just browsing” 42% included. When they return, a short reminder on your site can help them pick up where they stopped. This is where an on-site banner fits.

Be clear about how this works in marketingLABO, because it is different from tools that connect directly to your store platform. marketingLABO does not read your cart. It doesn’t know what is in the cart, the cart value, the product SKUs or whether an order exists in your store system. It works from the pages each visitor has viewed. So the condition is built from URLs:

ConditionSetting in marketingLABOExample
Has seen the cartPages viewedhttps://example.com/cart
Has not seen the order-complete pagePages not viewedhttps://example.com/checkout/thank-you
Is back on a later visitVisit frequency (e.g. 2nd visit or later)—
Came back recently, or after a whileDays since the last visitWithin 7 days
Where the banner appearsPage URL to show on (optionally with prefix match)https://example.com/ — or the cart page only

Combined, these read as: “show this banner to people who have viewed the cart page, have not viewed the order-complete page, and are on a later visit.” That is a reasonable stand-in for “left with items in the cart,” but it is not the same thing, and the next section lists where the two differ.

Setting up a cart reminder banner, step by step

  1. Install the tag on every page, including the cart page and the order-complete page. The tag goes in the <head> of each page; it works on any site where you can add a tag there.
  2. Find your two URLs. Add something to the cart on your own store and copy the cart URL. Place a test order and copy the order-complete (thank-you) URL. Check whether the thank-you URL stays the same for every order or changes with an order number.
  3. Create a banner. Start from a template in the “Cart reminders” category and edit the copy and colors. Formats include image only; image, headline and button; with countdown; and with an email sign-up form.
  4. Set the conditions. Pages viewed = the cart URL; Pages not viewed = the order-complete URL; visit frequency = a later visit. Optionally add days since the last visit.
  5. Choose where and when it shows. For example, on the home page and product pages, after a few seconds or at a scroll depth, as a floating banner or a bar rather than a full modal.
  6. Test it yourself. In a fresh browser, view the cart, leave, come back on a new visit, and confirm the banner appears. Then complete a test order and confirm it no longer appears.
  7. Watch the results. Impressions and clicks are reported per campaign. Compare clicks with what you see in your order data over the same period.

On plans: the Free plan includes one pop-up banner, Light includes three, and Standard has no banner limit. See pricing for details.

What URL-based targeting cannot do

Knowing these limits up front prevents banners that annoy customers or mislead you about results.

  1. No cart contents. The banner can’t name the product left in the cart or show its price. Write copy that works for any cart (“Your cart is waiting”), not “Still thinking about the blue jacket?”
  2. No cart value. You can’t show a different message to $20 and $200 carts.
  3. No empty-cart check. Someone who viewed the cart and then removed everything still matches. Keep the message soft enough that this isn’t awkward.
  4. Same browser only. Tracking is per browser. A shopper who bought on a laptop after viewing the cart on a phone may still see the reminder on the phone.
  5. Checkout pages you can’t tag. If your platform hosts the checkout or confirmation page where you can’t add code to the <head>, the “not viewed” condition can’t see completed orders. Confirm the tag runs on your thank-you page before relying on this.
  6. Orders outside the site. Phone orders, marketplace orders or in-store purchases are invisible to page-based conditions.
There is no abandoned-cart email in marketingLABO. Because the tag doesn’t read cart data, marketingLABO can’t send an email listing what someone left in their cart. The reminder described here is an on-site banner shown when the person comes back.

Abandoned-cart emails: use your store platform

Many store platforms send abandoned checkout emails themselves, because they hold the cart data. Shopify, for example, documents built-in abandoned checkout emails: a checkout counts as abandoned if it stays incomplete for more than ten minutes after the customer has entered an email address, and the email can be sent automatically. If your platform offers this, turn it on — it reaches people who don’t come back on their own. The on-site banner complements it by covering people who do return, including those who never entered an email.

What to say in a cart reminder

A reminder works best when it removes the reason for leaving, not when it shouts. Match the copy to the reasons you found in your own data:

If timelines suggest…Try a reminder that says…
Shipping cost was the issue“Free shipping on orders over $50 — your cart is still saved.”
Shoppers were comparing or unsure“Your cart is still here. Free returns within 30 days.”
Delivery timing mattered“Order by 2 pm for same-day dispatch.” (Only if it’s true.)
People came back but didn’t find the cart“Pick up where you left off” with a button linking to the cart page.
You run a time-limited sale anywayA countdown to the real end date of that sale.

Be careful with automatic discounts. If every cart viewer gets 10% off on their next visit, some customers will learn to leave the cart on purpose and wait for the code. Try a non-discount reminder first, and if you test a coupon, limit it by days since the last visit or visit count so it isn’t offered to everyone. Keep any countdown tied to a real deadline; a timer that resets on every visit damages trust, which is one of the reasons people abandon in the first place.

Choose a format that doesn’t get in the way

A returning shopper has come back to do something. A full-screen modal the moment they arrive gets between them and their cart. Prefer a bar at the top or bottom, or a small floating banner, with a clear link to the cart. Save the modal for exit intent on desktop, where it appears when the visitor is about to leave rather than when they arrive. Google’s guidance on intrusive interstitials also recommends banners that take up only a small fraction of the screen over overlays that block content. For more on timing and triggers, see our free shipping banner guide, which covers bar vs. modal placement.

A 30-day plan

  1. Days 1–3: Install the tag on every page, including cart and thank-you. Write down your current add-to-cart and order numbers from your store platform so you have a baseline.
  2. Days 4–10: Run through your own checkout on mobile and desktop. List every surprise cost, account wall and error you hit.
  3. Days 11–17: Read cart-page heatmaps and 30–50 visitor timelines of people who reached the cart and didn’t buy. Note the repeated loops.
  4. Days 18–24: Fix the top one or two problems on the store itself: cost shown earlier, guest checkout made visible, a broken field repaired.
  5. Days 25–30: Launch one cart reminder banner for returning visitors, with non-discount copy. Turn on your platform’s abandoned-checkout email if it has one.

After that, change one thing at a time. If you change the checkout and launch a banner in the same week, you won’t know which one moved the numbers.

FAQ

What is a good cart abandonment rate?

There is no universal target. Baymard’s documented average is 70.22% across 50 studies, but definitions and store types differ. Track your own rate with a fixed definition and watch the direction after each change.

Can marketingLABO tell me which products were left in carts?

No. It has no store-platform integration and doesn’t read cart contents, cart value or orders. It records page views, scroll depth, time on page and clicks, and targets banners by URLs viewed or not viewed. Use your store platform’s reports for product-level abandonment.

Does it send abandoned-cart emails?

No. marketingLABO can send newsletters (Light and above) and journey emails (Standard) to contacts who signed up, for example through a form or a banner’s email sign-up form — but nothing triggered by cart data. For cart emails, use your store platform’s feature.

Will a cart reminder banner annoy customers who already bought?

It shouldn’t, if the order-complete page is tagged and set as “not viewed.” The exceptions are purchases made on another device or outside the site, so keep the message neutral and easy to close.

Should I offer a discount to everyone who abandons?

Usually not as a first step. Fix surprise costs and friction first, then test a plain reminder. If you test a coupon, restrict who sees it and compare it with a period without one.

Want to see where your shoppers leave? Create a free account, add the tag, and start with heatmaps and visitor timelines on your cart page.

Sources

  1. Baymard Institute, “Cart Abandonment Rate Statistics” (last updated September 22, 2025; accessed October 12, 2026): https://baymard.com/lists/cart-abandonment-rate
  2. Baymard Institute, account selection / guest checkout design examples (accessed October 12, 2026): https://baymard.com/ecommerce-design-examples/48-account
  3. Shopify Help Center, “Abandoned checkouts” (accessed October 12, 2026): https://help.shopify.com/en/manual/orders/abandoned-checkouts
  4. Google Search Central, “Avoid intrusive interstitials and dialogs” (last updated December 10, 2025; accessed October 12, 2026): https://developers.google.com/search/docs/appearance/avoid-intrusive-interstitials

Start free — no credit card needed

Sign up free