Shopify CRO: Benchmarks + 15 Strategies [2026 Data]
Read summarized version with
Key takeaways
The gap between an average Shopify store and a good one is roughly five times over. On lead capture, the median store converts 3.4% of the visitors it asks, the top quarter clear 7.3%, and the top tenth clear 17.5%.
Mobile outperforms desktop on onsite campaigns, 5.46% against 3.80%, on 78% of all form impressions. Designing on a desktop monitor and checking the phone afterwards is the wrong order.
Paid traffic signs up at 4.49% against 3.58% for organic search and 2.50% for direct, so the same campaign is worth more when it is aimed at the traffic you pay for.
The average Shopify session runs 2.8 pages, which is the real budget for how many times a campaign gets to appear.
Recovery works better on a narrower audience. Showing one discount to every cart abandoner pays for orders you were going to get anyway, which is what a control group exposes.
Campaigns shown after two page views convert at 9.84%, against 7.87% after one and 4.74% after three, so the window opens early and closes fast.
Shopify CRO is the work of getting more out of the traffic a store already pays for.
What makes it hard to plan is the absence of numbers: without a benchmark you cannot tell a 0.3% change from a 3% one until after you have built it.
So this one starts with the numbers: what a signup rate, a device split and a session length actually look like on Shopify right now. Then 15 strategies, each with the campaign that produced the result.
Here is what it covers:
Traffic activation audit:
Your visitors, sized
and matched to campaigns
A 7‑day behavioral audit of your traffic
- Your traffic split into named, sized segments
- Campaign ideas built for your store
- Walked through with a strategist
30 minutes on a call, then a 5‑minute install.
What is Shopify CRO?
Shopify CRO is the ongoing process of increasing the percentage of visitors who sign up for a newsletter, complete a purchase, view a page, or otherwise engage with your store. The goal is to reach growth targets while minimizing extra spend on traffic.
Conversion rate is calculated like this:
The formula
Conversion rate = (conversions ÷ sessions) × 100
A store with 40,000 sessions and 900 orders in a month converts at 2.25%. Change the numerator to signups, add-to-carts or product page views and you get the conversion rate for that step instead.
What makes it a Shopify problem specifically is which parts of the store you are able to change.
Shopify owns the checkout, so the part of the funnel most guides tell you to redesign is largely fixed: you enable one-page checkout, guest checkout, and Shop Pay, and then you are done. Everything that decides whether a shopper reaches the checkout at all happens before it.
That puts Shopify CRO into three areas you control:
The theme. Page speed, product page layout, imagery, reviews, and how many taps stand between a landing page and a cart.
Store data. Shopify exposes cart contents, cart value, order history, and customer tags, so a campaign can react to what someone has actually done rather than guessing.
Onsite campaigns. Popups, banners, bars, embedded sections inside a page, the onsite feed and web push. These are the elements you can change and measure in an afternoon.
Shopify CRO benchmarks for 2026
Published ecommerce benchmarks are averaged across platforms, verticals and store sizes, which is why they never tell you much about your own store.
The figures below are ours, taken from onsite campaigns running on Shopify stores between August 2025 and July 2026, alongside our wider Shopify onsite statistics.
The first thing they show is that the average is the least useful number in the set:
Signup benchmarks
A good Shopify store captures five times what an average one does
Signup rate on onsite capture campaigns, from the weakest Shopify stores to the strongest.
Source: Wisepops · Shopify stores, August 2025 to July 2026
If you are at 3%, the useful comparison is the top quarter at 7.3%, because that is what the same traffic can produce with better targeting.
For purchases, judge yourself against your own category rather than a global figure. Food and beverage and beauty sit near the top of published Shopify benchmarks, home, furniture and jewelry near the bottom, and a rate that would be excellent in one is below par in the other.
Three patterns in Shopify conversion data
Three of these patterns point at different work from the usual advice.
Design campaigns on a phone screen first
Mobile traffic is usually described as converting at about half the desktop rate, and at the checkout that is true, but it does not hold for the campaigns you place on your pages.
Here is how the two devices compare:
Device
Mobile carries the volume and the better rate
Onsite capture campaigns on Shopify stores, mobile against desktop.
signup rate on mobile
signup rate on desktop
of all form impressions served on mobile
Source: Wisepops · Shopify stores, August 2025 to July 2026
Paid traffic earns a stronger offer than direct traffic
Run one campaign for everyone and the offer ends up tuned for whichever source sends the most traffic.
Signup rate by source shows what that costs:
Traffic source
The same offer is worth twice as much to some sources
Signup rate on onsite forms by session traffic source, Shopify stores.
Source: Wisepops · Shopify stores, August 2025 to July 2026
Direct traffic sits at the bottom for a reason worth understanding: much of it is people who already know you and are already on your list, so there is nothing left to capture and the slot is wasted on them.
Paid traffic sits near the top because it lands on a page you chose, with intent you paid for, and usually has no relationship with you yet. Pierre Hardy took that literally and reserved a separate, more interactive campaign for paid traffic while keeping a quieter editorial approach for organic visitors.
Traffic arriving from AI assistants converts close to organic search. The volume is still small, and it is already large enough to target separately.
Show your capture campaign on the second page
The average Shopify session in our data covers 2.8 pageviews.
That number limits everything else in this guide, because a campaign set to appear on the third page will never be seen by most visitors, and a sequence of four messages will not finish.
The same limit shows up in when campaigns convert best:
Trigger timing
Two pages in is the peak, and three is already late
Conversion rate of capture campaigns by how many pages the visitor saw first.
Source: Wisepops · Shopify stores, August 2025 to July 2026
A visitor who has seen two pages has shown more interest than one who has seen a single page, which is the likely reason the second page converts about a quarter better. By the third page most of the session is spent and the rate roughly halves.
How to spend two page views
Set the primary capture campaign to fire after one or two pages, and treat the third page as too late rather than as a safer delay.
Spend the second slot on a behavioral trigger, cart activity or an exit from a product page, so it only appears once something has happened. Anything past those two belongs somewhere the shopper opens themselves, which stays available across pages and sessions without using a slot.
15 Shopify CRO strategies
The list runs in the order most stores get the best return from: the pages where visitors decide, then the campaigns that reach them, then the orders you are already losing.
Where visitors decide:
Convert more of the traffic you already have:
Recover and grow the order:
Make it repeatable:
Reorder collection pages around what sells
At 2.8 pages a session, the collection page is usually one of the two or three pages a visitor sees, and for anyone arriving from a category ad or a search result it is the first.
Collection pages tend to get set up once at launch and left alone. Sort order stays on whatever the theme shipped with, filters mirror the attributes the catalog happens to have rather than the ones shoppers choose by, and sold-out items keep the grid positions that get the clicks.
How to re-merchandise a collection page:
Sort by what sells. Best sellers and high-conversion items belong in the first two rows, which is all most mobile visitors scroll.
Push out-of-stock items to the end, or out of the grid, since every one of them in a top position costs a click.
Filter on how shoppers decide, which is usually size, price and use case rather than internal category names.
Read your own search queries. Terms with no results tell you what the catalog is missing or what a product is called wrongly, and both are cheap to fix.
Compare against stores with the same problem. These Shopify store examples show how larger catalogs order their grids.
Show fewer, better rows on mobile. Two columns with a legible price beat four columns nobody can read.
Answer the question that stalls the purchase
A shopper who leaves a product page without adding to cart usually has one unresolved question, and it is rarely the price. It is fit, or dose, or compatibility, or what happens if the thing does not work out.
Imagery and copy are how you answer that, so treat the product page as the place where the objection gets handled rather than where the product gets described.
How to answer the question on the page:
Show multiple angles plus one shot of the product in use, which answers scale and context in a way a studio shot cannot.
Lead descriptions with the consequence. Water-repellent fabric keeps you dry in an unexpected shower beats polyester outer shell.
Put shipping and returns next to the price, where the hesitation actually happens.
Build a tool where a paragraph cannot answer the question. Nutrimuscle sells sports nutrition, and first-time buyers have to choose between proteins that look similar on a spec sheet. Its product comparison tool runs a 7.1% click rate.
Syos, which sells saxophone mouthpieces, does the same job with a quiz for shoppers who cannot pick between models:


Related
Build for the phone first
Mobile carries most of the traffic and, as the data above shows, most of the onsite conversions too. What it does not carry is most of the design attention, because campaigns and product pages are usually built on a monitor and checked on a phone afterwards.
How to build for mobile first:
Keep the price and the primary button above the fold on a standard phone screen, then check a large one.
Use 16px body text minimum so nobody has to pinch to read a spec.
Give tappable elements at least 44 by 44 pixels to stop mistaps on variant selectors.
Test on a real device over a slow connection. Theme preview hides the friction that a phone on cellular makes obvious.
Build campaigns mobile first, then adapt to desktop, since that is where 78% of impressions land. The Shopify campaign apps differ a lot on mobile rendering.
Ideal of Sweden designs every campaign for the phone first across 12 country stores, where about 90% of visitors arrive on mobile. That program collected 698,000 emails at an 18.8% click rate.
:quality(80))
:quality(80))
Put proof where the hesitation is
Reviews and badges do little as a block at the bottom of the page, because the reassurance arrives after the doubt. They work when they sit next to whatever the shopper is hesitating over.
Where to place proof:
Show ratings on the product page, and aim for at least five reviews per product so the count reads as real rather than curated.
Place customer photos next to the size or variant selector, which is where fit doubt lives.
Put the returns promise next to the price, not in the footer.
Answer the shipping objection at the cart, since that is where cost surprise does its damage. These ecommerce campaign examples show the formats that carry it.
Emma Sleep runs the cart version of this without a discount at all. Instead of a form, the campaign leads with the 200-night trial and free returns, which cut abandonment 5.54% against a control group and raised average order value 5.5%.
:quality(80))
:quality(80))
Dock & Bay combines the two, leading with free shipping for first-time buyers and stacking social proof underneath it:
)
)
Match the offer to where the visitor came from
A single offer shown to everyone is tuned for whichever source sends the most traffic and wasted on the rest. In the data earlier in this guide, the best source converts at nearly three times the rate of the worst.
Visit count matters as much as source. Someone on their third visit has demonstrated interest a first-timer has not, and often does not need the discount that tips a stranger.
How to split the audience:
Split paid from organic first, since that is the largest gap and the easiest rule to write. Paid traffic has cost you money and has no relationship with you, so it can carry the stronger offer.
Give direct traffic a product message instead of a form. Much of it is already on your list, so the slot is worth more spent on something to buy.
Build a returning-visitor version of your main campaign, targeted on visit count, using Shopify personalization rules:
)
)
Pierre Hardy runs this as its first segmentation, before language or device. Paid traffic gets an interactive campaign built to justify the click, and organic visitors get a quieter editorial treatment.
The popup program averages a 6.3% click rate across both:
:quality(80))
:quality(80))
For a store with a catalog, the returning version does not have to ask for anything at all.
Sud Express reminds returning shoppers of the products they viewed last time, which converts on interest that already exists rather than buying new interest with a code:
:quality(80))
:quality(80))
Related
Ask one small question before the email
A standard signup form asks a stranger for their address before giving them a reason to hand it over. The fix is not a bigger discount, it is changing what you ask for first.
Emma Sleep opens with a one-tap question about what the shopper is buying, mattresses, pillows or beds. Answering costs nothing, and 68.6% of the people who pick an option go on to give an email, which raised signups by 50% against the old single-step form. The answer also segments the contact, so the first email is already relevant.
Here is the first step:
:quality(80))
:quality(80))
How to ask for the email:
Ask for the email on its own. Forms with a single field convert at 5.7%, the best of any field count, and anything else can go on a second step.
Wait about 10 seconds or until the second page. A 10 second delay converts at 5.31%, because the visitor has had time to see what you sell.
Test the incentive type as well as the size. A certain reward usually beats a chance at a larger one, and a giveaway can beat both when the prize is on-brand.
Test position. The bottom-center placement converts at 12.8% against a 4% average.
Use original photography. Campaigns with images collect more emails than those without, 5.4% against 3.2%.
The incentive does not have to be money off. Ziggy Family sells pet food on subscription, and answers the questions buyers arrive with instead: a feeding guide on a feeding article, in exchange for an email.
The strongest of those reached a 74.9% click rate, and the program added 9,300 subscribers in five months at a 5.7% signup rate:
:quality(80))
:quality(80))
Where the brand suits it, asking someone to play for a prize changes the trade entirely. émoi émoi ran a gift festival where visitors played for discounts, delivery and products, and captured over 8,000 emails in 30 days.
:quality(80))
:quality(80))
Keep gamified campaigns on a calendar
Running a prize wheel permanently trains visitors to ignore it, and the conversion rate falls with the novelty. Tie each one to a date and switch it off in between.
Recommend products the shopper can reach
Past roughly 100 products, no shopper sees your catalog. They see the handful of items your navigation happens to show them, which is why recommendations start earning at that size and keep earning as the catalog grows.
The difference between recommendations that earn and recommendations that fill space is whether they react to intent. Rules like buys X, show Y do not. Models that read browsing, cart contents and purchase history do.
How to run recommendations:
Match the strategy to what you know. Best sellers for a first visit, frequently bought together once there is a cart, recently viewed for a returning shopper.
Put them in more than one place. A block on the product page and a message at exit reach different moments.
Judge them on attributed revenue against a control group, not on clicks.
Pierre Hardy applies all three and holds recommendations back until exit, so a shopper comparing options gets help at the point they were about to give up and nobody browsing calmly is interrupted:
)
)
The reachability problem is separate from the relevance one. With 2.8 pages per session, a shopper who liked something on Tuesday has no route back to it on Thursday unless you keep one open.
A channel the shopper opens themselves solves that, because it persists across pages and sessions.
Pierre Hardy uses it for recently viewed items, so a shopper coming back on Thursday can reach what they liked on Tuesday:
)
)
Maison Lejaby uses the same slot for best sellers, with add-to-cart buttons inline so the shopper never has to reopen the product page:
:quality(80))
:quality(80))
The same channel has held a 15% click rate since 2021, on a brand where a discount campaign would do damage.
Target on cart value and order history
Shopify exposes cart contents, cart value, order history and customer tags to apps, which is the difference between a campaign that guesses and one that reacts. Nothing wastes margin faster than offering a first-order discount to someone on their fifth order.
The rule categories available without development work:


How to target on store data:
Start with cart value, because it maps straight to average order value.
To reach shoppers with a cart between $25 and $50, use the cart.total_price property with a greater-than and a less-than condition:
)
)
The resulting message shows products related to the item just added, at the moment the basket is big enough to grow and small enough to be worth growing:
)
)
The same logic applies to purchase recency, order count and customer tags. A shopper who last bought 30 days ago is a different problem from one who has never bought.
Put new arrivals in front of the right category browsers
New arrivals usually fail on placement. They sit in a collection nobody visits or in a homepage carousel shoppers scroll past, so the launch ends up depending on email alone. The wider product promotion playbook covers the offsite half.
How to launch a new product:
Announce arrivals somewhere that does not compete with the homepage, so the launch does not cost you a redesign.
Target category browsers with that category's new products, rather than showing everything to everyone.
Give a launch a single message. Black Ember built a dedicated notification per product, and more than 2,300 visitors opened it, with 545 of them, 23.4%, going through to the product page.
Put related products under the buy button with an embedded block, which needs no theme edit and can be A/B tested.
Timex announces arrivals without touching the homepage:
)
)
Stumptown Coffee Roasters aims the same idea at returning visitors, bringing them back to the product they viewed last time:


émoi émoi places related products directly under the buy button with an embedded block:


Let a model choose which carts get an offer
Recovery emails only reach the shoppers who left an address, which is a minority of the people who abandon a cart.
The usual onsite answer is one discount shown to every abandoner, which recovers some carts and pays for a lot of orders you were going to get anyway. AI cart recovery narrows the audience: the model reads behavioral signals from the session, cart contents and browsing depth among them, and intervenes only for the shoppers whose behavior says they are likely to leave and unlikely to return.
How to set up AI cart recovery:
Run it against a control group from the start, so you can separate recovered carts from carts that were never at risk.
Restrict the campaign to cart and checkout pages, where intent is clearest, using a URL-contains rule on /cart or /checkout.
Try the no-discount version first. Reassurance often recovers the same cart as a coupon, at full margin.
Reach the same shopper on a second channel only if the first one produced incremental orders.
Nutrimuscle runs it on the cart page, where the model decides which shoppers see the offer at all:
:quality(80))
:quality(80))
The reminder itself carries no discount, only the cart and a route back to it:
:quality(80))
:quality(80))
Judge it on orders from the exposed group against the held-back group, over a period long enough that both saw the same promotions.
Related
Set the free shipping threshold above your AOV
Shoppers treat free shipping as protection against a bad purchase rather than as a discount, which is why it often beats the same money off the price. Set the threshold below your average order value and it costs you margin, so the number is the whole decision.
How to set the threshold:
Work out your shipping spend and margin per order before you pick a number.
Set the threshold above your average order value. At a $50 AOV, free shipping from $75 grows baskets instead of subsidising them.
Configure the rule in Shopify, which documents the steps.
Say it where the decision happens, at the cart and on the product page, with the remaining amount spelled out.
Keep express delivery paid. Free standard plus paid express protects margin and gives urgency a price.
Track average order value. A threshold that lifts conversion and drops AOV is set too low. More ideas in this guide to getting sales on Shopify.
Kylie Cosmetics raises it the moment an item enters the cart:
)
)
Black Ember runs the same message for US customers in a channel that does not interrupt, and 339 of the 2,581 visitors it reached opened it in full:
)
)
Related
Make the deadline real, then keep it visible
Urgency works when it is true and stops working when it is not. A countdown that resets on refresh trains shoppers to ignore every message you send afterwards, which is a high price for one weekend of lift.
The mechanical problem with a real deadline is different: the shopper dismisses the first message, then forgets the offer exists. Announcing it once is not the same as keeping it available.
How to run a deadline:
Use dates you actually honour, and let the offer end when it says it will.
Keep the code and the deadline reachable after the first dismissal, in a format that persists while the shopper browses.
Prefer real scarcity to invented scarcity. Low stock and back-in-stock are facts your store already holds.
Apply the code for the shopper rather than asking them to remember it, unless you are using unique codes to attribute orders.
Cap the frequency. A store permanently on sale has no deadline to offer. These flash sale examples show how often to run one.
Charlotte Bio ran a six-hour flash sale this way.
The offer appeared once, then a persistent reminder carried the code and a countdown for anyone who closed it, and 236 visitors applied the code through the reminder, 99 more than through the first message:
)
)
Marilou Bertrand, Director of Digital Marketing at Charlotte Bio, put the result down to the sequencing rather than the discount: the countdown reinforced the deadline for the people who had not acted on the first message.
L'Atelier d'Amaya pairs the deadline with a spend threshold, so the offer has both an end date and a reason to add another item:
:quality(80))
:quality(80))
Reconnect with visitors who never gave an email
Traffic that leaves without an address sits beyond every retention channel you own. Web push covers that gap, because the opt-in costs the shopper one tap and no personal data.
How to earn the push opt-in:
Ask for the opt-in after a signal. A second page view or a product view earns you the right to ask.
Send back-in-stock alerts first. They recover demand you already generated and nobody experiences them as marketing.
Name the product in the message, with its image, so the notification carries the decision rather than a link to it.
Give time-limited offers a real end date, or the channel stops working within a month. Compare the push notification tools before you install one.
Pura Vida sends a cart reminder with the product name and photo:


Beau Domaine uses the channel for a dated code with a free item above a spend threshold, roughly an hour after the visitor leaves:
)
)
Related
Add a control group to every test
A standard A/B test tells you whether variant A beat variant B. What it does not tell you is whether either beat showing nothing, which is the only question that decides if a discount campaign is profitable.
A control group answers it. Hold back a share of the audience, show them nothing, and compare revenue per visitor.
An even three-way split is the default, and the larger the holdout the sooner the comparison becomes readable:
Test design
Split it three ways, with one third held back
How to divide traffic in a campaign test with a holdout.
see variant A
see variant B
see nothing, and become the baseline
A third is the default holdout, and it reaches significance sooner than a small one
How to run the test:
Take the common case: you want to know whether a discount for new visitors adds revenue, given that some of those visitors would have bought anyway.
Step 1: build two variants.
One with the discount, one with a different incentive or none:
)
)
Step 2: hold back a control group.
Exclude a share of new visitors from both variants so you have a true baseline:
)
)
Step 3: track a revenue goal, purchases or revenue per visitor rather than clicks:
)
)
Step 4: read the difference.
If the exposed group earned more per visitor than the control, keep it. If not, you were discounting orders you already had.
Here is the comparison you are reading:


Across our aggregate tests, quantified value copy beat emotional messaging in 68% of cases and grew revenue 8% to 15%, often while click rate stayed flat. Which is the case for reading revenue rather than engagement.
Ask the people who did not buy why
Everything above changes a number you can measure. A survey tells you why the number sits where it does, which is what you need when the tests keep coming back flat.
How to run the survey:
Ask one question, at exit, on the page where the decision failed. Five options plus a write-in field gets answers without turning the survey into work.
Ask buyers a different question. Ideal of Sweden asks how the buyer first heard of them after checkout, with response rates as high as 80% in some markets, which fills in attribution analytics misses.
Feed the answers into the roadmap, since a repeated objection is a hypothesis you can test rather than a comment to file.
A.P.C. runs the exit version, and keeps the form available in the corner of the screen for anyone who wants to volunteer:
)
)
Related
How to build a Shopify CRO roadmap
Fifteen strategies is more than any store should run at once. What sets the order is which step of your funnel loses the most people.
1. Set the baseline from your own store. Pull sessions, add-to-carts and orders from Shopify Analytics, then split by device and traffic source. The benchmarks earlier, plus our campaign benchmark study, tell you whether a number is unusual. Only your own funnel tells you which to attack.
2. Find the largest single drop. Compare product page views to add-to-carts, and add-to-carts to orders. The wider gap decides whether you are working on discovery or on checkout confidence.
3. Size it before you build it. Multiply the affected sessions by the change you think you can make. A 1% improvement on 200,000 sessions beats a 20% improvement on 4,000, and it reaches significance sooner.
4. Write the hypothesis with a number in it. Triggering the capture campaign on the second page instead of on landing will raise signup rate from 3.1% to 4% is testable. Improving the popup is not.
5. Change one thing, against a control group. Simultaneous changes make the result unreadable, and without a control group you cannot separate a result from what would have happened anyway.
6. Log every test, including the flat ones. After six months a log of failures is worth more than a log of wins, because it stops you rebuilding what already did not work.
Metrics to track per test
Conversion rate for the step you changed, measured on its own.
Revenue per visitor against the control group, which catches discounts that raise orders and lower profit.
Average order value, especially on anything involving thresholds or upsells.
Signup rate and cost per contact, where the campaign captures rather than sells.
Bounce rate on the pages carrying the campaign, as the guardrail.
On Shopify Plus the constraint is usually organizational rather than technical. Several country stores sharing one theme mean a test that wins in one market is only a hypothesis elsewhere.
Run the experiment in the largest market first, then re-run the winner as a fresh test per locale. Ideal of Sweden operates 12 country stores this way, and Pierre Hardy splits by language and by paid against organic before it splits by anything else.
Shopify CRO tools
Do you need dedicated CRO software on Shopify? Not to start. Shopify Analytics gives you the funnel and the theme editor covers layout and copy, which is enough for the five foundations above.
Software becomes necessary at the point where you want to change what a visitor sees based on who they are, and to prove the change earned money.
This one splits four ways:
Analytics and session tools. Where visitors drop off. Shopify Analytics plus GA4 covers the funnel, and session recording adds the reason.
Onsite campaign platforms. Popups, banners, bars, embedded sections, the onsite feed and web push, which is where most measurable movement happens.
Experimentation platforms. A/B and A/B/n testing with control groups and revenue attribution.
Recommendation engines. Worth adding once the catalog is large enough that navigation cannot bring the right product forward.
The reason to prefer one platform across campaigns, experiments and recommendations is measurement rather than tidiness. Separate apps each report their own wins against their own baseline, and those numbers add up to more revenue than the store made.
Wisepops is the platform behind the campaigns in this guide, with control groups and revenue attribution underneath them.
For the wider market, see the review of CRO software and the top-rated Shopify apps.
Get started
in minutes
Start converting more visitors today.
Get started in minutes and see results right after.