A store owner emailed me last month with one line: "We're at 2.1%. Is that bad?" That's the wrong question, and it's the question every benchmark article quietly encourages. The ecommerce median sits near 2.2%, DTC apparel closer to 2.6%, SaaS visitor-to-signup around 10% — so 2.1% looks fine, or a hair low, and you learn nothing. A benchmark's real job isn't to grade the final number. It's to tell you which step is leaking. Used that way it's the fastest triage tool you have. Used as a report card it's noise.
Here's how to actually get an answer out of one.
"Compared to whom" is the whole game
A single number — "good ecommerce converts at 2–3%" — is useless because it hides two decisions: compared to whom, and measured how. Change the peer set and the same 2.1% flips from average to broken.
Traffic mix is the biggest reason. A store living on branded search and email converts far higher than one buying cold TikTok traffic, same product, same checkout. Google Ads across industries averaged around 7.5% last year — a number some poor founder will screenshot and use to feel terrible about their organic 2%. Direct traffic for an established brand runs 3–6%+. Averaging those into one grand number and calling it "the benchmark" is how you get a metric that's true for nobody.
Device does the same thing quietly. Mobile usually converts around half of desktop, so a blended rate checked against a blended benchmark hides which one is dragging — and on most stores mobile is where the money leaks. Split it before you compare.
So before you compare anything, narrow the peer set to something that resembles you. That's the point of splitting benchmarks by vertical: the ecommerce band, the DTC apparel band, the SaaS band are three different animals, and the benchmark hub keeps them separate on purpose. Read the band, not the point. A lone median is a number to argue with; a p25–p75 range tells you where the middle 50% of stores like yours actually land.
Benchmark the funnel, not the finish line
This is the move almost nobody makes, and it's the one that pays.
Your final conversion rate is a product of every step before it. Comparing only the finish line tells you that you're behind — not where. So break your funnel into its stages and lay each one against its own band. The ecommerce benchmark page publishes them, drawn from Littledata, Shopify, Baymard and Klaviyo composites:
| Step | Denominator | Typical band | Median |
|---|---|---|---|
| Product view | sessions | 50–70% | 55% |
| Add to cart | sessions | 3.0–9.0% | 5% |
| Checkout started → completed | checkouts | 20–34% | 30% |
| Purchase | sessions | 1.2–3.4% | 2.2% |
Now a real example. That store at 1.9% overall was sure the problem was checkout, and wanted to spend the week rebuilding it. We broke the funnel:
Product view held at 58% — mid-band, fine. Checkout completion was 31% — also mid-band, fine. But add-to-cart came in at 3.1%, sitting on the floor of the 3–9% band while everything downstream was healthy. The leak wasn't checkout. It was the product page failing to make people want the thing. The week went to the PDP — images, the value line above the fold, a real delivery date — not the checkout he was about to gut.
Gap-to-benchmark did that. It didn't tell him he was "below average." It pointed at the one step furthest below its band and let him ignore the two that were already fine. That's triage: fix the widest gap first, re-measure, move to the next. If your drop is recent rather than chronic, that's a different job — find the date it broke before you touch the funnel.
Measure your own number before you trust it
A benchmark comparison is only as honest as the number you bring to it. Two traps sink most of them.
First, denominator. Add-to-cart over sessions is not add-to-cart over users, and trial-to-paid over a cohort is not signup over visits. Stack rates measured over different things and you've built a fake funnel — the SaaS benchmark breakdown walks through how badly this misleads when signup, activation and NRR get pasted into one column. Same stage, same denominator, same model, or don't bother.
Second, your analytics might already be lying. If GA4 says 1.9% and Shopify says 2.7%, you're benchmarking the wrong figure — the two rarely match, and the gap is usually consent banners, ad blockers, or a purchase event that fires late. Reconcile your own number first. A benchmark can't fix a measurement problem; it'll just launder it into a "conversion problem" you'll waste a month chasing.
How benchmarks get misused
The flattering peer set. An apparel founder who checks against "all ecommerce" at 2.2% feels great, right up until apparel's own 2.6% drops them back under the line. If a comparison makes you feel good, you probably picked the wrong one.
Then there's the median-as-target mistake. It's not a goal, it's the middle of a crowd. Your realistic ceiling depends on your price point, your market, your traffic mix. The only scoreboard that means anything is your own line over the last six months: a store going 1.6% → 1.9% → 2.1% is winning even while it sits "below average."
And season. Benchmark a 3-day, 200-session window and you've measured a coin flip. In some verticals the swing is savage — an outdoor retailer's June reads worse than its May every year, and that's the weather, not the site. Compare like windows, with enough purchases that two lucky orders can't move the rate.
Where this gets fast
The tedious part is doing it every time — pulling your funnel, finding the band for your vertical and device, matching denominators, spotting the widest gap. That's mechanical, so hand it to the machine. ConvRadar plugs your GA4 straight into Claude or ChatGPT, and cr_compare_to_benchmark lays your real funnel against the right band and returns the step furthest below it — no guessing which table applies to you. Connect your GA4 and ask: "Compare my funnel to the benchmark and tell me which step is furthest below." You'll get the leak, not a grade.
A benchmark will never tell you whether you're good. It can only tell you where you're bleeding — and that's the one thing worth asking it.