All posts
Shopify Store Development

Shopify Theme Performance: 10 Mistakes That Slow Down Your Store

Most Shopify stores are guilty of four or five of these — and the big three (app bloat, heavy images, render-blocking scripts) cause the majority of the damage. Here are the 10 theme-performance mistakes we check for on every audit, with the real numbers behind each, and the honest fix: it's almost always subtraction, not another app.

AD Digitech Engineering · Shopify Store TeamAugust 3, 20266 min read
Infographic titled 'Shopify Theme Performance: 10 Mistakes That Slow Down Your Store' — a mock store dashboard showing a Speed Score gauge at 86/100 and Core Web Vitals all passing (LCP 1.8s, INP 112ms, CLS 0.06), alongside a storefront with three product cards — with callouts for four of the mistakes (App Bloat, Heavy Images, Render-Blocking Scripts, Third-Party Code) and four benefits: Faster Load Times, Higher Conversions, Better SEO Rankings, and a Healthier Store.

The short version: most Shopify stores are guilty of four or five of these, and three of them — app bloat, heavy images, and render-blocking scripts — cause the majority of the damage. Here are the 10 theme-performance mistakes we check on every audit, the real numbers behind each, and the honest fix: it's almost always subtraction, not another app.

We audit and fix Shopify store speed, so this is the actual list we run against. If you want the framework behind why these matter — the metrics, and why your admin Speed Score isn't the number Google ranks on — start with improving Core Web Vitals without ripping out your theme. This post is the concrete culprits.

For context on where you stand: the average Shopify store scores just 25–35 on mobile PageSpeed (well below the "good" 50+), and median mobile LCP runs around 3.7s for fashion and 4.3s for home goods — both failing Google's 2.5s bar. If that's you, you're normal. Here's what's usually behind it.

1. Heavy, bloated theme code

Feature-crammed and ageing themes carry large amounts of unused Liquid, CSS, and JavaScript loaded "just in case." A theme built to do everything ships code for features you don't use — on every page. Inefficient Liquid loops and unminified assets pile on top. To be clear, this is rarely the theme's fault so much as how it's been built and extended over time — build quality matters more than which base theme you chose. But an old, heavily-modified theme is a common starting point for slowness.

2. Unused JavaScript

JavaScript is the single largest contributor to slow Shopify themes, and a lot of it does nothing. A whole library loaded for one small widget. Leftover code from a feature you removed a year ago. A legacy dependency kept alive for a single plugin. Every kilobyte still gets downloaded, parsed, and executed on the main thread — including the parts nothing ever calls. Dead code isn't free; it's just invisible.

3. Render-blocking scripts and styles

Even necessary code slows you down if it blocks the first paint. Ten to twenty-five render-blocking scripts — not unusual on a store that's a few years old — can add 1 to 3 seconds before anything appears on screen. Scripts sitting in the <head> without defer or async, and CSS that hasn't been split into critical-plus-deferred, hold the entire page hostage while they load.

4. App bloat

The single biggest speed killer on Shopify, full stop. The average store runs 15–20 apps, each injecting 100–500ms of JavaScript on every page, and app scripts are blamed for 60–80% of Shopify slowdowns. The pattern is stark: stores with more than ~8 front-end apps typically show mobile LCP above 3 seconds, while stores with 3 or fewer usually stay under 2. Worse, uninstalling an app often leaves orphaned script tags behind. Auditing your apps — and confirming removed ones left nothing behind — is the highest-leverage thing on this entire list.

5. Too many third-party scripts

Chat widgets, marketing pixels, A/B tools, review embeds, live Instagram feeds — each is a connection to a third-party server you don't control, and your page often waits on the slowest one. A live social feed firing on page load is a textbook culprit. Every one you add is a bet that their infrastructure is as fast as yours; usually it isn't.

6. Unoptimized images

Images are the heaviest thing on most pages — uncompressed images account for 50–80% of page weight, and compression alone can cut load time by 40–60%. The usual sins: serving a 3000px image into a 400px slot, using PNG or JPEG where WebP would roughly halve the size, and omitting width/height (which also causes layout shift). Right-size, modern-format, and compress every image, and use Shopify's image transforms to serve the correct dimensions.

7. Lazy-loading the wrong things

Lazy-loading is right for below-the-fold images and wrong for your hero. Lazy-loading the LCP image is a disaster — it adds a script-checking delay that pushes LCP straight into the red. The opposite mistake is just as common: no lazy-loading at all, so every below-fold image competes with the hero for bandwidth on first load. The fix is the split — eager-load (ideally preload) the hero, lazy-load everything below it.

8. Too many web fonts, loaded the wrong way

Fonts block text from rendering until they download, and they add up fast: a single family with four weights can add 200–400KB and delay text by 500ms–2s on slower connections. The common mistakes are loading weights you never use, pulling from a third-party font host (which adds a DNS lookup and connection) instead of self-hosting .woff2 in Shopify's asset library, and skipping font-display: swap so visitors stare at invisible text while the font loads.

9. Heavy hero sliders and autoplay carousels

The most common LCP failure on Shopify is a massive hero image — and a carousel or slider multiplies it, because each slide needs its own image, plus scripts and animation to run the thing. Autoplay video is heavier still. Beyond speed, sliders rarely earn their keep on conversion either. A single strong static hero almost always wins on both counts.

10. A bloated homepage and oversized DOM

Cramming every section, mega-menu, and widget onto one page inflates the DOM — the total number of HTML elements — which makes layout and rendering measurably slower, especially on mobile. And more sections means more images, more scripts, and more nodes all competing. A long homepage feels productive to build; it's often just heavy. Ship the sections that earn their place and cut the rest.

How to actually fix it: subtract first

Notice the pattern across all ten — the fix is almost always removal, not addition. Which is exactly why "install a speed-booster app" is the wrong instinct: you'd be adding another third-party script to solve a problem caused by too many third-party scripts.

Work in impact order, not alphabetical order:

  1. Audit and remove apps (mistakes 4 and 5) — biggest win, do it first.
  2. Fix images and the hero (6, 7, 9) — the next-biggest, and mostly mechanical.
  3. Then trim JS, fonts, and render-blocking (2, 3, 8) — real gains, more technical.
  4. Polish DOM and theme code last (1, 10) — worth it, but not before the big three.

And measure the right number. Don't chase the admin Speed Score up and down — it's a single lab estimate. Judge every change on your real Core Web Vitals field data (again, the framework post covers how). Speed isn't a vanity metric: a slow store is one of the top reasons stores lose sales despite growing traffic, and it quietly undermines even a well-built product page — a page that's still loading converts nobody.

The bottom line

Slow Shopify stores are rarely slow for one dramatic reason. They're slow because four or five of these mistakes have accumulated quietly over years of adding apps, sections, fonts, and "just one more" pixel.

The good news: the fix is almost always subtraction. Remove the app bloat, compress the images, kill the slider — and most stores are fast again without a rebuild.

We audit and fix Shopify store performance — app and script audits, image and font optimisation, and the field-data measurement that proves the lift. See our Shopify store development work, or talk to us about your store's speed.

Frequently asked questions

What slows down a Shopify store the most?

App bloat and heavy images, by a wide margin. The average store runs 15–20 apps, each adding 100–500ms of JavaScript per page, and app scripts are blamed for 60–80% of Shopify slowdowns. Uncompressed images make up 50–80% of page weight. Fix those two before you touch anything smaller — they cause most of the damage on most stores.

How many apps is too many for store speed?

There's no hard cap, but front-end app count tracks closely with speed: stores running more than roughly 8 front-end apps typically show a mobile LCP above 3 seconds, while stores with 3 or fewer usually stay under 2. Audit for apps you no longer use — and check that uninstalled ones didn't leave orphaned scripts behind, which is common.

Do web fonts really slow down my store?

Yes. Fonts block text from rendering until they download, and a single family with four weights can add 200–400KB and delay text by 500ms–2s on slower connections. Load only the weights you actually use, add font-display: swap so text shows immediately, and self-host .woff2 files rather than pulling from a third-party font host that adds a DNS lookup.

Should I use a hero slider or carousel on my homepage?

Usually not. A hero image is the single most common cause of a slow LCP, and a carousel multiplies it with extra images, scripts, and animation. A single strong static hero almost always beats a slider on both speed and conversion — and whatever you do, never lazy-load the hero, which pushes LCP straight into the red.

Will a speed-optimization app fix my slow store?

Sometimes partly — but be careful, because the irony is that many 'speed booster' apps add yet another third-party script. The most reliable performance fix on Shopify is subtraction: remove unused apps and scripts, compress images, and trim fonts. Reach for an app only for a specific job (like image compression) that it does without piling on overhead.

How do I know if my theme is the problem?

Measure the right number first — don't trust the admin Speed Score, which is a single lab estimate; check your real Core Web Vitals field data. Then audit against the ten mistakes here. Usually it isn't the base theme at all but what's layered on top (apps, images, scripts) — build quality matters far more than which theme you started from.

Have a project in mind?

Building something on Shopify?

We design, build, and maintain Shopify apps, stores, and AI products — to the standard this article describes.

Related reading

Shopify Store Development 8 min

Shopify Collection Page Optimization: The CRO Checklist

Your collection page decides whether shoppers ever reach your product pages — and it quietly drives 30–40% of your organic traffic. Most stores leave it on default sort with no copy. Here's the full CRO checklist for Shopify collection pages, in priority order, plus the honest part: the checklist is a hypothesis, and faceted navigation is an SEO trap.

Read article
Shopify Store Development 7 min

Shopify Product Page Optimization: The CRO Checklist

A product-page checklist gets you to table stakes — pages with all the core elements convert 2–3x better than pages missing even one. But a checklist is a hypothesis, not a strategy. Here's the full CRO checklist we actually run on Shopify product pages, in priority order, plus the honest part most listicles skip: where checklists mislead.

Read article
Shopify Store Development 8 min

Improving Shopify Core Web Vitals (Without Ripping Out Your Theme)

You almost never need a re-theme to pass Core Web Vitals. On hosted Shopify the server is already fast — stores fail because of what gets piled on top: apps, scripts, oversized images, and layout shift. All fixable in place. Here's the incremental playbook, metric by metric, plus why your admin Speed Score isn't the number Google ranks on.

Read article
Shopify Store Development 7 min

Shopify Thank You Page vs Order Status Page: What's the Difference?

They're not the same page — and there are three post-purchase surfaces, not two. The thank you page is seen once at peak attention, the order status page is returned to repeatedly while they wait, and the customer account page lasts the whole relationship. Separate extension targets, different jobs — putting identical content on all three wastes the difference.

Read article
Shopify Store Development 5 min

How to Increase Shopify AOV Using Post-Purchase Upsells

Post-purchase upsells lift AOV by 10–20% — but only if you get the offer right. The pricing ratio, the relevance rule, and the one-offer principle decide whether you land 14% acceptance or under 3%. Here's the tactical playbook, with the benchmarks to measure yourself against.

Read article
Shopify Store Development 5 min

Shopify Thank You Page: How to Turn It Into a Revenue Channel

The thank you page is the second-most-viewed page in your store after the homepage — and most stores leave it completely empty. Post-purchase offers convert at 8–15%, five to ten times better than pre-purchase upsells, because the payment is already done. Here's how to turn that page into real revenue in 2026.

Read article
Shopify Store Development 5 min

Shopify Collections Are Changing: What Merchants Need to Know in 2026

Shopify is overhauling collections in 2026 — the rigid 'smart vs custom' split is gone, replaced by a flexible Collection Sources model where one collection can combine automated conditions, manual picks, exclusions, other collections, and app sources. Add variant-level targeting and native AI merchandising, and here's what merchants (and their developers) need to know.

Read article
Shopify Store Development 5 min

Shopify B2B in 2026: Is Shopify Ready for Serious Wholesale Businesses?

Shopify B2B had a big 2026: native wholesale features are no longer Plus-only, and Winter '26 closed much of the gap with dedicated B2B platforms. So is Shopify ready for serious wholesale? For most brands, yes — here's what you get, where the real scale line sits, and the honest limitations to know before you commit.

Read article
Shopify Store Development 5 min

Shopify Horizon Theme: Should Merchants Upgrade in 2026?

Horizon is Shopify's new flagship theme — nested blocks, global blocks, AI block generation, and a far better editor. But is it worth migrating your existing store in 2026? Here's what Horizon does better than Dawn, where it still trails on mobile performance, why the move is a rebuild not a swap, and a clear decision framework.

Read article