Why is my Shopify store slow?
A Shopify store is almost never slow because of Shopify’s servers. It is slow because of what has been added on top: apps, theme code, media and tracking. Shopify hosts the store on its own infrastructure and CDN, so the work of Shopify speed optimization is almost entirely inside your theme and app stack.
In the stores we review, the causes tend to fall into a familiar order. We check them in this order because the top items usually free up the most time for the least risk.
- App scripts: reviews, pop-ups, chat, upsell and wishlist apps each loading their own JavaScript on every page.
- Leftover app code: snippets from apps you uninstalled months ago, still loading or still in the theme.
- Heavy theme features: sliders, mega menus, animated sections and duplicated libraries.
- Media: hero images uploaded at full camera size, autoplay video, dozens of product images loading at once.
- Tracking tags: several pixels, a tag manager and heatmap tools all firing on page load.
- Liquid logic: loops over large collections or metafields that slow server response.
- Fonts: several families and weights, loaded before text can show.
Knowing the cause matters because the fixes differ. Compressing images will not help a store whose problem is a chat widget blocking every tap.
What is Shopify speed optimization, and what can it not change?
Shopify speed optimization is the practice of reducing the work a shopper’s browser must do to show and use your pages, measured through Core Web Vitals. It changes your theme, apps, media and tags; it does not change Shopify’s hosting, checkout or core platform code.
That boundary is useful. You do not have to worry about server tuning, caching layers or database indexes the way a WordPress owner does; Shopify handles those. Shopify also automatically minifies CSS, and JavaScript written in older ES5 syntax, when the storefront requests those files, according to its theme documentation. So the remaining gains are in what you choose to load.
There are also things optimisation cannot promise. Checkout performance is Shopify’s domain. Third-party apps you depend on may insist on loading scripts early. And a shopper on a weak connection will always wait longer than one on office Wi-Fi. Good Shopify speed optimization is about making the experience fast for the typical real visitor, not about chasing a perfect lab score.
The web performance report inside your Shopify admin shows how real visitors experienced your store across the three Core Web Vitals. This is the first place we look in any Shopify speed optimization job, because it reflects actual shoppers rather than a simulated test.
Shopify’s Help Center explains that the dashboard uses real user data, covers up to the last 90 days with delays of up to 36 hours, and summarises performance from the past 30 days. It reports Largest Contentful Paint for loading, Interaction to Next Paint for responsiveness and Cumulative Layout Shift for visual stability.
The most useful feature is often overlooked: numbered event annotations on the graph mark app installations, theme updates and new code. If LCP jumped the week a new reviews app went in, the chart shows it. We read those markers against your app history before touching any code.
- Check each metric’s trend, not just today’s value.
- Line up jumps with the annotation markers for apps and theme changes.
- Compare mobile with desktop; mobile is usually where problems hide.
- Note which page types are slow if the report breaks them down.
Because the data lags, a fix made today shows its full effect only after weeks of new visits. We tell clients to judge results on the 30-day window, not the next morning.
Reading Core Web Vitals for a Shopify store: field data vs lab tests
Field data tells you whether real shoppers had a good experience; lab tests tell you why a page is slow. Shopify speed optimization needs both, and confusing them is the most common reason owners think a fix “did nothing”.
Google’s web.dev guidance defines good Core Web Vitals as Largest Contentful Paint within 2.5 seconds, Interaction to Next Paint of 200 milliseconds or less and Cumulative Layout Shift of 0.1 or less, judged at the 75th percentile of page loads. Field sources such as Search Console’s Core Web Vitals report, the Chrome UX Report section of PageSpeed Insights and Shopify’s own dashboard use that standard.
Lab tools such as Lighthouse run one simulated load on a throttled device. The score swings between runs and is not what Google uses for page experience. We still use lab traces heavily, because they show which script or image delays the page, but we report success in field numbers.
For context, Shopify’s Theme Store requirements ask themes to reach an average Lighthouse performance score of at least 60 across product, collection and home pages on desktop and mobile. Themes are tested without your apps, so a theme that passed can still become slow once a dozen apps are installed.
The app script bloat audit: which apps slow your Shopify store?
An app audit measures what each app adds to each page type (scripts, stylesheets, network requests, main-thread time) and weighs that against what the app earns. It is the highest-value step in most Shopify speed optimization projects.
We start on a duplicate of your live theme. For each app we record which pages load its code, how much JavaScript it ships and whether that code runs before the page is usable. A reviews widget needs to load on product pages, but rarely on the home page or blog. A pop-up app does not need to run before the hero image shows. A wishlist app used by very few shoppers may not justify its weight at all.
Then we hunt for ghosts. Many apps insert snippets into theme files when installed, and uninstalling the app does not always remove them. Old tracking snippets, abandoned review widgets and trial upsell apps can still load files or throw errors years later. We search theme files for these leftovers and remove them after confirming nothing depends on them.
The output is a table: app, pages affected, cost in load and interaction time, business value and recommendation (keep, scope to certain pages, replace with a lighter option, remove). You make the call on each line; we never remove an app that earns money without your say.
Liquid and theme code clean-up for Shopify speed
Theme clean-up removes code the theme loads but does not need, and rewrites Liquid that makes pages slow to generate. Done carefully, it keeps your design identical while making it lighter.
On the Liquid side we look for loops over entire collections to find a handful of products, repeated metafield lookups inside loops, and sections that render hidden content on every page. Replacing those with targeted queries or cached settings speeds up the server response that the whole page waits on.
On the front-end side, common wins are removing a second copy of a JavaScript library, dropping a slider library for native CSS scroll-snap, deferring non-critical scripts, and splitting CSS so each template loads what it uses. Fonts come next: limiting families and weights, preloading the one used above the fold and using font-display settings so text shows immediately.
We work on a duplicate theme and keep changes documented, so future theme updates remain possible. If your theme is heavily customised, we note which files diverge from the original version, which helps whoever updates it next.
- Remove duplicate libraries and dead snippets.
- Replace collection-wide loops with targeted Liquid.
- Defer or lazy-load scripts not needed for first view.
- Trim fonts to the families and weights actually used.
Image and video optimisation on Shopify
Serve every image through Shopify’s image CDN at the size it is displayed, lazy-load images below the fold, and give the hero image priority. For video, show a lightweight poster first and load the player only when needed.
Shopify’s developer documentation for the image_url filter explains that you must specify a width or height, that Shopify automatically picks a format such as WebP or AVIF based on what the shopper’s browser supports, and that an image is never enlarged beyond its original size. That means you do not need a separate image-compression app for format conversion; you need the theme to request sensible sizes with a proper srcset.
The usual problems are themes requesting one large size for every screen, hero banners set to lazy-load (which delays LCP), and every product image in a gallery loading at once. We fix each: responsive sizes per breakpoint, eager loading and a preload hint for the LCP image only, and lazy loading everywhere else. Width and height attributes are added so the browser reserves space and layout does not shift.
Autoplay background video is one of the heaviest things a Shopify home page can carry. If it must stay, we compress it, serve a poster image first and start playback after the page is interactive. Often a strong still image converts just as well; that is your decision, and we can set up a test.
Every analytics pixel, ad tag, heatmap and tag manager adds scripts that compete with your page for the shopper’s phone. Consolidating them is one of the most reliable ways to improve INP without losing data.
Stores often carry the same platform’s pixel twice, once from an app and once pasted into the theme, plus a tag manager loading more tags inside it. We list every tag, what it measures and who uses its data. Duplicates go; tags nobody reads go; the rest are loaded after the page is usable where the platform allows.
Shopify has also changed where tracking lives. Its Help Center notes that the additional scripts box in checkout settings became view-only on August 28, 2025, and tracking now belongs in customer events (pixels) or app-provided integrations. Moving tags there keeps checkout tracking working and keeps scripts out of your theme where possible.
Consent matters too. If you sell to shoppers in regions with cookie-consent rules, non-essential tags should wait for consent, which also helps speed for visitors who decline. We configure the loading order; legal questions go to your own adviser.
Does Shopify speed optimization help SEO and sales?
Speed helps, but it is one factor among many. Core Web Vitals are part of how Google assesses page experience, and a faster store is simply easier to shop, particularly on phones. It will not replace good product pages, useful content or links.
For search, the benefit is removing a weakness. Pages that pass Core Web Vitals give Google no page-experience reason to prefer a competitor’s equivalent page. Faster server response and lighter HTML also help crawlers get through large catalogues. Nobody can guarantee rankings from speed work, and we will not suggest otherwise.
For sales, the effect shows in behaviour: fewer shoppers leaving before the product image appears, add-to-cart buttons that respond on the first tap, and filters that do not freeze. We suggest you watch your own conversion rate and bounce data for a few weeks after the fixes rather than relying on industry claims.
AI search tools read pages too. A lean, server-rendered product page with clear headings, correct Product schema and fast delivery is easier for AI Overviews and assistants to parse. Our Shopify SEO page covers the content side, which matters more than milliseconds.
How much does Shopify speed optimization cost?
It depends entirely on what is slowing your store, so BtechWaleTech quotes after a review: an itemised list of fixes, each with its own price, in about two working days. Care plans that keep a store fast start at ₹8,000/mo (US$120/mo) a month, and a rebuilt theme, when tuning is not enough, starts at ₹50,000.
Why not one package price? Because a store with three heavy apps and one oversized hero needs a few hours, while a store with forty apps, a heavily edited theme and six tracking tools needs days of careful testing. A single price would overcharge the first and underserve the second.
Elsewhere, quotes vary widely, and the difference is usually in what is included. Some cover only image compression and a lab score screenshot. Others include app audits, Liquid work, tag consolidation and field-data reporting. When comparing, ask each provider which metrics they will report, from which source, and what happens if field data does not improve.
Our list shows the expected metric for each fix (LCP, INP or CLS), so you can approve the lines that matter most first. Payments are by UPI or bank transfer in India, or Wise, bank wire or PayPal from abroad.
Do Shopify speed booster apps actually work?
Some help a little with specific tasks, but no app can remove the scripts other apps inject or rewrite a heavy theme. And every app you add loads something of its own.
Speed apps typically offer lazy loading, image compression, link prefetching or script delaying. Lazy loading and responsive images are things a well-built theme should already do; Shopify’s image CDN already converts formats. Script delaying can improve a lab score by postponing everything until the shopper moves, but that can also delay features shoppers need, and it can make field INP worse when a flood of delayed scripts runs on the first tap.
Our rule: fix the causes first, then decide whether any app still adds value. In many audits, removing a speed app is itself one of the fixes, because its own script outweighs what it saved.
Shopify speed optimization process and timeline
A typical project takes one to three weeks of work: a few days to audit and quote, then fixes in batches on a duplicate theme, each tested before publishing. Field data then needs around four weeks of new visits to reflect the full change.
Day one to three: we collect field data from Shopify’s dashboard and Search Console, run lab traces on home, collection, product and cart pages, and audit apps and tags. You receive the itemised list. After approval, we duplicate your theme and work through fixes in priority order, starting with the ones expected to move your worst metric.
Each batch is previewed on the duplicate theme so your team can click through key journeys: variant selection, add to cart, filters, search, the cart drawer. Once confirmed, we publish during a quiet hour and keep the previous theme ready to restore. A before-and-after report follows, and we check the 30-day field window again later.
When a new theme or headless rebuild beats more Shopify speed optimization
Rebuild when the theme’s own architecture is the bottleneck: when a lean test page on the same theme, with apps disabled, still fails Core Web Vitals, or when every fix breaks something else because the theme is heavily patched.
A cleaner Online Store 2.0 theme, customised properly, suits most stores that reach this point. It starts at ₹50,000 with us and keeps your URLs, products and apps. A headless storefront is a much bigger step, justified by design or multi-channel needs rather than speed alone; our headless Shopify development page explains when it pays off.
Large stores with complex rules sometimes also look at Shopify Plus for checkout and logic features. That is a separate decision from speed; see our Shopify Plus developer notes. Whatever you choose, carry the speed budget into the new build so the same problems do not return.
Shopify speed optimization for Indian stores on mobile
Indian Shopify stores should optimise for mid-range Android phones on mobile data, because that is how most of their shoppers arrive, often from Instagram, WhatsApp or Google on a phone. A page that feels quick on a laptop can feel sluggish on a budget handset.
That shifts priorities. INP matters more, because slower processors struggle with heavy JavaScript. Cash-on-delivery, pincode-check and WhatsApp chat apps are common in India and each loads scripts; we check whether each needs to run on every page or only on product and cart pages. Hindi or regional-language fonts can be large, so we load only the scripts and weights you actually use.
We test on a real mid-range Android device as well as in lab tools. Stores we hear from include ethnic-wear sellers in Indore, textile brands in Coimbatore and Madurai, spice and snack sellers in Kozhikode, tea brands in Guwahati, handicraft stores in Udaipur, organic-food sellers in Dehradun and gift shops in Nagpur. GST invoices are issued where applicable.
Worked example: speeding up a kurti store on Shopify (hypothetical)
Say an Indore kurti brand has 900 products and a popular theme. Shopify’s dashboard shows poor mobile LCP and INP, and the annotation markers show both worsened after a reviews app, a pop-up app and a pincode checker went in. The home page opens with an autoplay video and a slider of five full-width banners.
Our audit would likely find the reviews app loading on every page, the pop-up script running before the hero, a leftover snippet from an uninstalled upsell app, two copies of the same ad pixel and hero images requested at full size. The itemised list might read: scope reviews to product pages; delay the pop-up until after interaction; remove the leftover snippet; merge duplicate pixels into customer events; replace the video with a poster and a single banner; fix image sizes and preload the hero; reserve space for review stars.
Each line would carry its own price and the metric it targets. After publishing, we would compare the 30-day field window with the baseline. This scenario shows our method, not a past client or a promised result; a care plan from ₹8,000/mo would keep new apps from undoing the work.
Shopify speed optimization checklist
Use this list on your own store, or as a scope check for anyone you hire. Each item is something we verify in a Shopify speed optimization project.
- Baseline field data saved from Shopify’s dashboard and Search Console.
- Every app listed with the pages it loads on and its value to the business.
- Theme searched for code left behind by uninstalled apps.
- Hero image eager-loaded and preloaded; all other images lazy-loaded.
- Images requested at display size through Shopify’s image CDN.
- Width and height set on images, badges and embeds to stop layout shift.
- Duplicate pixels and unused tags removed; tracking moved to customer events where suitable.
- Fonts limited to the families and weights actually used.
- Changes tested on a duplicate theme before publishing.
- Field data re-checked after about four weeks of new visits.