How to Speed Up Your Shopify Store — A Developer’s Optimisation Guide

apoorv79@gmail.com apoorv79@gmail.com · · 7 min read

Page speed is no longer just a UX concern. In 2026 it directly affects your Google rankings, your Google Ads Quality Score, and your conversion rate — all at the same time.

I’ve worked on Shopify stores across multiple niches and the pattern is consistent: store owners install a beautiful theme, add 15 apps, upload uncompressed product images, and wonder why their store scores 38 on Google PageSpeed Insights.

This guide covers every meaningful speed optimisation you can make on a Shopify store — from the quick wins you can do in the next hour to the deeper technical fixes that require getting into the code.

Why Shopify Speed Matters More Than Ever

Before we get into the fixes, let’s be clear about what’s at stake:

  • SEO rankings — Core Web Vitals are a confirmed Google ranking signal. A slow store is a ranking liability.
  • Conversion rate — Stores loading under 2 seconds convert significantly better than those taking 5+ seconds. Every second costs you revenue.
  • Google Ads — Your landing page experience score affects your Quality Score, which affects your cost per click. A slow store literally makes your ads more expensive.
  • Shopify’s own performance dashboard — Since 2025, Shopify now shows real field data from Chrome User Experience Report (CrUX), not just simulated scores. This means your actual visitors’ experience is being measured — not a lab test.

Step 1 — Audit Your Store First

Before fixing anything, know exactly where you stand.

Tools to use:

  • Google PageSpeed Insights (pagespeed.web.dev) — run your homepage, a collection page, and your best-selling product page separately. They’ll all have different scores.
  • Shopify’s built-in speed dashboard — Online Store → Themes → View report. This shows your real CrUX field data and breaks down the top factors hurting your score.
  • GTmetrix — gives you a waterfall breakdown of every asset loading on your page, useful for identifying specific bottlenecks.

What to look for:

Focus on your Core Web Vitals scores:

  • LCP (Largest Contentful Paint) — how fast your main content loads. Target: under 2.5 seconds.
  • INP (Interaction to Next Paint) — how fast your page responds to user interactions. Replaced FID in 2024. Target: under 200ms.
  • CLS (Cumulative Layout Shift) — how much your page layout shifts as it loads. Target: under 0.1.

These three metrics are your actual SEO performance indicators — not the overall PageSpeed score.

Step 2 — Fix Your Images (Biggest Win)

Images are the single largest contributor to slow Shopify stores. Most store owners upload high-resolution PNGs straight from their camera or designer without any compression.

What to do:

Format — Use WebP wherever possible. Shopify’s CDN automatically serves WebP to browsers that support it if you upload in the right format. If you’re uploading JPEGs, Shopify handles some conversion but not optimally.

Compression — Before uploading, compress images using:

  • Squoosh (free, browser-based) — best quality control
  • TinyPNG — fast and simple
  • Shortpixel — batch processing if you have hundreds of images

Size — Resize images to the actual dimensions they’ll display at. A product image displayed at 800×800px doesn’t need to be uploaded at 3000×3000px. This alone can reduce file sizes by 70–80%.

Lazy loading — Shopify’s Dawn theme and most modern themes support native lazy loading by default. If your theme doesn’t, it’s worth addressing — images below the fold shouldn’t load until the user scrolls to them.

Step 3 — Audit and Remove Unused Apps

This is where most Shopify stores bleed speed without realising it.

Every app you install has the potential to inject JavaScript and CSS into your storefront — even apps you’ve stopped using. An app that adds a pop-up, a review widget, or a currency converter is loading scripts on every page load, every time a visitor lands on your store.

The problem: When you uninstall an app in Shopify, it doesn’t always clean up after itself. Leftover script tags and asset files from deleted apps continue loading.

What to do:

Go through every installed app and ask honestly:

  • Am I actively using this?
  • Is this generating measurable revenue or serving a critical function?
  • Could a native Shopify feature replace it?

For apps you’ve deleted but whose code remains — you’ll need to check your theme code:

  1. Online Store → Themes → Edit Code
  2. Check theme.liquid for leftover <script> tags from old apps
  3. Check the Assets folder for leftover .js and .css files
  4. Remove anything that’s no longer needed

If you’re not comfortable editing theme code, this is worth getting a developer to do. Removing 3–4 legacy app scripts can meaningfully improve your INP and LCP scores.

Step 4 — Choose a Fast Theme

Your theme is the foundation of your store’s speed. A bloated theme with excessive animations, heavy JavaScript frameworks, and unoptimised assets will cap your performance regardless of everything else you do.

Fast themes to consider:

  • Dawn — Shopify’s free default theme. Genuinely fast, well-optimised, built on web components. Often faster than many paid themes.
  • Sense, Craft, Refresh — other free Shopify themes that are performance-optimised
  • Prestige, Impulse — paid themes that are known for clean code and good speed scores

What to avoid:

Themes heavy on:

  • Full-screen video backgrounds on homepage
  • Parallax scrolling effects
  • Auto-playing carousels with multiple large images
  • Third-party font libraries loading 10+ font variants

These are all speed killers that look good in previews and hurt you in production.

Step 5 — Optimise Your JavaScript

JavaScript is the primary cause of poor INP scores — the Core Web Vital that measures how responsive your page feels to user interactions.

Key fixes:

Defer non-critical scripts — Scripts that don’t need to run immediately on page load should be deferred. In your theme.liquid, look for <script src="..."> tags and add defer or async where appropriate.

Remove render-blocking scripts — Any script in the <head> without async or defer blocks the page from rendering until it fully loads. This directly hurts LCP.

Reduce third-party scripts — Every third-party tool (live chat, heatmaps, pop-up tools, affiliate tracking pixels) adds JavaScript weight. Each one should earn its place on your store based on actual ROI.

Step 6 — Optimise Your Liquid Code

Liquid is Shopify’s templating language and poorly written Liquid code can cause server response time issues that hurt your TTFB (Time to First Byte).

Common Liquid performance issues:

  • N+1 loops — Loops that make additional database calls inside each iteration. For example, looping through products and fetching metafields inside the loop.
  • Unused sections — Sections loaded in theme.liquid that aren’t displayed on most pages still add processing overhead.
  • Excessive forloop logic — Complex filtering and sorting logic inside Liquid loops should be simplified or moved to JavaScript where possible.

If you’re not a developer, this is the area where professional help makes the most difference. A Liquid code audit on a mid-sized store typically yields significant TTFB improvements.

Step 7 — Leverage Shopify’s CDN Properly

Shopify hosts all store assets (images, CSS, JS) on its global CDN — this is one of the genuine advantages of the platform. But you need to make sure you’re using it correctly.

What this means practically:

  • Always upload images through the Shopify admin or theme editor — don’t hotlink images from external servers
  • Host fonts through Shopify’s asset pipeline rather than loading them from Google Fonts (which adds an external DNS lookup)
  • Use Shopify’s built-in video hosting for product videos rather than embedding from YouTube or Vimeo where possible

Step 8 — Fix CLS Issues

Cumulative Layout Shift happens when elements on your page move around as the page loads — a common experience when fonts load late, images without dimensions shift the layout, or third-party widgets inject themselves into the page.

Quick fixes:

  • Always specify width and height attributes on <img> tags in your theme — this reserves space before the image loads
  • Use font-display: swap in your CSS for custom fonts to prevent invisible text during font loading
  • Be careful with pop-up apps — if they inject content into the page after load, they can cause significant CLS

Step 9 — Monitor Continuously

Speed optimisation isn’t a one-time project. Every new app you install, every theme update, every new section you add to your homepage can affect your scores.

Build this into your routine:

  • Check Shopify’s speed dashboard monthly
  • Run PageSpeed Insights on your homepage and top product pages quarterly
  • Every time you install a new app, run a before/after speed test

How Fast Should Your Store Be?

As a benchmark from real store audits:

PageSpeed ScoreWhat It Means
90–100Excellent — you’re ahead of most stores
70–89Good — minor improvements available
50–69Needs work — noticeable impact on conversions
Below 50Urgent — significant revenue being lost

Most out-of-the-box Shopify stores with a few apps installed score between 45–65. Getting above 75 on mobile is a realistic and worthwhile target for most stores.

Final Thoughts

Speed optimisation on Shopify follows the 80/20 rule — image compression, app cleanup, and choosing a fast theme will get you 80% of the way there. The remaining 20% (Liquid optimisation, JavaScript deferral, CLS fixes) requires more technical work but makes a real difference in competitive niches.

If you want a professional speed audit and optimisation for your Shopify store, feel free to connect— we’ve improved load times and Core Web Vitals scores across stores in multiple niches. Get in touch to discuss your store.

Leave a Reply