How to Find Conversion Leaks in a Shopify Apparel Store
A conversion leak is the step where qualified shoppers stop. Map Shopify's funnel by landing page, split new from returning visitors, and rank what to test first.
The biggest conversion leak in an apparel store is the step where the most qualified sessions stop, not the step with the scariest percentage. Find it by mapping Shopify’s funnel for each major landing page, splitting first-time from returning shoppers, and sorting each drop into uncertainty (a question the page never answered) or friction (something that got in the way). Fix the largest qualified leak first.

The whole funnel on paper, one circle per drop. Only one of them earns this month’s test. Editorial image in Classic Antla disposable-camera style.
Apparel stores rarely have a single conversion problem. They have several small leaks spread across landing pages, devices, and shopper types, and the store-wide conversion rate blends them into one number nobody can act on. For a small team, chasing the wrong leak costs more than the fix itself, because it uses up the month’s only test slot.
Here is the method I use to find the right one with Shopify’s own reports, one analytics split, and a scoring worksheet.
Map funnel by landing page
Start with the Conversion rate breakdown in Shopify’s Behavior reports. It shows four steps: all sessions, sessions with cart additions, sessions that reached checkout, and sessions that completed checkout.
Two details change how you read it.
First, each step’s rate is divided by total sessions, not by the step before it. A reached-checkout rate of 3% means 3% of all sessions. To see where shoppers actually stop, divide each step by the previous one yourself. A step that looks tiny as a share of all sessions can be a healthy share of the step before it.
Second, the report has an open funnel toggle. The open view counts a session at any step it reached, in any order. The closed view counts it only if it went through every step in sequence.
If your product pages show express checkout buttons, some buyers go straight to checkout without a cart addition, and the closed view drops them from the later steps. A wide gap between the two views tells you how much of your revenue skips the cart, which is worth knowing before anyone starts “fixing” cart abandonment.
Then split the funnel by where sessions start. The Sessions by landing page report shows the page each session began on, and Shopify lets you edit a report’s columns and filters, then save it as a custom report. Add the cart, checkout, and completed-checkout session counts as columns. Keep the same human-session filter and the same date range on every row, or the comparison means nothing.
Individual URLs rarely have enough sessions to read, so group them by type:
| Landing page type | What the shopper came for | Leak to suspect | Where it shows |
|---|---|---|---|
| Product page from paid social | The exact piece in the ad | The page does not match the ad, or the size question goes unanswered | Plenty of sessions, few cart additions |
| Collection page from search | A category, such as linen trousers | Filters, sort order, or sold-out sizes that bury the right product | Few product views per session |
| Home page, direct traffic | The brand, often a returning shopper | Navigation that hides new arrivals or the category they wanted | Short sessions, high bounce rate |
| Lookbook or blog post | Styling ideas | No path from the look to the pieces in it | Engaged sessions with almost no cart additions |
| Sale or campaign page | The offer | Exclusions, stacked discount rules, or a code that fails | Sessions that reach checkout and stop there |
Product views per session is not part of Shopify’s funnel. If you need it, count product_viewed events from Shopify’s standard pixel events in whichever analytics tool your pixels feed.
Segment first-time and returning shoppers
A returning shopper already knows your sizing, your fabrics, and how returns work. A first-time shopper knows none of it. The same page can be clear to one and a wall of open questions to the other, so a blended funnel hides the most useful contrast in the store.
Be careful which split you use. Shopify’s New vs returning customers report, part of the Customers reports, classifies buyers: a new customer placed a first order, a returning customer had ordered before. That helps with revenue mix, but it says nothing about visitors who never bought, and that is where most leaks live.
For visitors, use a session-level split from your analytics tool. In GA4, the New / returning dimension treats a user with zero previous sessions as new and a user with one or more as returning (GA4 Data API schema). It relies on cookies, so shoppers who decline analytics, clear cookies, or switch devices can show up as new.
Run the landing page funnel once per group and compare where each one drops:
- Only first-time visitors drop at cart additions. Suspect uncertainty: fit, returns, delivery cost, or whether the brand is trustworthy.
- Only returning visitors drop, usually at checkout. Suspect a recent change: new shipping rates, a removed payment method, a login prompt, or a discount that stopped applying.
- Both groups drop at the same step. The step itself is the problem, and it is more likely friction than doubt.
- Returning visitors add to cart often but rarely check out. Some of them use the cart as a wishlist. That is a different job, and it calls for a save-for-later path, not a checkout fix.
Not every drop is a leak. In Baymard’s cart abandonment research, 42% of US online shoppers had abandoned a cart because they were only browsing or were not ready to buy. Those sessions are part of shopping. Plan for them, and point your fixes at the places where a ready shopper was stopped.
Identify uncertainty vs friction
Every drop you find belongs to one of two families, and they need opposite fixes.
Uncertainty means the shopper wants the piece but is holding a question the page did not answer. Will it fit? Is that the real color? Is the fabric sheer? What will it cost with shipping? Can I send it back? Uncertainty is fixed with information.
Friction means the shopper has decided and the store got in the way: a variant selector that does not respond, a popup covering the add-to-cart button, a slow gallery on mobile, a discount code that fails, a forced account. Friction is fixed with engineering, or by removing something.
Mixing them up is expensive. Add information to a friction problem and you get a longer page that still breaks. Engineer a faster page for an uncertainty problem and you get a quick page nobody trusts.
Session recordings make the difference visible. Microsoft Clarity’s semantic metrics flag rage clicks (several clicks in one small area in rapid succession) and dead clicks (a click that gets no visible response). Those lean friction. Long, looping evaluation with no errors leans uncertainty.
| Signal | Leans | Typical fix |
|---|---|---|
| Size guide opened, then exit | Uncertainty about fit | Garment measurements and a fit note beside the size selector |
| Repeated switching between two sizes | Uncertainty, between sizes | ”If you are between sizes” guidance for that product |
| Gallery loops and fabric zooms | Uncertainty about color or material | True-color photo, fabric close-up, composition near the price |
| Rage clicks on a swatch or size button | Friction | Fix the selector and test it on a real phone |
| Dead clicks on product images | Friction, or a broken expectation | Make images zoomable, or stop them looking clickable |
| Checkout stops at the shipping step | Cost surprise | Show delivery cost and free-shipping thresholds before checkout |
| Checkout stops at payment | Friction or trust | Check errors, wallets, and payment methods on mobile |
At checkout, cost comes first. Once Baymard sets the just-browsing group aside, the most common reason for abandoning is “extra costs too high (shipping, tax, fees)” at 40%, twice the next reason, slow delivery, at 20%. The checkout survival guide covers the pricing and step-count fixes in more depth. On product pages the balance usually tips toward uncertainty, which the view-to-cart diagnosis works through by device and source.
Some uncertainty is about appearance rather than size: whether a color or cut suits the shopper. A visual preview is one information fix worth testing there. Across more than 500,000 try-ons on stores using Antla, shoppers who used try-on converted at 3.8%. Antla merchant reporting, cohort dates not published.
Read that figure carefully. It describes a self-selected group of engaged shoppers, it is not a store-wide conversion rate, and on its own it has no comparison group, so it says nothing about lift at your store. The breakdown of conversion engine metrics explains which number answers which question.
A preview answers “how will this look on me,” not “which size fits,” so it sits alongside fit information rather than replacing it. If appearance is your open question, Antla is the Shopify app for it, and a holdout test will tell you whether it moves your numbers.
Prioritize tests
You now have a list of drops, each tagged uncertainty or friction. Rank them with a worksheet rather than a gut feeling, and compare each leaking segment with your own best comparable segment, not an industry benchmark. Benchmarks blend stores with different prices, traffic, and return policies. Your desktop visitors on the same product pages are a far fairer comparison for your mobile visitors.
For each candidate, fill in:
- Sessions affected per month.
- Gap: orders per 100 sessions in the comparison segment, minus the same figure for the leaking one.
- Potential: sessions multiplied by the gap, divided by 100. That is roughly how many more orders a month you would see if the leaking segment behaved like the comparison. Treat it as a ceiling, not a forecast.
- Confidence, 1 to 3: numbers only (1), numbers plus one qualitative source such as recordings or support tickets (2), or numbers plus two sources that agree (3).
- Effort, 1 to 3: a copy or settings change (1), a theme change or a new app (2), new photography, a policy change, or developer work across templates (3).
- Priority: potential multiplied by confidence, divided by effort.
Here is how it plays out for a made-up store. Every number below is illustrative, not a benchmark:
| Candidate leak (illustrative) | Sessions per month | Gap per 100 sessions | Potential orders | Confidence | Effort | Priority |
|---|---|---|---|---|---|---|
| Mobile product pages from paid social, first-time visitors | 12,000 | 0.6 | 72 | 2 | 1 | 144 |
| Checkout sessions that stop at shipping | 1,500 | 12 | 180 | 3 | 2 | 270 |
| Lookbook sessions that never reach a product | 3,000 | 0.4 | 12 | 2 | 1 | 24 |
In this store the checkout leak wins even though it touches an eighth as many sessions, because every one of those shoppers had already chosen something to buy. That is what “most qualified” means in practice. The mobile product page leak is still worth testing, second.
Test the top candidate, write down the runner-up so nobody relitigates it next month, and rescore after each result. Fixing one leak pushes more shoppers to the next step, which can make a later leak look bigger than it was.
Where a leak map can mislead you
A leak map is a model of the store, and it has blind spots:
- The landing page is not the whole journey. A returning shopper who lands on the home page may be buying a dress they found through an ad last week. Credit and blame both blur across sessions.
- Sessions are not people. One shopper across three visits can look like two leaks and a conversion. Shopify also notes that a single session can include more than one purchase, so sessions that completed checkout will not always match your order count. Reconcile with orders before you quote a number.
- Small segments swing. A few hundred sessions a month cannot support a conclusion about a half-point gap. Group landing pages by type and extend the window before you decide.
- Measurement changes look like behavior changes. A new pixel, a consent banner update, or a change in how your platform counts sessions can move the funnel with no shopper doing anything differently. Log the date of every tracking change next to the report.
Map one month of sessions this week
Open the Conversion rate breakdown and note both the closed and open views. Build the landing page report with the funnel columns and group pages into the five types above. Split by new and returning visitors in your analytics tool, tag each drop as uncertainty or friction, score the top three, and start one test.
If the funnel looks broken everywhere at once, the problem may be the traffic rather than the store, and what to fix first when traffic brings few sales is the better starting point. If most of the leaking sessions come from ads, improving fashion conversion without raising ad spend covers that entry point on its own.
About the author: Aaron founded Antla. He has opinions about funnel charts that start at “All sessions” and end in a meeting.