Shopify Page10 min readMarch 18, 2026

Shopify Page Speed: The Complete Guide to Faster Load Times

Every second your Shopify store takes to load costs you conversions. Here's everything you need to know about measuring, diagnosing, and fixing slow page speed.

Every second your Shopify store takes to load costs you conversions. That's not a metaphor — it's documented, measurable, and consistent across every e-commerce study done in the last decade.

Google found that as page load time increases from 1 second to 3 seconds, bounce rate increases by 32%. At 5 seconds, it's 90%. A 1-second delay in page load time reduces conversions by up to 7%. For a store doing $20,000/month, that's $1,400 in lost revenue — from a single extra second.

The frustrating part: most Shopify store owners have no idea how fast or slow their store actually is, because they've been browsing it on a fast connection with everything cached. Customers — especially mobile customers on 4G in areas with patchy signal — experience a completely different store.

This guide covers how to check your score, what it means, and the 7 most common causes of slow Shopify stores — with specific fixes for each.

How to Check Your Shopify Page Speed Score

The best tool is Google's PageSpeed Insights at pagespeed.web.dev. Enter your store URL and run the test. Always check the mobile score, not just desktop — mobile is where your traffic is.

PageSpeed Insights measures four Core Web Vitals that Google uses as ranking signals:

  • LCP (Largest Contentful Paint): How long it takes for the largest visible element to load. Should be under 2.5 seconds.
  • FID (First Input Delay): How long before the page responds to the first user interaction. Should be under 100ms.
  • CLS (Cumulative Layout Shift): How much the page layout shifts as it loads. Should be under 0.1.
  • INP (Interaction to Next Paint): Overall responsiveness of the page. Should be under 200ms.

Beyond Core Web Vitals, look at the “Opportunities” section in PageSpeed Insights. This is your actionable list — it shows which specific resources are slowing your page and estimates how much time each fix would save.

What the Scores Mean

  • 90-100: Excellent. Very few Shopify stores achieve this without significant optimization.
  • 50-89: Needs improvement. You're losing some conversions but not catastrophically.
  • 0-49: Poor. You're losing a significant portion of mobile visitors before they even see your products.

The average Shopify store scores around 35-45 on mobile. The top 10% of Shopify stores score 60 or higher. If you're below 30, you almost certainly have one of the first three issues listed below.

The 7 Most Common Causes of Slow Shopify Stores

1. Too Many Shopify Apps

This is the number one cause of slow Shopify stores by a significant margin. Every app you install — even if you're not actively using it — adds JavaScript, CSS, and sometimes tracking pixels to every page load. These files have to be downloaded by every visitor's browser before the page can display correctly.

A common pattern: a store opens, installs 20 apps over 18 months to test different features, removes some but not all, and ends up with 8-10 active apps and 5-7 inactive ones all firing scripts on every page. The founder has no idea this is happening because they never look at the source code.

The fix: Go to your Shopify admin → Apps → and audit every installed app. For each one, ask: Is this actively driving revenue or saving time? If the answer is no, uninstall it. After uninstalling, check your theme code in Online Store → Themes → Edit Code and search for any leftover script tags or app blocks from the removed apps. Some apps leave code behind after uninstallation.

Also go to Online Store → Themes → Customize → App Embeds and turn off any apps you're no longer using.

2. Unoptimized Images

Product images are typically the largest files on any Shopify page. A single unoptimized JPEG product photo can be 3-5 MB. A product page with 8 photos can be loading 20-30 MB of images before anything else even starts.

The modern best practice is WebP format (30-50% smaller than JPEG at the same quality), proper sizing (serving images at the actual size they display, not 5x larger), and lazy loading (only loading images when they're about to scroll into view).

The fix: Shopify automatically converts product images to WebP for browsers that support it — but only if you upload the images as JPEG or PNG in the first place. If your images are already heavily compressed or have unusual formats, re-upload them as high-quality JPEG (80-85% quality is sufficient). Enable lazy loading in your theme settings if available. If your theme doesn't support lazy loading natively, the loading="lazy" attribute can be added in the theme code.

3. Render-Blocking JavaScript

When a browser loads a web page, it processes HTML from top to bottom. If it encounters a script tag before it finishes rendering the visible content, it stops everything and waits for that script to download and execute. This is called render-blocking, and it makes pages feel slow even when they have fast loading times overall.

In Shopify, render-blocking JavaScript usually comes from apps that insert their scripts in the <head> of the document instead of the end of the <body>, or that don't use async or defer attributes.

The fix: In PageSpeed Insights, click “Eliminate render-blocking resources” to see the specific files causing the issue. If they're from apps, check whether the app has a “performance mode” or “defer loading” option in its settings. For theme scripts, add defer attribute to non-critical script tags in your theme code.

4. Heavy or Poorly Built Theme

Not all Shopify themes are built equal. Some free themes are extremely lightweight and fast. Some premium themes are bloated with features you'll never use — animation libraries, multiple font families, heavy JavaScript for interactive elements — all of which adds load time.

You can check your theme's footprint in PageSpeed Insights under “Unused CSS” and “Unused JavaScript.” If you see large files that aren't related to apps, they're likely from your theme.

The fix: If you're on a heavily customized theme and seeing large amounts of unused CSS/JS from the theme itself, consider whether a lighter theme might be a better foundation. If you're committed to your current theme, disable any theme features you're not using — animations, video backgrounds, parallax effects — which often load JavaScript regardless of whether you've activated those sections.

5. Google Fonts Loading Incorrectly

Google Fonts are used on the majority of Shopify themes. They're loaded by default with a standard <link> tag in the <head>, which is a synchronous request that blocks rendering. The correct implementation uses font-display: swap so text renders immediately in a fallback font while the custom font loads in the background.

The fix: In your theme code, find your Google Fonts import (usually in the <head> section of theme.liquid or layout/theme.liquid). If it uses a standard URL like fonts.googleapis.com/css2?family=..., append &display=swap to the URL. In CSS, add font-display: swap to your @font-face declarations.

6. No Browser Caching for Static Assets

Browser caching lets returning visitors load your store faster by storing static files (CSS, JavaScript, images) in their local cache. On a first visit, they download everything. On subsequent visits, the browser checks if the cached version is still valid before downloading again.

Shopify handles caching for assets hosted on its CDN automatically, but some third-party scripts served from external domains may not have proper cache headers set. This means every page load for every visitor downloads those files fresh.

The fix: Check PageSpeed Insights for “Serve static assets with an efficient cache policy.” If the uncached files are from third-party apps or services, contact the app developer — this is something they control, not you.

7. Video Embeds and Third-Party Widgets

YouTube embeds, Vimeo videos, live chat widgets, pop-up builders, and review display widgets often load significant JavaScript from external servers. Even if the widget itself is small, it can create blocking requests to third-party servers that are slow or unavailable.

The fix: For YouTube videos, use a lazy-loading technique: display a thumbnail image and load the actual iframe only when the user clicks play. Several Shopify apps handle this. For live chat widgets, consider whether they're actually converting visitors or just adding weight — check your chat app analytics for actual conversations started vs. visitors impacted.

Shopify Speed Score vs. PageSpeed Insights

Shopify has its own speed score in the admin under Online Store → Themes. This score is based on Google Lighthouse data but uses a rolling average of real user performance data, not a single synthetic test. It's a useful trend indicator but less actionable than PageSpeed Insights because it doesn't show you specific bottlenecks.

Use Shopify's speed score to track your progress over time. Use PageSpeed Insights to find and fix specific issues. Both tools agree on the fundamentals: fewer scripts, smaller images, and faster server response times are the path to improvement.

How Much Will Fixing Speed Improve Conversions?

The answer depends on how slow you are now. If you're scoring below 30 on mobile, improving to 60+ could have a meaningful impact on conversion rate — potentially 10-20% improvement. If you're already at 60, the gains from further optimization are smaller but still real.

The most important thing is that you're not actively losing visitors before they see your products. A visitor who bounces because your page took 8 seconds to load on mobile is a lost sale that costs you ad spend with zero chance of recovery.

StoreAudit

StoreAudit scores your page speed and identifies the specific bottlenecks.

You get a complete page speed analysis as part of your 6-category audit — including script count, render-blocking resources, lazy loading status, and HTML payload size. Every issue comes with a difficulty rating, time estimate, and step-by-step fix instructions. $50 one-time.

Audit My Store — $50

One-time payment. Results in under 2 minutes. Free 30-day re-audit included.

Quick Wins You Can Do Today

If you want to improve your score without a full audit, start here:

  1. Uninstall unused apps. Go through your app list and remove everything you haven't used in 60 days. This is the single highest-impact action for most stores.
  2. Check App Embeds. In Online Store → Themes → Customize → App Embeds, disable anything you don't need.
  3. Compress your largest images. Use squoosh.app (free) to compress and convert product images to WebP before uploading.
  4. Run PageSpeed Insights and fix the top “Opportunity.” Just one specific fix, based on the actual data about your store.

Page speed is a compounding problem — each slow resource adds to the next. It's also a compounding opportunity. Each fix you make reduces load time for every future visitor, permanently. Start small, measure the impact with PageSpeed Insights, and keep going.

SA

Written by the StoreAudit team

Based on data from 1,200+ Shopify store audits. We scan stores across speed, SEO, images, trust signals, mobile UX, and reviews — so you know exactly what to fix.

Audit your store →