Shopify SEO & Growth · · 7 min
Why Is My Shopify Store Slow? Common Causes and Fixes
The common reasons a Shopify store is slow, how to measure it properly, and practical fixes for apps, images, theme code and scripts.
If your Shopify store is slow, the cause is usually not Shopify’s servers. In most stores, slowness comes from too many apps loading scripts, oversized images, heavy theme features such as sliders and videos, and third-party tracking code. The good news is that most of these can be fixed without rebuilding the store.
Quick Summary: Executive Takeaways
- Shopify’s hosting and CDN are rarely the bottleneck; what you add on top usually is.
- Apps are the most common cause: each one can add JavaScript to every page.
- Images are often far bigger than they need to be, especially on mobile.
- Measure with real-user data (Core Web Vitals in Search Console) as well as lab tools.
- Fix the biggest issues first: unused apps, hero images, sliders and tracking scripts.
- Speed is a trade-off: some features are worth their cost; decide deliberately.
Introduction: Why Shopify Store Speed Matters
Page speed is how quickly a page loads and becomes usable for a visitor. A slow store frustrates shoppers, especially on mobile data, and Google uses Core Web Vitals as part of its page experience signals (Google Search Central).
This guide is written by the Lazapi team, a Shopify development agency with locations in Kozhikode (Kerala), Bangalore and the UAE. When a client tells us their Shopify store is slow, the first thing we do is open the theme code and count the scripts. More often than not, there’s leftover code from apps that were uninstalled months ago.
How to Measure Shopify Speed Properly
You should measure speed with both lab tests and real-user data, because each tells you something different. A single PageSpeed score is a starting point, not the full picture.
Core Web Vitals are Google’s set of metrics for real-world user experience: loading, interactivity and visual stability.
| Metric | What it measures | “Good” threshold (per web.dev) |
|---|---|---|
| LCP (Largest Contentful Paint) | When the main content appears | 2.5 seconds or less |
| INP (Interaction to Next Paint) | How quickly the page responds to taps and clicks | 200 milliseconds or less |
| CLS (Cumulative Layout Shift) | How much the layout jumps around | 0.1 or less |
Thresholds are from web.dev’s Core Web Vitals guide.
| Tool | Type of data | Best for |
|---|---|---|
| PageSpeed Insights | Lab + field (if available) | Quick checks of key templates |
| Search Console Core Web Vitals report | Field data | Site-wide trends |
| Chrome DevTools (Performance, Network) | Lab | Finding the exact slow script |
| Shopify admin speed/web performance report | Field data | Store-level overview |
Edge case: small stores may not have enough traffic for field data. In that case, rely on lab tests of your main templates (home, collection, product, cart) on a mobile profile.
Common Causes of a Slow Shopify Store
These are the issues we find most often, roughly in order of how frequently they appear.
| Cause | Why it slows the store | Typical fix |
|---|---|---|
| Too many apps | Each may load JavaScript and CSS on every page | Remove unused apps; keep essentials |
| Leftover app code | Uninstalled apps can leave snippets in the theme | Search theme files and remove leftovers |
| Large images | Phones download huge files | Use Shopify image filters and correct sizes |
| Sliders and autoplay video | Heavy, often delay main content | Use one static hero image |
| Third-party scripts | Chat, heatmaps, multiple pixels | Audit and defer; remove duplicates |
| Heavy or outdated theme | Old code, many features loaded everywhere | Update or switch to a modern theme |
| Web fonts | Several font files block text rendering | Fewer weights; use font-display: swap |
Apps and leftover code
App bloat is when installed apps add more code to your store than the features are worth. Modern Shopify “app embeds” can be switched off in the theme editor, but older apps often inserted snippets directly into theme files. In practice, finding leftovers looks like this: open the code editor and search theme.liquid for app snippets.
{%- comment -%} Example of leftover code from an uninstalled app {%- endcomment -%}
{% render 'old-reviews-app-snippet' %}
<script src="https://cdn.example-app.com/widget.js"></script>
If the app is gone, the snippet and script tag can usually be removed. Always duplicate the theme first and test on the copy.
Images
Use Shopify’s image URL filters so the browser downloads a size that matches the screen:
{{ product.featured_image | image_url: width: 800 | image_tag:
widths: '400, 600, 800, 1200',
sizes: '(min-width: 990px) 50vw, 100vw',
loading: 'lazy' }}
Don’t lazy-load the main hero or first product image; it’s usually the LCP element and should load immediately.
Third-party scripts
Marketing pixels, chat widgets and review widgets all add up. Check whether two tools are doing the same job, and load non-essential widgets after the page is interactive where the tool allows it.
Theme and fonts
A theme is the code that controls your store’s layout and design, and older themes can load features on every page even when they’re not used. Shopify’s Online Store 2.0 themes, such as Dawn, are generally built with performance in mind. If your theme hasn’t been updated in years, compare it against a current version on a duplicate before investing heavily in fixing old code.
Fonts are a smaller but common issue. Each font weight is a separate file. Two weights (regular and bold) are usually enough; many stores load five or six. Shopify’s font picker serves fonts from its own CDN, which is usually faster than loading them from an external service.
Speed Trade-offs: What’s Worth Keeping
Not every slow feature should be removed. Speed is a balance between what helps customers buy and what just adds weight. In practice, we ask one question for each feature: does it help a shopper decide or buy?
| Feature | Usually worth it? | How to keep it lighter |
|---|---|---|
| Product reviews | Yes | Load the widget lower on the page |
| Live chat | Sometimes | Load after the page is interactive |
| Hero video | Rarely | Use a poster image; play on tap |
| Multiple tracking pixels | Only those you use | Remove old campaigns’ pixels |
| Mega menu with images | Sometimes | Lazy-load menu images |
Step-by-Step: How to Speed Up a Slow Shopify Store
- Duplicate your live theme so you can test safely.
- Measure key templates on mobile: home, collection, product and cart.
- List every installed app and what it does; remove the ones you don’t need.
- Search theme files for leftover app code and remove it on the duplicate.
- Replace sliders and autoplay video above the fold with a single optimised image.
- Fix image sizes using
image_urlandimage_tagwith responsive widths. - Audit tracking scripts and remove duplicates.
- Reduce font files to the weights you really use.
- Re-test the same templates and compare.
- Publish the faster theme and monitor Core Web Vitals in Search Console over the next weeks.
Common Pitfalls and Mistakes to Avoid
- Installing a “speed booster” app that adds more code than it saves.
- Chasing a perfect 100 score instead of real improvements for mobile users.
- Lazy-loading the hero image, which can make LCP worse.
- Editing the live theme without a backup.
- Removing scripts without checking what they power, such as conversion tracking.
- Testing only on desktop, when most shoppers typically browse on phones.
FAQ
Why is my Shopify store slow even though Shopify hosts it?
Hosting is rarely the issue. Most slowness comes from apps, large images, heavy theme features and third-party scripts that load on top of Shopify’s platform.
Do Shopify apps slow down my store?
They can. Many apps add JavaScript or CSS to every page. Remove apps you don’t use, and check that uninstalled apps didn’t leave code behind in your theme.
What is a good PageSpeed score for Shopify?
There’s no single target. Focus on passing Core Web Vitals (LCP, INP and CLS) for real users, and on improving your key templates on mobile, rather than chasing a perfect score.
Will a faster store improve my sales?
Faster pages generally create a better shopping experience, and many retailers report better engagement after speed work. Results vary by store, so measure conversions before and after changes.
Conclusion and Next Steps
A slow Shopify store is usually fixable: measure properly, cut unused apps and leftover code, size images correctly and question every third-party script.
Next steps:
- Run steps 1–3 above today; they often reveal the biggest wins.
- Improve rankings alongside speed with our Shopify SEO guide.
- Want it fixed for you? See our Shopify speed optimisation service or request a free store audit.