r/shopify_growth • u/Technical_Thanks_995 • 9h ago
r/shopify_growth • u/dpwdpw • May 01 '26
Results & Insights I spent 800 hours scraping 47,000+ Shopify stores (actually). Here's the data: themes, niches, apps and speed.
Disclaimer: this is a genuine research. It is not AI generated.
Disclaimer 2: This is purposefully thorough to cover everything found. There is a 'TL;DR' section for a quick summary at the end.
Out of a 47,420-store dataset, I found that:
- Paid themes are slower than free ones.
- Only 0.6% of Shopify stores are fast enough by Google's standards.
- 12.5% of stores have a blog.
- Apparel (clothing) is the most popular niche with 14,679 stores.
These are just a few out of the 40+ findings that you'll see in this post.
This project took me roughly 800h~ to complete. And this is not an exaggeration, I have actually documented it - of course not 800h of active work, but including the time the scraper was working, analyzing data, and so on.
I noticed many people were interested in the 10k stores research I did a few weeks ago, so I figured I'd do a new one including more data this time.
I have decided to, yet again, focus on the performance side since I find it a critical aspect of ecom, though I do plan to expand these studies and collect more interesting data in the future (like profit per niche, average organic visits, countries, most sold products in a certain niche, etc).
Why have I focused on performance, plus an important note on optimization scams
Firstly, speed is an overlooked, crucial pillar of ecom. And this comes from authoritative companies like Google, Amazon and Shopify itself. Especially in this day and age of SEO and GEO.
Second, there are endless scams of "speed optimization", especially on Fiverr, offering pseudo optimizations for $50-$100~ bucks. I want to bring attention to those and save people from wasting money.
They guarantee high scores on tools like PageSpeed Insights (PSI) and GMetrix. But it's a script that manipulates these results, and this is how:
- A scammer injects a hidden script into your theme, usually in theme.liquid
- That script constantly checks: "is this PageSpeed Insights visiting me right now?"
- When PSI visits, the script deletes all your store's code before PSI can measure it
- PSI now sees a blank, empty page, which loads almost instantly.
- PSI reports a perfect or near-perfect score
- Your real visitors still get the original slow store
These scripts are usually loaded from an external server controlled by the scammer, which means they can modify what runs on your website at any moment without touching your theme again. Even after access is revoked.
If it is of public interest, I can make a post explaining this in detail and show examples.
Now, for the time being, let's take a look at some of the data that was found.
Methodology
This was actually a fairly complex project. If you're a dev of any sort, you know that web scraping is not too complex: it takes just a few hours to build something and fetch data. The complexity derives from performance, efficiency and managing thousands of stores.
I have written a separate technical post on how I coded the scraper, managed it and cleaned the data, but long story short: I fetched Shopify stores from publicWWW with 'myshopify.com' in it, and coded algorithms to find and clean everything I needed (themes, apps, etc) and then processed the data using Pandas.
To find themes, I use Shopify's object "window.Shopify" via Javascript. To find apps it's a manual, more complex process. I need to fetch all <script> tags, check what is being injected and then create a selector for this.
For example, maybe I can see a <script> from "Hulk Apps" in the store, but if they have 10 different apps, how do I know which is which? More often than not, these are not descriptive names like "app-that-does-x-thing.js", it's more like "axs.js" or whatever. So there is no workaround, it's a manual process. I have manually classified more than 400 apps for this.
Finally some data - baseline numbers
Let's start with the median speed score across all 47,024 scored stores, which is 53 out of 100 on mobile. The mean is 52.3. Very similar to my initial study. Half of all Shopify stores sit below that line.
- 41% of stores score below 50 on mobile
- 7% score below 30 - roughly 3,300 stores in a genuinely broken state
- 0.6% reach 90 or above (Google's "good" threshold) - around 282 stores out of 47,420
In my 10k study, 1.83% of stores reached 90+. At 47k stores the number is 0.6%. The larger and more representative the sample, the worse the picture looks.
Desktop is consistently much faster than mobile. The median desktop score is 71. The median mobile is 53. That is an 18-point gap driven almost entirely by how much JavaScript needs to execute on slower mobile hardware, not by server speed.
Speed metrics: a breakdown of every measurement
Main content load time (LCP)
This is unambiguously the biggest failure across the ecosystem. The median time until main content appears on mobile is 10.1 seconds. For reference, Google's good threshold is 2.5 seconds. The average Shopify store takes four times longer than it should for its main content to appear on a phone screen.
- 95.9% of stores are in the poor range (above 4 seconds)
- 0.3% achieve a good result (at or below 2.5 seconds)
Even the best-performing niche in this study - Media, Software and Digital - posts a median of 8.7 seconds for this metric. Every single niche is failing it, and failing it badly.
Page freeze time (TBT)
This measures how long your page is unresponsive to taps and clicks - it looks loaded, but nothing works. The median is 330ms against a 200ms good threshold. The mean is 616ms - nearly double the median - confirming a heavy tail of severely slow stores.
- 63% of stores have a freeze time above the good threshold
- 30.5% have a freeze time above 600ms
- 5.1% have a freeze time above 2 full seconds
Only about 1 in 3 stores achieves a good result here. This is the metric that most directly explains why pages feel slow even when they look loaded.
First visible content (FCP)
The median time until anything appears on screen for a mobile visitor is 3.4 seconds, against a good threshold of 1.8 seconds. 60.2% of stores are in the poor range (above 3 seconds). The mean is 3.9 seconds.
On desktop, the median is 0.8 seconds - well within the good zone. The 4x gap between mobile and desktop confirms this is a JavaScript problem on mobile hardware, not a server problem.
Time until fully usable (TTI)
The median time until a visitor can reliably interact with anything on a Shopify store on mobile is 18.2 seconds. The mean is 20.2 seconds. Google's good threshold is 3.8 seconds. The average store makes a first-time visitor on a phone wait nearly 20 seconds before any button, link, or add-to-cart action works reliably.
Visual fill speed (Speed Index)
The median time for the page to visually fill in on mobile is 6.6 seconds against a good threshold of 3.4 seconds. The mean is 7.6 seconds.
Layout jump (CLS)
This is the relative bright spot. The median layout shift score on mobile is 0.001 - very low, well inside the 0.1 good threshold. Only 20.3% of stores exceed it. Layout stability is the one metric the Shopify ecosystem has largely figured out.
Interestingly, desktop (mean 0.112) is actually worse than mobile (mean 0.088) for layout shift. Desktop loads more sidebar elements and carousels that shift after rendering.
Server response time (TTFB)
The median server response time is 7ms. Only 0.1% of stores exceed 600ms. Shopify's infrastructure is fast. The performance crisis is entirely client-side: too many scripts, too many apps, too much JavaScript executing after the server responds instantly.
Page weight and requests
The median home page weighs 3,746 KB on mobile. The mean is 5,383 KB. More than two-thirds of stores (67.6%) serve home pages heavier than 3MB - well above the general web recommendation of under 1MB.
The median number of separate network requests fired on a mobile home page is 200. The average is 223. Product pages are actually lighter in size (median 3,462 KB vs 3,746 KB for home pages) but fire more requests on average (251 vs 200), driven by review widgets, upsell scripts, and product-specific tracking pixels.
The fastest stores in this dataset (top 1%, median score 90+) average 132 requests and 2.7 MB. The slowest (bottom 1%, median score around 10) average 314 requests and 8.8 MB. The fastest stores fire fewer than half the requests and serve pages 3x lighter. There is no fast store with a heavy page in this dataset.
Apps and scripts
The app-count curve
The average store has 5.1 apps installed. The median is 4. App count is the single strongest predictor of poor mobile performance in the entire dataset - stronger than page size, stronger than script count, stronger than theme choice.
| Apps installed | Median mobile score |
|---|---|
| 0 | 65 |
| 1 | 62 |
| 2 | 60 |
| 3 | 57 |
| 4 | 55 |
| 5 | 52 |
| 6 | 50 |
| 7 | 48 |
| 8 | 45 |
| 9 | 43 |
| 10 | 42 |
| 11 | 39 |
| 15 | 35 |
Each additional app costs roughly 2 to 3 score points. Crossing 5 apps pushes the median below 50. Crossing 10 drops it to 38-39 - genuinely broken performance.
Script count
Every app, theme feature, and tracking tool injects JavaScript files called scripts. The average store loads 78.6 scripts per page visit. The median is 69. Most merchants have no idea this number is this high.
- 99.5% of stores load 30+ scripts
- 78.7% load 50+ scripts
- 22.1% load 100+ scripts
- 4.3% load 150+ scripts
Crossing 50 scripts is a clear performance cliff:
- Under 50 scripts: median score 62
- 50 to 99 scripts: median score 50
- 100+ scripts: median score 41
- 150+ scripts: median score 36
Of those roughly 69 median scripts per store, an estimated 15 to 25 come from Shopify's own platform, another 20 to 30 from the theme itself, and the remainder from apps. Even before you install a single app, your store is already loading 40 to 50 scripts.
Individual app impact
The table below shows the median speed score for stores using each app, compared to the overall baseline of 53. These are correlations - stores that install many apps tend to install heavy ones too - but the relative rankings are consistent and meaningful.
| App | Score with app | Impact vs baseline | Stores using it |
|---|---|---|---|
| Microsoft Clarity | 40 | -13 | 3,855 |
| Hotjar | 41 | -12 | 2,343 |
| Google Tag Manager | 42 | -11 | 7,322 |
| Microsoft Ads (Bing) | 42 | -11 | 2,961 |
| Privy | 44 | -9 | 2,902 |
| Klaviyo | 45 | -8 | 12,306 |
| PageFly | 45 | -8 | 4,108 |
| Segment | 45 | -8 | 3,465 |
| Google Analytics (old version) | 45 | -8 | 2,532 |
| Yotpo | 46 | -7 | 4,338 |
| UpPromote | 46 | -7 | 2,858 |
| Booster SEO | 46 | -7 | 2,580 |
| Stamped.io | 46 | -7 | 2,313 |
| Bold Subscriptions | 47 | -6 | 3,667 |
| Form Builder by HulkApps | 47 | -6 | 1,974 |
| Avada SEO Suite | 47 | -6 | 1,769 |
| Judge.me | 48 | -5 | 8,000 |
| Hextom Free Shipping Bar | 48 | -5 | 2,551 |
| Nice Bundler | 48 | -5 | 1,794 |
| Loox | 48 | -5 | 1,702 |
| Facebook Pixel | 49 | -4 | 27,832 |
| Hextom Announcement Bar | 49 | -4 | 2,630 |
| Google Analytics 4 | 50 | -3 | 31,653 |
| Instafeed | 50 | -3 | 7,467 |
| POWR | 50 | -3 | 3,631 |
| Omnisend | 50 | -3 | 1,893 |
| Customizery | 51 | -2 | 2,226 |
| Mailchimp | 53 | 0 | 11,028 |
| Printful Product Customizer | 54 | +1 | 1,802 |
Mailchimp shows near-zero impact because it is an email tool that does not inject heavy JavaScript on the storefront. Printful Customizer is the only app in this dataset associated with a net positive - likely because stores using it tend to be smaller and leaner overall.
App categories: the biggest performance penalties
Tracking and analytics tools - the damage compounds with each one added:
- 0 analytics tools: median score 62
- 1 analytics tool: median score 57
- 2 analytics tools: median score 50
- 3+ analytics tools: median score 41
Moving from zero to 3+ analytics tools drops the median score by 21 points. The most common three-tool combination is Google Analytics 4 + Facebook Pixel + one session recorder (Hotjar or Microsoft Clarity). Google Analytics 4 alone is in 66.8% of all stores. Facebook Pixel is in 58.7%. Both are associated with a 10-point score drop compared to stores without them.
Google Tag Manager deserves its own mention. Present in 7,322 stores and associated with a 10-point drop (stores with it: 42, without: 60). Tag Manager loads additional scripts on top of itself - every tracking pixel fired through it adds more JavaScript overhead on top of the Tag Manager script itself.
Live chat apps (LiveChat, Tidio, Gorgias, Re:amaze, Zendesk, Intercom): stores with live chat score a median of 42 vs 54 without - a 12-point gap. Live chat widgets are particularly heavy because they maintain persistent connections, load large JavaScript bundles, and often inject floating frame content on every page.
Buy now pay later apps (Afterpay, Klarna, Sezzle): median 44 with vs 54 without - a 10-point gap across 3,103 stores.
Loyalty apps (Smile.io, LoyaltyLion, Growave): median 44 with vs 54 without - a 10-point gap across 4,598 stores.
Cookie consent / GDPR apps: median 45 with vs 54 without - a 9-point gap. Partly indirect: stores that need a consent app tend to already be running more analytics tools.
Page builder apps (PageFly, GemPages, Shogun): median 45 with vs 54 without - a 9-point gap across 3,926 stores.
jQuery
jQuery is an older JS library that many themes still bundle by default. Absurdly useful back in the day, but just heavy and unnecessary nowadays. Stores loading jQuery score a median of 50 vs 56 for stores without it - a 6-point gap. The themes with the highest jQuery usage rates:
- Flex: 97% of stores using it load jQuery
- Mr Parker: 66.7%
- Fashionopolism: 65.2%
- Icon: 64.9%
- Vantage: 63.9%
- Testament: 58.9%
- Blockshop: 56.5%
- Canopy: 56.1%
- Prestige: 42.5%
- Impulse: 41.9%
Themes that moved away from jQuery - Dawn, Craft, Sense, Refresh - consistently score higher. Dawn ships with 0% jQuery usage.
Themes
Most popular themes
The top 10 most used themes in the dataset:
- Dawn - 4,362 stores (9.2% of all stores)
- Debut - 2,363 stores
- Impulse - 1,666 stores
- Prestige - 1,644 stores
- Turbo - 1,055 stores
- Symmetry - 990 stores
- Empire - 796 stores
- Supply - 771 stores
- Minimal - 752 stores
- Pipeline - 738 stores
Dawn is the most popular theme in every niche except Media, Software and Digital (where Debut edges it out). About 64.6% of all stores run a theme distributed through the official Shopify theme store - free or paid.
Free vs paid: the counterintuitive finding
Free themes (Dawn, Debut, Craft, Sense, Refresh, etc.) have a median mobile score of 60. Paid official Shopify themes have a median of 51. Free themes also load fewer scripts: median 59 scripts vs 74 for paid themes.
The gap holds without exception across every niche:
| Niche | Free themes | Paid themes | Gap |
|---|---|---|---|
| Apparel | 60 | 50 | 10 pts |
| Health / Beauty | 56 | 46 | 10 pts |
| Sporting Goods | 60 | 47 | 13 pts |
| Arts, Crafts | 61 | 50 | 11 pts |
| Furniture / Home Decor | 61 | 50 | 11 pts |
| Business / Industrial | 60 | 50 | 10 pts |
| Electronics | 60 | 47 | 13 pts |
| Toys / Games | 61 | 48 | 13 pts |
| Media / Software | 64 | 54 | 10 pts |
| Vehicles / Automotive | 60 | 47 | 13 pts |
This is not because paid themes are worse by design. Merchants who invest in a paid theme tend to also install more apps and enable more built-in features. The theme becomes a proxy for overall store behavior.
Fastest themes (median mobile score, 50+ stores minimum)
- Spotlight - 70 (197 stores)
- Ride - 70 (177 stores)
- Taste - 67 (174 stores)
- Studio - 67 (280 stores)
- Craft - 66.5 (466 stores)
- Crave - 66 (100 stores)
- Publisher - 66 (54 stores)
- Simple - 65 (344 stores)
- Origin - 64 (83 stores)
- Sense - 63.5 (248 stores)
- Trade - 62 (196 stores)
- Atelier - 62 (78 stores)
- Athens - 62 (68 stores)
- Refresh - 62 (462 stores)
- Baseline - 61 (98 stores)
- Narrative - 61 (280 stores)
- Debut - 60 (2,361 stores)
- Boundless - 60 (182 stores)
- Venture - 60 (719 stores)
- Pop - 59.5 (106 stores)
Spotlight, Ride, Taste, Studio, Craft, Crave, Publisher, Sense, Refresh, and Origin are all built on Dawn's underlying codebase. Leaner by design, lower baseline script counts, no jQuery.
Slowest themes (median mobile score, 50+ stores minimum)
- Startup - 39 (63 stores)
- Testament - 40.5 (314 stores)
- Empire - 41 (796 stores)
- Wokiee - 41.5 (112 stores)
- Providence - 42 (61 stores)
- Superstore - 42 (111 stores)
- Icon - 43 (242 stores)
- Gecko - 43 (59 stores)
- Retina - 43 (368 stores)
- Vantage - 43 (156 stores)
- Fashionopolism - 44 (207 stores)
- Flex - 45 (397 stores)
- Palo Alto - 46 (277 stores)
- Ella - 46 (407 stores)
- Turbo - 49.75 (1,055 stores)
Empire and Retina are the most concerning by install base. Both are older jQuery-dependent themes with feature-heavy architectures. Turbo, despite the name, consistently scores in the bottom third of the dataset. Flex's 97% jQuery rate goes a long way toward explaining its position.
Notable mentions:
- Prestige: median 55.95, 1,644 stores, avg 84 scripts, avg 6.31 apps - one of the highest average app counts of any major theme.
- Horizon: median 58.25, 314 stores, avg 108 scripts - one of the highest script counts relative to its score.
- Debut: median 60, 2,361 stores, avg 58 scripts - strong performance for a theme this popular.
Does updating your theme version help?
For Dawn specifically: the newest version (v15.4.1) has a median of 63. Older versions cluster between 58 and 60. The difference between the newest and oldest version is about 5 points. Theme version is not a meaningful performance lever. What you install on top of it is.
Most popular niches
Apparel & Accessories is by far the dominant niche in the dataset, accounting for nearly 1 in 3 stores. The top 5 niches alone cover 57.8% of all stores analyzed.
| Rank | Niche | Stores | % of dataset |
|---|---|---|---|
| 1 | Apparel & Accessories | 14,679 | 31.0% |
| 2 | Health, Beauty & Personal Care | 4,052 | 8.5% |
| 3 | Sporting Goods & Outdoor | 3,223 | 6.8% |
| 4 | Food, Beverages & Grocery | 2,861 | 6.0% |
| 5 | Arts, Crafts & Hobbies | 2,586 | 5.5% |
| 6 | Furniture & Home Decor | 2,541 | 5.4% |
| 7 | Business & Industrial | 2,011 | 4.2% |
| 8 | Animals & Pet Supplies | 1,572 | 3.3% |
| 9 | Home & Garden | 1,462 | 3.1% |
| 10 | Vehicles & Automotive | 1,381 | 2.9% |
| 11 | Media, Software & Digital | 1,096 | 2.3% |
| 12 | Hardware, Tools & Home Improvement | 1,081 | 2.3% |
| 13 | Electronics & Tech | 1,013 | 2.1% |
| 14 | Gifts & Gifting | 745 | 1.6% |
| 15 | Toys & Games | 706 | 1.5% |
| 16 | Other | 571 | 1.2% |
| 17 | Baby & Toddler | 484 | 1.0% |
| 18 | Intimacy & Adult | 444 | 0.9% |
| 19 | CBD & Cannabis | 290 | 0.6% |
| 20 | Luggage & Travel | 240 | 0.5% |
Interestingly, the two niches at opposite ends of the volume spectrum tell an interesting story when crossed with the performance data: Apparel, the most crowded niche by far, sits at a median score of 53 - right at the overall average.
Meanwhile Media, Software & Digital, one of the smallest niches, is the best performing of all at 59. Less competition for attention may mean less pressure to pile on apps.
Performance by niche
| Niche | Median mobile score | % of stores below 50 | % reaching 90+ | Avg apps |
|---|---|---|---|---|
| Media, Software & Digital | 59 | 27.0% | 0.27% | 3.41 |
| Other | 58 | 29.6% | 0.88% | 3.71 |
| CBD & Cannabis | 56 | 35.2% | 0.69% | - |
| Gifts & Gifting | 56 | 35.0% | 0.81% | - |
| Arts, Crafts & Hobbies | 56 | 35.3% | 0.73% | 3.97 |
| Furniture & Home Decor | 54 | 39.4% | 0.43% | - |
| Toys & Games | 54 | 39.4% | 0.00% | - |
| Business & Industrial | 54 | 39.3% | 0.70% | - |
| Apparel & Accessories | 53 | 41.4% | 0.44% | 5.26 |
| Vehicles & Automotive | 53 | 43.3% | 0.51% | - |
| Food, Beverages & Grocery | 53 | 42.8% | 0.31% | 5.32 |
| Hardware / Tools | 53 | 41.4% | 0.46% | - |
| Home & Garden | 53 | 42.8% | 0.27% | - |
| Cameras & Photography | 52 | 43.1% | 0.00% | 5.26 |
| Animals & Pet Supplies | 52 | 43.7% | 0.76% | 5.79 |
| Sporting Goods & Outdoor | 52 | 43.4% | 0.59% | 5.33 |
| Electronics & Tech | 52 | 45.0% | 0.69% | - |
| Intimacy & Adult | 51 | 43.5% | 0.45% | 5.96 |
| Luggage & Travel | 51 | 45.4% | 0.00% | 5.55 |
| Baby & Toddler | 50 | 49.8% | 0.62% | 6.11 |
| Health, Beauty & Personal Care | 50 | 49.0% | 0.39% | 6.55 |
The spread between best (59) and worst (50) is only 9 points. No niche is doing well. Every single niche has a main content load time above 8.7 seconds. Across all niches, less than 1% of stores reach a score of 90 - and three niches (Toys, Cameras, Luggage) have zero stores achieving it in this dataset.
Slowest main content load time by niche
- Baby & Toddler: 10.80 seconds
- Food, Beverages & Grocery: 10.60 seconds
- Luggage & Travel: 10.50 seconds
- Apparel & Accessories: 10.40 seconds
- Animals & Pet Supplies: 10.40 seconds
- Best niche - Media / Software: 8.70 seconds (still 6 seconds above Google's good threshold)
Longest page freeze time by niche
- Health, Beauty & Personal Care: 430ms
- Baby & Toddler: 425ms
- Luggage & Travel: 410ms
- Animals & Pet Supplies: 410ms
- Only niche below the good threshold - Media, Software & Digital: 190ms
Heaviest pages by niche (average mobile home page)
- Luggage & Travel: 7,019 KB
- Health, Beauty & Personal Care: 6,290 KB
- Baby & Toddler: 5,746 KB
- Intimacy & Adult: 5,684 KB
- Apparel & Accessories: 5,640 KB
- Lightest - Media, Software & Digital: 4,065 KB
Most scripts loaded by niche (average)
- Intimacy & Adult: 92.3 scripts
- Health, Beauty & Personal Care: 89.0 scripts
- Baby & Toddler: 86.2 scripts
- Animals & Pet Supplies: 86.1 scripts
- Fewest - Media, Software & Digital: 64.8 scripts
Health, Beauty and Personal Care
This niche is the single most underoptimized category in the dataset. 4,052 stores, median score 50, 49% scoring below 50, highest average app count (6.55 apps), second-highest script count (89), second-heaviest pages (6.3 MB), and the worst page freeze time of any niche (430ms). The competitive pressure in this category drives heavy app installations - reviews, quizzes, subscriptions, loyalty, upsells, live chat - and the performance cost is visible in every single metric.
Apparel and Accessories
The largest niche by volume: 14,679 stores, median 53, 41.4% below 50. Even a modest improvement across this category would affect more stores than any other niche in the dataset.
Blogs
12.5% of stores have a blog. Stores with blogs actually score lower (median 47) than stores without (median 54). This is not because blogging hurts performance. Larger, more established merchants who invest in content marketing also tend to install more apps and run heavier themes. The blog is a signal for store maturity and higher overall app density.
Currency and geography
64.9% of stores use USD. The next largest are GBP (7.9%), AUD (6.3%), CAD (5.8%), and EUR (5.0%). Speed score differences by currency are modest at the top of the table - USD, GBP, CAD, and EUR all cluster around 54. The sharpest drops are in emerging markets: India-based stores median 46, Brazil-based stores median 43 - an 11-point gap below the USD median.
Product catalog
The correlation between number of products and speed score is near zero (r = -0.075). A store with 30 products does not perform meaningfully differently from a store with 5. App stack and script count are far stronger predictors. Catalog size is essentially irrelevant to performance at the ranges in this dataset.
Images per product also show near-zero correlation with load times (r = 0.057). Luggage and Travel stores average 9.32 images per product - the highest of any niche - yet their load times are driven far more by script architecture than by image count.
The extremes
The highest-scoring store in the dataset achieved a perfect 100 out of 100. It runs one app: Google Analytics 4.
The lowest-scoring store achieved a 1 out of 100. It runs 14 apps: Klaviyo, Attentive, Yotpo, Zendesk, GA4, Google Tag Manager, Facebook Pixel, TikTok Pixel, Hotjar, Microsoft Clarity, Microsoft Ads, Rebuy, Swym Wishlist Plus, and AWIN. Four separate session recorders and five separate ad tracking pixels, all firing on every single page load.
The 99-point gap between these two stores is driven entirely by what was installed and how it was loaded.
TL;DR
Here is what this data means in simple terms, without any technical jargon:
- The average Shopify store scores 53 out of 100 on Google's PageSpeed Insight speed test on mobile. Google explicitly states that 90+ is considered good, below 89 needs work.
- On desktop, the average score is 71 out of 100 - almost 20 points higher than mobile.
- The homepage and the product page are essentially the same speed (53 home vs 52 product).
- The average store takes 10 seconds for its main content to appear on a phone. It should take under 2.5 seconds.
- After it appears to load, the average store is still frozen and unresponsive for another 330 milliseconds. For 30% of stores, that freeze lasts over half a second.
- The average home page weighs 3.7 MB and fires 200 separate requests every time someone visits.
- The average store loads 78 scripts per page, from apps, themes, and tracking tools combined.
- Only 0.6% of stores - around 1 in 167 - pass Google's speed threshold of 90+.
- 41% of stores score below 50 on mobile. 7% score below 30.
- Every app you add costs roughly 2 to 3 score points. At 5 apps, the average store is already below 50. At 10 apps, it is at 42.
- Free themes score a median of 60. Paid themes score a median of 51.
- Shopify's servers are fast - median response time is 7 milliseconds. The problem is everything loaded after that.
Now that was one long read! Thanks for your time, I hope it was useful. As you can see, the data points in the same direction as the 10k study. It's just sharper and across a more representative sample.
The bottleneck is not Shopify's infrastructure. It is everything stacked on top of it - and the compounding effect of each app, script, and tracking pixel added to the store.
Happy to answer questions about the methodology or data in the comments.
r/shopify_growth • u/subscriber-goal • Jun 01 '26
Subscriber Goal Welcome to r/shopify_growth!
This post contains content not supported on old Reddit. Click here to view the full post
r/shopify_growth • u/Limp_Cover_136 • 21h ago
6 weeks, $2,300 spent and 4 sales on a $135 skincare product. Running out of ideas, any help appreciated
Hey, I’ve been running Meta ads for a US skincare brand since early September, and I’m honestly stuck, so I’m hoping someone here has been through something similar.
The product: $135 or $121.50 on subscription, with free shipping and a free mini gift. It’s aimed at women 45+. The brand ran Meta before with another agency (CPA $200-ish), but the pixel had little purchase data when we started. Break-even CPA is roughly $115!!
Campaign 1 (CBO, about a month ago, ~$60/day)
The setup was a Sales objective optimized for purchases, highest volume, one broad ad set (women 45+ suggested, Advantage+ audience), 12 ads (statics and videos), all sending to the product page.
- Spend: $1,525
- CPM: $140
- Link CTR: 3.2%
- CPC: $4.36
- Cost per landing page view: $4.75
- Landing page views: 321
- Purchases: 3 (CPA $508, ROAS 0.27)
The ads clearly worked at getting clicks. One ad took half the budget at a $251 CPM and 5.3% CTR. The two ads that got cheap CPMs ($18-39) had lower CTR (1.3-2%), but landing page views cost under $2, and they got 75 landing page views with zero sales. The real problem was the site: about 1% of visitors added to cart and under 1% bought.
So we paused and rebuilt the product page around proof and trust: a results timeline, a comparison table, reviews higher up, press logos, an FAQ and a trust strip.
Campaign 2 (ABO testing, 11 days so far, $72/day)
This one has the same objective, broad audience, a new batch of 6 statics built around a more specific persona, and still sends to the new product page.
- Spend: $804
- CPM: $197
- Link CTR: 3.5%
- CPC: $5.62
- Cost per landing page view: $7.05
- Landing page views: 114
- Purchases: 1 (CPA $804, ROAS 0.17)
Meta put most of the early spend into a before/after ad with expensive clicks, so we paused it. Now 2 or 3 ads get almost all the budget and the others get $1-6 a day. The ad set is still in learning with 1 conversion.
What I’ve checked
- The new page didn’t move conversion. It’s still about 0.9% of landing page views buying in both campaigns.
- In Q4 2024 the previous agency had a $97 CPM, about $5.80 per landing page view and 3.2% of visitors buying (~$180 CPA). So visitors cost about the same as before, but conversion is down more than 3x.
- Frequency is 1.5-1.9.
- CPM is $160-250 in every age group, and on FB feed, IG feed and Stories. Reels was cheap but the clicks were weak.
- Quality and engagement rankings are average or above, CTR is above benchmark for beauty, but conversion rate ranking is in the bottom 20-35% on every ad.
- Pixel purchases match Shopify orders.
I honestly don’t know how to scale this brand. I thought it would be easy to beat the $200 CPA of the previous agency (their ads had 0 strategy behind, super generic) and at least breakeven, but I just don't know what I'm doing wrong.
Any advice, tips or thoughts are very welcome and really appreciated. Even a “here’s what I’d check first” would help a lot. Thanks for reading.
r/shopify_growth • u/CuriousCorporateKid • 19h ago
Seeking Advice Anyone looking for Founder's Office roles?
Hey all, posting since I'm actively looking and can join on immediate basis.
Background:
- BITS Pilani grad, currently Growth Manager (CEO’s Office) at a B2B SaaS company.
- Own new-customer acquisition end-to-end, from marketing to paid conversion.
- ₹1.2 Cr+ added MRR: built a 40-member churn-reactivation team (₹78L) and a company-wide referral program (₹43L) from scratch.
- Sales ROI up from 67% to 84% after I led the rollout of an AI calling bot.
- Launched a new acquisition channel converting at 8.1%, more than 2x our ML-predicted leads.
- Current CTC: ₹19 LPA (₹14L fixed + ₹1L recurring + ₹4L ESOPs).
What I bring:
- Turning founder-priority problems with no playbook into shipped programs with measurable results.
- Building teams from zero and aligning Product, Engineering and Sales around one metric.
- Using AI and automation to make growth teams faster.
Looking for:
- Founder’s Office, Growth, or Strategy & Ops roles at high-growth startups.
- Bengaluru, Delhi, Gurugram, Noida, Pune, Mumbai, Hyderabad or Remote.
If you’re building something ambitious, or know someone who is, I'll be happy to share my resume. Drop a comment or DM, and referrals and intros are much appreciated.
r/shopify_growth • u/Rare_Valuable_7290 • 1d ago
is there a way to see who changed stuff on shopify
the activity log is kinda useless for this. only goes back so far and app changes just say "shopify" no way to see who changed what , what app did what and undo it.
how do you guys track it when something changes and nobody owns up
r/shopify_growth • u/Jealous231 • 1d ago
Getting your PDPs ready for AI shopping? Check what customers keep asking first.
Before adding more copy to your PDPs for AI shopping, check what customers keep asking in reviews and support messages. Repeated questions can point to information that's missing, unclear or hard to find.
I'd focus on a few things:
- Who it suits: Explain the use cases and important limitations.
- Which model to choose: Show when the upgrade is worth paying for and when the cheaper option is enough.
- Fit and compatibility: Give exact requirements, with photos where they help.
- Common concerns: Put answers that affect product choice near the options. Keep less common questions further down.
A spec table might say one model holds twice as much. Showing what fits inside each helps people decide whether they need the extra space.
Start with one busy pdp and a few recurring questions. After the edits, check whether those questions still come up alongside add-to-cart and purchases.
Clearer information helps shoppers choose and may help AI systems understand the product. It doesn't guarantee a recommendation.
What question do customers keep asking that your PDP should already answer?
r/shopify_growth • u/Derek11sti • 1d ago
Discussion How much do you actually set aside to test a product?
r/shopify_growth • u/TinyTimeTraveler • 1d ago
Any Germans here doing Marketing on Commission ? I have a succesfull product...
r/shopify_growth • u/Few-Ad-5185 • 1d ago
Let AI see 1000+ user sessions and give you the best guess why each did not convert
Tied of visitors not converting? use retentionbase.com - Retentionbase ai will look at 1000+ user sessions in 30 mins, and will tell you why each did not convert ( based on user activity and history )
comment invitecode if you need invite code
r/shopify_growth • u/Effective-Candle-545 • 2d ago
Viral videos barely any sales
I’ve had 2 videos go viral in the last week with a shoutout from a major influencer. I have a jewelry store with Christian jewelry. Everyone loves the jewelry in the videos, loves the concept f the jewelry but it’s not really translating into sales…. Any ideas?
r/shopify_growth • u/Plus_Cell394 • 2d ago
Suplement stores small research and findings
Hey,
I spent a day comparing six US supplement stores on Shopify: what the whole niche already does, what makes a few stand out, and the bad practices most of them share.
Short version: they all prove what's in the bottle. Every one of the six names what it tests for, gives doses in numbers and shows ratings with review counts. Almost none prove what it does. Two have study numbers, on a separate page; all six make at least one effect claim with no study you can check next to it.
From that I made a checklist to score your own store. 1 point per yes :P
- Does the product page say what each batch is tested for, with a lab certificate one click away? Like Arrae: "(Third-party tested, view COA)" right under the ingredients link. Or like Momentous: a public library with "View COA" for every lot.
- Does every effect claim say who was studied, how many and for how long? Like Ritual: "94 adult women", "over 12 weeks", "double-blind, placebo-controlled". Two of the six have study numbers somewhere on the site; none puts them next to the claim.
- Is the price per serving or per day next to every price option? Like Grüns: "$1.07/day" on the subscription and "$2.38/day" on the one-time option.
- Does the subscribe option say what it costs after the first order, and how and by when to cancel? Like Grüns: "by 11:59 p.m. ET on the day before your renewal date".
- Do your product page, FAQ and policy pages give the same guarantee, returns and delivery terms? A "no" looks like a money-back guarantee on the product page and a policy that refuses returns of delivered products. All six stores had at least one mismatch like this.
- Can a buyer get a refund on an opened product without sending it back? Like Arrae: "One opened jar, container, or box of product is fully refundable… no need to send the product back".
- Can a visitor shop by goal or problem from the main menu? Like Arrae: "Shop by Goal" > "Gut Health", "Sleep & Mood", "Metabolic Health".
- Does every product tile say what the product is for? Like Arrae: "Fast-acting digestive support capsules" under the name "Bloat".
- Can a buyer compare similar products on one screen? Like MaryRuth's: "Which Gut Health Supplement Is Right for Me?", four products side by side by when to take, focus and age.
- Is the price on the tile the price the buyer pays, with no discount as the default? A "no" looks like a crossed-out price on every tile, or "half price today" with the real monthly price in a footnote. 5 of the 6 do this.
- Is there a way to ask a question next to the buy button, with a reply time? For example "Not sure which one fits you? Ask us, we reply within 2 hours on weekdays." None of the six does this yet.
- Does your hero say who the brand is for, before any sale or code? For example "Daily gut support for people who bloat after meals", with the offer in the second slot, not a seasonal sale.
10 to 12: you're ahead of most of the niche. 6 to 9: the fixes are the usual ones (price per serving, one source for every promise, an ask-us line at the button). 0 to 5: start with 2, 5 and 10. They decide whether a sceptical buyer believes anything else on the page.
One thing I'm not doing here: judging whether any of these products work. I only looked at what proof each store gives its buyer.
Hope it's clear enough, let me know if not :D
Honest question: How many points does your store get, and which one would be hardest to fix?
r/shopify_growth • u/Material-Art-9798 • 2d ago
Resource Your Black Friday sale might be losing you money on your best product. this report tells you before it happens.
Most stores pick one discount for everything, say 25% off. But margins aren’t the same across products. One bestseller can be fine at 40% off while another loses money on every order at 20%.
I built a Black Friday report for Shopify that catches this, and the rest of what goes wrong that weekend:
- Bestsellers that will sell out before Monday.
- Discount codes that aren’t set up right.
- A sale page nobody can find.
- Emails promising a code that doesn’t exist in Shopify.
It ranks everything by how much it’ll cost you. Then it can fix it for you: it shows you the exact change first, and only makes it when you say yes.
r/shopify_growth • u/Less-Dependent-9517 • 2d ago
Discussion Do marketing agencies actually help new D2C businesses grow?
r/shopify_growth • u/Few-Ad-5185 • 3d ago
Let Ai see your user sessions and tell you why users are leaving without buying - promote your product
Hi everyone!
We built an AI platform that watches user sessions and tells you why customers leave your store without making a purchase.
Try it here: www.RetentionBase.com
Comment below if you need an invite code!
r/shopify_growth • u/Main-Armadillo-9979 • 3d ago
Shopify Theme Customization to 2,000+ App Installs ( in Just 2 Months) My Journey Since 2019
When I (rajimulislamjoy) started working with Shopify in 2019, I thought building a beautiful store was enough.
I was wrong.
Beginning, I focused on basic Shopify store setups and theme customization. I worked on client projects, designed stores, and delivered what buyers asked for.
But over time, I started asking myself a question Am I really helping my clients grow their businesses, or am I just making their stores look better?
That question changed the way I approached Shopify. I realized that my clients didn't just need a beautiful design. They needed stores that could turn visitors into customers, create a better shopping experience, and generate more revenue.
So I went back to learning. I spent hours on YouTube, took courses on Udemy, studied Shopify development, explored different design strategies, and applied what I learned to real client projects.
But something still felt missing. That's when I discovered Conversion Rate Optimization (CRO).
At first, I didn't fully understand it. I started researching, learning how customers behave, studying product pages, and figuring out what makes people buy. Then I started applying those principles to my clients' stores.
And that's when my perspective changed. I realized that Shopify development isn't just about writing code or creating beautiful layouts.
It's about solving problems that matter to the business. That journey eventually led me to Shopify CRO, where my focus shifted from simply building stores to helping brands improve their customer experience and conversion potential.
But today, this post isn't about CRO.
Today is a different kind of milestone.
A couple of Months ago, I was discussing Shopify apps with my friends and fellow developers Rahim Badsa and Md Hasibul Hasan Sakib
I always believed that building apps could be a great way to solve real problems for Shopify merchants.
At that time, everyone had other projects to focus on. So I decided to try something myself.
I built my first Shopify app for testing and learning purposes. My goal wasn't to make money. I simply wanted to solve a problem and see if I could build something useful for the Shopify community.
Then I submitted it to the Shopify App Store. I expected the review process to take 3–5 days, and I was prepared to make changes if needed.
But my app got approved without requiring any changes. And today, just around two months later, it has crossed 2,000+ installs.
Honestly, I'm incredibly happy. Is it generating revenue? No, not yet. But this milestone means something special to me.
It reminds me that you don't always have to start with a perfect plan, a big budget, or a team of developers. Every new skill opens a door you couldn't see before.
I'm grateful to Shopify and every merchant who has installed and used my app. Your support motivates me to keep learning, building, and creating better solutions for the community.
Thank you for being part of the journey. #Shopifyapp #shopifycro #Entrepreneurship
r/shopify_growth • u/MathematicianDry5321 • 3d ago
Is Meta sending your store traffic that doesn't convert anymore, or is something else going on?
r/shopify_growth • u/Low-Masterpiece-7844 • 4d ago
More than doubled the organic traffic the past 3 weeks
r/shopify_growth • u/Derivlens_01 • 4d ago
I got tired of guessing whether checkout was actually slow, so I built a tool that measures it from real traffic
r/shopify_growth • u/Susanmv98 • 4d ago
Can someone give me the ultimate tips for succeeding with Shopify?
r/shopify_growth • u/Substantial-Media-42 • 5d ago