Conversion· Friction (Feel)

Shopify Speed Optimisation: What Actually Moves the Needle

Shopify speed optimisation is not about chasing a perfect score. This guide shows established stores how to identify the delays shoppers actually feel, prioritise the fixes that matter and verify improvements without stripping useful features from the site.

Damian Redpath 23 July 2026 17 min read

A slow Shopify store is rarely caused by one obvious problem.

More often, it is the result of years of reasonable decisions. Apps were added to support campaigns. Tracking scripts were installed for different platforms. Product imagery became more detailed. Videos, reviews, recommendations and personalisation were added to improve conversion.

Each feature may serve a purpose. Together, they can create an experience that feels heavy, unstable or slow to respond.

That is why Shopify speed optimisation should not begin with a demand to remove everything or achieve a perfect performance score. It should begin with a simpler question:

Where does the store make customers wait, hesitate or lose confidence?

The goal is to remove the delays shoppers actually feel while protecting the functionality that helps them buy.

Shopify Speed Optimisation Is About Friction, Not a Perfect Score

Performance tools are useful, but a score is not the customer experience.

A storefront can receive a respectable result in a controlled test and still feel slow when someone arrives through an ad, opens a product page on mobile, changes a variant or waits for the cart drawer to update.

The most useful Shopify speed work focuses on those moments.

Why a strong performance score can still feel slow

Automated tools usually test a page under a defined set of conditions. A real customer may experience something different because of:

  • Their device and connection
  • The page they enter through
  • Scripts loaded by advertising and analytics platforms
  • Personalisation or location tools
  • Product reviews and recommendation widgets
  • Cookie consent tools
  • Recently viewed products
  • Cart and subscription functionality
  • The way they interact with the page

This is why a single homepage score should not be treated as a complete diagnosis.

The homepage may perform well while product pages struggle under image galleries, reviews, subscriptions and recommendation widgets. A collection page may appear quickly but become slow when a shopper opens filters. A cart drawer may display immediately but take too long to reflect an added product.

Use performance scores as evidence, not as the final verdict.

The shopper moments where delays create the most friction

Not every delay carries the same commercial risk.

A brief pause on a low-intent editorial page may be less urgent than a delayed variant selector on a best-selling product. Prioritise the points where shoppers are actively trying to make progress:

  • Opening a landing page after clicking an ad or search result
  • Moving from a collection to a product
  • Swiping through product images
  • Selecting a size, colour or purchase option
  • Opening reviews or product information
  • Adding an item to the cart
  • Updating quantities or removing items
  • Applying a discount code
  • Starting checkout

These moments sit close to a buying decision. When they feel slow, the customer may assume the store is broken, their action did not register or the checkout will be difficult too.

Speed optimisation should therefore follow the buying journey, not just the list of pages in a testing tool.

Balancing storefront speed with useful functionality

Removing every third-party feature would usually make a store faster. It would not necessarily make it better.

Reviews may help customers feel confident. Subscriptions may support repeat purchasing. Product recommendations may help customers find the right option. Analytics may be essential for measuring campaigns. Live chat may answer questions that would otherwise stop a purchase.

The useful question is not whether a feature adds weight. Most features do.

Ask instead:

  • Does the feature help enough customers to justify its cost?
  • Does it need to load on every page?
  • Does it need to load immediately?
  • Is another app already performing the same job?
  • Could the feature be delivered more efficiently?
  • Is the team still using it?

A lighter store is valuable, but the objective is a faster buying experience, not a stripped-back store with less ability to sell.

Diagnose the Slow Experience Before Changing Anything

Speed work becomes expensive when development begins before the problem is understood.

Avoid making broad theme changes based on one test result. Start by identifying which templates, devices and interactions are actually struggling.

Test the templates that carry the most buying intent

A useful performance review should include more than the homepage.

Test representative examples of:

  • The homepage
  • A major collection page
  • A best-selling product page
  • A product with multiple variants
  • A product with subscriptions or bundles
  • A campaign landing page
  • The cart or cart drawer
  • Any page using a major third-party feature

Choose pages that reflect how the store genuinely operates. Testing a simple product with one image will not reveal what shoppers experience on a complex product page with video, reviews, subscriptions and cross-sells.

Also test the pages receiving meaningful paid or organic traffic. Improving a template used by hundreds of products will usually matter more than polishing an isolated page that few customers visit.

Compare mobile and desktop performance

Desktop testing alone can hide the most frustrating parts of the experience.

Review the store on several real mobile devices where possible. Do not only load the page and look at it. Complete the actions a customer would take:

  • Open the navigation
  • Use collection filters
  • Search for a product
  • Swipe through the gallery
  • Select a variant
  • Choose a subscription option
  • Open size or shipping information
  • Add the product to the cart
  • Change the cart quantity
  • Begin checkout

Watch for delayed taps, buttons that appear ready before they work, jumping content and controls that respond inconsistently.

Then repeat the same journey on desktop. Some problems will affect every device. Others may come from mobile-specific layouts, menus, galleries or sticky purchase controls.

Separate loading, interaction and layout problems

“Slow” can describe several different experiences.

Loading problems occur when important content takes too long to appear. The page may remain blank, the main image may arrive late or the product information may take time to become visible.

Interaction problems occur when the page is visible but slow to respond. A shopper taps a filter, variant, accordion or add-to-cart button and receives no immediate feedback.

Layout problems occur when elements move as the page loads. Text shifts, buttons jump, images resize or an app widget pushes the purchase area down after the customer has started interacting.

These problems often have different causes and need different fixes.

Before changing code, describe the issue in plain language. For example:

  • The main product image appears late on mobile.
  • Variant changes take too long to update the price.
  • The add-to-cart button can be tapped before the product form is ready.
  • The reviews widget pushes the purchase controls down after loading.
  • Collection filters pause before displaying results.

A precise problem produces a more useful fix than a general instruction to “make the site faster”.

Build a Baseline You Can Compare Against

Without a baseline, it is difficult to know whether a change genuinely improved the experience.

Record the current state before removing apps, compressing assets or changing theme code.

Combine controlled tests with real-user performance data

Controlled testing tools are useful because they let you repeat a test under similar conditions. They help surface large assets, long-running scripts, layout movement and delayed interactions.

Real-user data answers a different question: what are actual visitors experiencing across different devices, pages and connections?

Use both where available.

Controlled tests are useful for diagnosing causes and comparing individual changes. Real-user data helps reveal whether a problem is widespread and whether the improvement reaches customers outside the testing environment.

Neither should be used alone.

A controlled test can exaggerate an issue that few customers encounter. Store-wide averages can also hide serious problems on particular templates or devices.

Record results for the homepage, collection, product and cart

Create a simple record for each template tested. Include:

  • The exact page URL
  • Device type
  • Test date
  • Testing tool or method
  • Main loading issue
  • Main interaction issue
  • Any layout movement
  • Third-party features present
  • Notes from manual testing
  • Changes made
  • Result after retesting

The purpose is not to build a complicated reporting system. It is to make the work comparable.

When several people are involved, this also prevents vague conversations where one person says the site feels faster while another says the score has fallen.

Identify recurring problems across multiple templates

Look for patterns before fixing individual pages.

For example:

  • The same app script may appear on every template.
  • The announcement bar may shift the layout across the whole site.
  • Product images may be oversized across the catalogue.
  • The same tracking scripts may delay interaction everywhere.
  • A recommendation widget may load unnecessarily on pages where it is not displayed.
  • A global theme file may contain unused code from older features.

Recurring problems usually deserve attention first because one fix can improve many customer journeys.

Isolated issues still matter, particularly on high-traffic pages, but store-wide causes often produce the clearest starting point.

Remove Unnecessary Weight Before Rebuilding the Theme

A slow store does not automatically need a new theme.

Many established Shopify stores can make meaningful progress by removing unnecessary work from the storefront they already have.

Audit app scripts, tracking tags and duplicated features

Start with an inventory of everything loading on the storefront.

Review:

  • Installed Shopify apps
  • App embeds
  • Customer tracking pixels
  • Tag manager containers
  • Advertising scripts
  • Heatmaps and session recording
  • Live chat
  • Reviews
  • Recommendations
  • Popups
  • Loyalty tools
  • Wishlists
  • Subscription tools
  • Search and filtering
  • Personalisation
  • Consent management
  • Custom scripts added to the theme

For each item, document:

  • What it does
  • Where it appears
  • Who uses the data or feature
  • Whether it is still required
  • Whether another tool duplicates it
  • Whether it needs to load immediately
  • Whether it needs to load site-wide

Do not uninstall tools simply because they appear in a performance report. Confirm the business purpose first.

A tracking script may be essential for a live campaign. A subscription app may support an important revenue stream. A review platform may contain valuable customer content.

The audit is about making deliberate decisions, not removing features blindly.

Remove code left behind by deleted apps

Uninstalling an app does not always mean every related theme change has disappeared.

Older installations may leave behind:

  • Script tags
  • Theme snippets
  • App-specific sections
  • CSS files
  • JavaScript files
  • Liquid conditions
  • Empty containers
  • Duplicate tracking
  • Old theme app extensions
  • Code added directly to layout files

Review the theme for references to tools that are no longer installed or used.

Work carefully. Some file names are not obvious, and shared code may support another feature. Take a theme backup and confirm the purpose of the code before removing it.

This cleanup is often less visible than compressing images, but it can reduce the number of unnecessary requests and make future development easier.

Delay non-essential scripts until shoppers need them

Not every feature needs to become active during the first moments of a page visit.

Features further down the page or dependent on customer action may be able to load later. Examples can include:

  • Reviews below the product information
  • Recently viewed products
  • Recommendation carousels
  • Chat widgets
  • Video players
  • Social feeds
  • Location tools
  • Complex forms
  • Secondary analytics

The correct approach depends on how the feature is implemented. Delaying a script incorrectly can break the feature, affect tracking or create new layout movement.

The principle is straightforward: protect the initial browsing and buying experience from work that can reasonably happen later.

Fix the Assets and Theme Code Shoppers Feel Most

After unnecessary weight has been removed, focus on the remaining assets and code that affect visible content and customer actions.

Serve images at the right dimensions and file size

Image optimisation is not simply about lowering quality.

Product photography carries a large part of the buying experience. Customers need enough detail to judge colour, texture, finish and fit. The aim is to deliver that detail efficiently.

Review:

  • Homepage hero images
  • Collection cards
  • Product gallery images
  • Promotional banners
  • Blog thumbnails
  • Brand logos
  • Trust icons
  • Background images

Common problems include serving the same large image to every device, loading more images than the customer can initially see or using oversized files for small display areas.

Match the source image to its actual use. A small collection card should not need the same file dimensions as a zoomable product image.

Also check the order in which images load. The main visible image should receive priority over content far below the fold.

Control video, sliders and above-the-fold media

Video can demonstrate a product more clearly than static imagery. It can also create a poor first experience when it is oversized, autoplaying or competing with other media.

For above-the-fold video, consider:

  • Whether video is necessary in the first screen
  • Whether a static poster image can appear first
  • Whether playback should wait for interaction
  • Whether mobile users need the same treatment as desktop users
  • Whether the file is hosted and delivered appropriately
  • Whether the video blocks text or purchase controls from appearing

Sliders and carousels deserve the same review. Loading several large slides immediately can add weight even when most visitors only see the first one.

Use media to help the decision, not simply to make the page feel more active.

Reduce code that delays visible content and interactions

Theme code can delay the page even when individual files do not look especially large.

Review code that:

  • Runs across every page
  • Waits for several libraries before starting
  • Repeats the same task
  • Controls unused theme features
  • Blocks visible content
  • Recalculates layouts unnecessarily
  • Attaches too many event listeners
  • Updates large parts of the page after a small interaction

Product forms need particular care. Variant selection, price updates, subscription choices, inventory messages and add-to-cart behaviour often depend on several pieces of JavaScript working together.

A speed fix that makes the initial page lighter but breaks variant logic is not an improvement.

Optimise these components with functional testing alongside performance testing.

Prevent layout shifts around images, banners and app widgets

Unexpected movement makes a store feel unstable.

Common causes include:

  • Images without reserved space
  • Announcement bars appearing after the page loads
  • Reviews changing height
  • Personalised offers being inserted late
  • Fonts changing after text is displayed
  • Recommendation widgets expanding their containers
  • Sticky controls appearing without space being allowed
  • Consent banners pushing the entire page

Reserve appropriate space for elements before they load where possible.

For optional or slow third-party widgets, consider using stable containers or placeholders so the surrounding page does not jump.

Layout stability matters most near interactive areas. A moving button is more damaging than a shift in decorative content because the customer may tap the wrong control or lose their place.

Prioritise Speed Work by Impact, Risk and Effort

A long performance report can contain dozens of recommendations. Treating them all as equally urgent creates a large backlog with no commercial order.

Prioritise changes using three questions:

  1. How many customers and templates does this affect?
  2. How noticeable is the problem during the buying journey?
  3. How likely is the change to disrupt important functionality?

Fix widespread template issues before isolated page problems

Start with issues that affect many pages or high-intent journeys.

Examples include:

  • A global script loaded throughout the site
  • Oversized collection images across every category
  • Product gallery code used by the entire catalogue
  • A cart drawer that responds slowly on every product
  • A global announcement bar causing layout movement
  • Duplicate tracking across the whole theme

Then address isolated issues on important pages, such as a campaign landing page or best-selling product with unusual media.

This creates a sensible balance between scale and commercial importance.

Protect checkout, subscriptions, analytics and personalisation

Some functionality needs a higher level of caution because failures can affect revenue, reporting or customer commitments.

Test carefully when changing:

  • Add-to-cart logic
  • Cart drawers
  • Discount handling
  • Checkout extensions
  • Subscription selectors
  • Bundles
  • Customer accounts
  • Regional pricing
  • Currency tools
  • Consent management
  • Advertising pixels
  • Analytics events
  • Personalised offers

Do not assume the page is working because it looks correct.

Complete the action and confirm the result. Add products, change variants, select purchase options, reach checkout and verify that key events still fire where required.

Make one measurable change at a time

Large batches of changes make it difficult to understand what worked.

Where practical:

  1. Record the baseline.
  2. Make one related set of changes.
  3. Test the affected journey.
  4. Compare the result.
  5. Monitor for errors.
  6. Continue to the next priority.

Some changes need to be released together, particularly when code is closely connected. The important point is to keep each release focused enough that the effect can be understood.

This also makes it easier to reverse a change if it causes a problem.

Keep valuable features when their benefit outweighs their performance cost

Every feature has a cost, but cost alone is not enough to decide whether it stays.

A useful review can place features into four groups:

Keep and protect: Essential features that clearly support buying, operations or measurement.

Keep and optimise: Useful features that could load later, appear on fewer templates or be implemented more efficiently.

Replace or consolidate: Features that are useful but duplicated or delivered through an unnecessarily heavy tool.

Remove: Features that are no longer used, no longer measured or no longer support a clear customer need.

This turns speed optimisation into a business decision rather than a technical cleanup exercise.

Verify the Improvement and Keep the Store Fast

Performance work is not complete when the new code is published.

The change needs to improve the experience, preserve important functionality and remain stable as the store evolves.

Retest the same pages, devices and conditions

Return to the baseline and repeat the same tests.

Use the same representative pages and customer actions. Compare:

  • How quickly important content appears
  • How soon controls become usable
  • Whether product interactions respond more consistently
  • Whether layout movement has reduced
  • Whether the cart updates correctly
  • Whether mobile browsing feels smoother
  • Whether any templates became worse

A single improved score is encouraging, but consistency across several tests is more useful.

Also allow for normal variation. One test can be affected by temporary network or third-party conditions. Look for a repeatable improvement rather than reacting to every small change.

Check that faster pages still work as intended

Complete functional quality assurance after every meaningful speed release.

Check:

  • Navigation and search
  • Collection filters
  • Product galleries
  • Variant selection
  • Price updates
  • Subscription options
  • Quantity controls
  • Add to cart
  • Cart updates
  • Discount messaging
  • Checkout entry
  • Forms
  • Popups
  • Reviews
  • Recommendations
  • Tracking and consent behaviour

Test with different products and devices.

A clean performance report does not compensate for a broken purchase journey. The store must become faster and remain dependable.

Add speed checks to app installs, theme releases and campaign launches

Store performance should be treated as an ongoing operating standard.

Add a simple performance review when:

  • Installing or replacing an app
  • Adding a new tracking platform
  • Launching a campaign landing page
  • Adding video or interactive content
  • Updating the theme
  • Introducing subscriptions or bundles
  • Changing the product gallery
  • Adding recommendations or personalisation
  • Preparing for a major sales period

Record what was added, where it loads and how it affected representative pages.

This prevents the store from slowly returning to the same condition after a successful optimisation project.

Speed work is most effective when it becomes part of how the store is managed, not an emergency project repeated every few years.

The best Shopify speed optimisation does not remove everything. It removes avoidable waiting, protects the moments closest to purchase and gives valuable features enough room to work properly.

To identify which parts of your storefront are creating the most friction, run the Store X-ray. It reviews the wider experience so speed can be prioritised alongside page alignment, offer clarity and the rest of the buying journey.

Not sure whether speed is your main constraint? Take the Revenue Bottleneck Quiz to identify whether your next priority is more likely to sit in Traffic, Conversion or Retention.

Better Digital

We build conversion and retention systems for established Shopify stores. We diagnose first, then fix the layer that is actually costing you, in order.

Questions

Common questions

What is Shopify speed optimisation?+

Shopify speed optimisation is the work of removing loading delays, laggy interactions, and layout jumps shoppers actually feel, while keeping the features that help them buy.

What usually slows down a Shopify store?+

Usually it is not one thing. It is a pile-up of oversized media, app scripts, duplicated tracking, old theme code, and heavy widgets loading too early or on too many pages.

Should I remove Shopify apps to make my store faster?+

Not blindly. Keep the apps that help customers buy or help you run the store. Remove the ones nobody uses, the ones duplicated elsewhere, and the ones loading where they do not need to.

Do I need a new Shopify theme to improve speed?+

Not usually. Many stores can get meaningful gains by cleaning up scripts, media, dead code, and specific product-page interactions before a new theme is worth considering.

Is a perfect performance score necessary?+

No. The goal is not a perfect score. The goal is a store that loads key content quickly, responds cleanly when people interact, and does not jump around near the buy action.

Which Shopify pages should I test first?+

Start with the homepage, major collection pages, best-selling product pages, any landing page carrying paid traffic, and the cart. Start where buying intent is highest.

Should Shopify speed be tested on mobile?+

Yes. A store can look fine on desktop and still feel clunky on a real phone. Test the full journey, not just the load.

How often should I review Shopify store speed?+

Review it after app installs, theme releases, tracking changes, new media, campaign landing pages, and before major sales periods. Small additions stack up quickly if nobody checks them.