Somewhere on your site right now, a person has a full cart, a card in hand, and a reason to leave that you cannot see.
Industry research has put average checkout abandonment around seven in ten for years. Most teams respond to that number in one of two ways. They shrug, because "that's just how ecommerce is." Or they panic and redesign the whole checkout, fixing three things that were fine and missing the one that was broken.
There is a third option: actually find out where and why your buyers bail. That is what checkout abandonment analysis means, and with the right setup it takes about fifteen minutes to get from "abandonment is high" to a specific step, a specific segment, and a specific cause. This guide walks through it.
Abandonment rate is a symptom, not a diagnosis#
The abandonment rate on its own tells you almost nothing. A 70% rate could mean shipping costs are scaring people at the last step, or the payment provider is failing for one card type, or a coupon field is sending everyone off to hunt for discount codes, or your checkout is fine and your traffic is full of window shoppers. Same number, four completely different problems, four completely different fixes.
The useful question is never "how many people abandon." It is "at which step, for which people, for what reason." Everything below is in service of answering that.
Step one: build a funnel with real checkout steps#
Start by turning your checkout into an explicit funnel. Not "visited checkout, purchased." Every meaningful step:
Cart viewed → Checkout started → Shipping info entered → Payment info entered → Order review → Purchase completed
Adapt the steps to your flow, but keep them granular. If shipping and payment live on one page, split them by field interaction instead of page view. The whole value of the funnel is localizing the drop, and you cannot localize what you lumped together. If you have never set up step gates like this, our guide to reading conversion funnels covers the mechanics.
Run the funnel over the last two to four weeks. Now you are looking at a shape, not a rate.
Step two: read the shape of the drop#
Checkout funnels fail in a small number of recognizable patterns, and the shape narrows your suspects before you watch a single session.
A cliff at one step. Healthy numbers, then one step where the count collapses. This is the best case, because the problem is localized. A cliff at payment points to the payment provider, card validation, or 3D Secure friction. A cliff at shipping points to cost shock or an address form that rejects real addresses.
A steady bleed across every step. No single collapse, just constant attrition. This usually means friction rather than breakage: too many fields, forced account creation, slow page transitions, a checkout that feels longer than the purchase is worth.
A sudden change from last week. The shape was fine, then it was not. Something shipped. Diff your release timeline against the funnel date range before you do anything else. We wrote up a case like this in the release that killed checkout, where a routine deploy quietly broke purchases for one browser.
A drop that only exists for some people. The overall funnel looks mediocre but not alarming, yet one segment converts near zero. You will not see this until you segment, which is step four. Keep it in mind, because averages are where segment-level disasters go to hide.
Step three: watch ten abandoned sessions#
The funnel tells you where. Session replay tells you why. Filter replays to visitors who reached the problem step and left without purchasing, then watch ten of them end to end. Not two. Ten. The first couple can be flukes; by the eighth, patterns repeat.
Things you will actually see, because these are the classics:
- Someone reaches the shipping quote, pauses, and closes the tab. Cost shock. No error, no rage, just a quiet exit at the price reveal.
- Someone types a card number, taps pay, and the button spins forever. They retry, then leave. That is a failing or slow payment call, and your server logs may not show it if the failure is client side.
- Someone hits "create an account to continue" and leaves immediately. Forced registration remains one of the most reliable buyer repellents ever built.
- Someone spots the coupon field, opens a new tab to search for codes, and never comes back. An empty coupon box is an exit door.
- Someone's address form keeps rejecting a legitimate address format from their country. They try three times. Watch for repeated edits to the same field, it is the fingerprint of validation that argues with valid input.
If you have not used replay for this before, our piece on pairing heatmaps with session replay covers how to read sessions without drowning in them.
Step four: segment before you conclude#
Whatever cause you think you found, check whether it is global or concentrated. Break the funnel down by device, browser, country, traffic source, and payment method if you track it. Checkout bugs are disproportionately segment-shaped:
- Payment failures cluster by card type, bank country, or 3D Secure flow.
- Layout and tap-target problems cluster on mobile, where checkout abandonment runs meaningfully higher than desktop.
- In-app browsers from Instagram, TikTok, and Facebook break submit handlers and redirects that work everywhere else. If you run social campaigns, always check this segment first. It is the same failure mode we dissected in our form abandonment guide, where 700 form interactions produced zero submissions inside one embedded browser.
- Shipping cost shock clusters by region, because the quote differs by region.
A checkout that "converts at 2.9%" might really be a checkout that converts at 4% everywhere except Android Chrome, where it converts at zero. The average hides the outage. The segment is the diagnosis.
The usual suspects, ranked by how often they are guilty#
When you want a checklist to work through, this is roughly the order the causes show up in real investigations:
- Unexpected costs revealed late. Shipping, taxes, and fees appearing at the final step. The fix is showing costs earlier, not shrinking the font on the total.
- Payment failures and 3D Secure friction. Declines, timeouts, and authentication loops. Line abandonment spikes up against your payment provider's logs and status history.
- Forced account creation. Offer guest checkout. This one fix has ended more abandonment investigations than any redesign.
- Form and validation problems. Address validators, phone formats, autofill fights. Repeated edits to one field in replay is your tell.
- Speed. Slow transitions between steps shed buyers, and they shed the most on mobile networks.
- The coupon field. Test moving it behind a small link. Measure the difference instead of arguing about it in a meeting.
- Trust gaps. Missing security cues, unfamiliar payment brands, no visible return policy. Rarely the whole story, but a real drag on first-time buyers.
For a broader treatment of leaks across the whole store, not just checkout, our ecommerce conversion leak playbook goes deeper.
Or let Kai run the whole loop#
Everything above is doable by hand, and now you know how. It is also exactly the kind of cross-referencing a machine does faster. Kai, GrainQL's AI analyst, runs this as a Deep Investigation: it builds the step funnel, finds the collapse, clusters the abandoned sessions, segments by device, browser, and source, and names the likely cause with the evidence attached. A first answer lands in a few seconds and the full investigation finishes in minutes, which matters most on the days when checkout breaks and every hour is revenue.
Prove the fix on the segment that broke#
Do not declare victory from the overall conversion rate. If the diagnosis was "payment failing on Android Chrome," then the proof is Android Chrome purchases returning to baseline, on the same funnel, after the fix ships. Rebuild the funnel for that segment, confirm the cliff is gone, and leave monitoring on the purchase step so the next silent break gets caught in hours instead of weeks. If your conversions dropped more broadly than checkout, the wider decision tree lives in why did my conversions drop.
Checkout abandonment feels like weather, something that happens to every store and cannot be helped. It is not weather. It is a list of specific people leaving at a specific step for a specific reason, and every part of that sentence is measurable.
Find where your checkout is losing buyers
Kai's Deep Investigation builds your checkout funnel, watches the abandoned sessions, and names the step, segment, and cause. Cookieless, EU-hosted. Start a 14-day free trial, no card required.