Diagnosing Your Speed Problem
Before you start optimizing, you need to know what's actually slow. Different pages can have different speed issues, and fixing the wrong thing wastes time.
Start with Google PageSpeed Insights. Test your homepage, your highest-traffic product page, and your highest-traffic collection page. These three pages represent the experience most visitors have. Look at the mobile score — that's what matters most since 70%+ of Shopify traffic is mobile.
Key metrics to focus on:
- Largest Contentful Paint (LCP): How long until the main content is visible. Target: under 2.5 seconds. This is the metric that most directly affects perceived speed.
- First Input Delay (FID) / Interaction to Next Paint (INP): How quickly the page responds to user interaction. Target: under 200ms. Poor INP means buttons feel "broken" when tapped.
- Cumulative Layout Shift (CLS): How much the page jumps around as it loads. Target: under 0.1. High CLS causes accidental clicks and frustration.
- Total Blocking Time (TBT): How long JavaScript blocks the main thread. High TBT means the page appears loaded but doesn't respond to taps or clicks.
Also run GTmetrix, which provides a "waterfall" view showing exactly which resources load and in what order. This tells you whether images, scripts, or fonts are the primary bottleneck.
Image Optimization: The Biggest Win
Images typically account for 50-80% of a Shopify store's total page weight. Optimizing images is almost always the single highest-impact speed improvement you can make.
Why Shopify Images Are Often Huge
Merchants upload high-resolution product photos straight from their camera or photographer — 4000x4000px images at 3-5MB each. Shopify resizes them for display but doesn't automatically compress them. A product page with 6 images can easily weigh 10-15MB, taking 8+ seconds on a mobile connection.
Automated Image Compression
The fastest fix is to install EA Page Speed Booster, which automatically compresses all images across your store without visible quality loss. It converts images to modern formats like WebP and AVIF that are 30-50% smaller than JPEG/PNG while maintaining the same visual quality.
Manual Image Guidelines
If you prefer manual optimization before uploading:
- Resize product images to a maximum of 2048px on the longest side (Shopify's max display size)
- Use TinyPNG or Squoosh to compress before uploading — aim for under 200KB per image
- Use JPEG for product photos (smaller file size) and PNG only for logos or images requiring transparency
- Remove EXIF metadata from images before upload (camera data adds unnecessary bytes)
- Consider using fewer product images — 4-6 optimized images outperform 12 unoptimized ones from a speed perspective
Lazy Loading
Lazy loading defers off-screen images so they load only when scrolled into view. Shopify's newer themes (Dawn and OS 2.0 themes) include lazy loading by default. If your theme doesn't support it, you can add loading="lazy" to image tags in your theme code. Don't lazy-load the hero image or first product image — those should load immediately.
App Auditing: Eliminating JavaScript Bloat
After images, installed apps are the second most common speed killer. Each app typically adds JavaScript to your storefront that loads on every page, even if the app's functionality only applies to specific pages.
How to Audit Your Apps
- Go to your Shopify admin and list all installed apps
- For each app, ask: "Am I actively using this? Does it directly generate revenue or improve the customer experience?"
- Uninstall any app you answer "no" to — you can always reinstall later
- After uninstalling, check your theme code for leftover app snippets. Go to Online Store → Themes → Edit code and search for the app's name or common code patterns
Common App Speed Offenders
| App Category | Typical JS Added | Speed Impact |
|---|---|---|
| Live chat widgets | 200-500KB | 1-3 seconds |
| Review apps | 100-300KB | 0.5-2 seconds |
| Analytics/tracking | 50-200KB each | 0.5-1.5 seconds per script |
| Mega menu apps | 100-400KB | 0.5-2 seconds |
| Currency converters | 50-150KB | 0.5-1 second |
Theme Optimization
Your theme is the foundation of your store's performance. Some themes are inherently faster than others, and theme customizations can accumulate technical debt over time.
Fastest Shopify Themes
Shopify's free OS 2.0 themes (Dawn, Sense, Craft, Crave, Ride, Taste, Studio, Publisher, Colorblock, Origin, Spotlight, Trade) are designed for performance. Dawn, in particular, loads in under 1 second out of the box — making it the fastest starting point for any Shopify store.
If you're using a premium theme, check the developer's website for performance benchmarks. Avoid themes that promise "100+ features" — each feature adds code weight, even if you don't use it.
Theme Code Cleanup
Over time, theme customizations accumulate dead code. Common issues include:
- CSS from old apps that was never removed
- Unused sections and blocks still loading their assets
- Custom fonts that are loaded but not actually used
- Inline JavaScript that could be deferred
- Hidden sections (display: none) that still load all their resources
Third-Party Scripts: The Hidden Bloat
Even beyond apps, Shopify stores often load numerous third-party scripts that collectively add seconds to load time. Each tracking pixel, analytics tool, and widget makes an external network request that blocks rendering.
Common Third-Party Script Offenders
- Facebook Pixel: 50-100KB, but triggers additional network requests for tracking
- Google Analytics (GA4): 45KB compressed, relatively lightweight
- Google Tag Manager: 30KB itself, but can load dozens of additional scripts
- Hotjar/Lucky Orange: 200-400KB, session recording is extremely heavy
- Social media widgets: 200-500KB each for Instagram feeds, Facebook widgets, etc.
Script Loading Strategies
Not all scripts need to load immediately. Use these strategies to reduce their speed impact:
- Add
asyncordeferattributes to non-critical scripts - Load session recording tools (Hotjar, Lucky Orange) only on pages you're actively studying
- Use Google Tag Manager to control when scripts fire rather than loading everything on every page
- Remove social media embedding scripts and use static images with links instead
Code-Level Optimizations
These optimizations require some technical knowledge but can significantly improve performance:
Preload Critical Resources
Add preload hints for your most important resources — the hero image, primary font, and critical CSS. This tells the browser to start downloading them immediately rather than waiting until they're discovered in the HTML.
Minimize Liquid Loops
Shopify's Liquid templating language can create performance issues when loops iterate over large collections. If your collection page loads all 500 products and renders a snippet for each, the server-side rendering time alone can add seconds. Use pagination and limit loop iterations.
Reduce DOM Size
Complex page structures with deeply nested elements slow down rendering and increase memory usage. Shopify recommends keeping total DOM elements under 1,500. Check your DOM size in Chrome DevTools under the Lighthouse audit.
Font Optimization
Custom fonts are a common speed issue because they block text rendering until they download. Visitors see a blank space where text should be, or experience a "flash of unstyled text" (FOUT).
- Use system fonts when possible — they load instantly because they're already on the user's device
- If using Google Fonts, host them locally rather than loading from Google's servers to eliminate the DNS lookup
- Limit to 2 font families maximum (one for headings, one for body text)
- Use
font-display: swapto show text immediately in a fallback font while the custom font loads - Subset fonts to include only the characters you need (Latin characters only if you're English-only)
Mobile-Specific Speed Fixes
Mobile users are on slower connections and less powerful devices. Speed optimizations that seem minor on desktop can be transformative on mobile.
- Serve smaller images to mobile devices using Shopify's responsive image tags
- Reduce the number of products shown on mobile collection pages (8-12 instead of 24-48)
- Defer loading of below-the-fold content until the user scrolls
- Use EA Sticky Add to Cart so the purchase button is always visible without heavy JavaScript overlays
- Test on a real mid-range phone, not just Chrome DevTools — real device performance is 3-5x slower than your development machine
Ongoing Speed Monitoring
Speed optimization isn't a one-time task. Every app install, theme update, and new product can degrade performance. Set up ongoing monitoring to catch regressions early.
- Run PageSpeed Insights monthly on your key pages and track scores over time
- Set up Google Search Console Core Web Vitals monitoring for real-user data
- Check site speed in GA4 (Engagement → Pages and screens → sort by average engagement time) to identify slow pages
- Test speed before and after every app install or theme change
- Create a speed budget: no page should exceed 3 seconds on 4G mobile
Quick Win: Install EA Page Speed Booster right now. It automatically compresses all images across your store — the single highest-impact speed fix — without any manual work. Then audit your apps and remove any you don't actively use. These two steps alone can cut your load time in half.
Recommended EasyApps Tools for Speed
- EA Page Speed Booster — Automatic image compression and optimization across your entire store
- EA Sticky Add to Cart — Lightweight sticky CTA that improves mobile UX without heavy JavaScript
- EA Free Shipping Bar — Minimal-footprint shipping bar that doesn't slow your pages
- EA Email Popup & Spin Wheel — Lightweight popup that loads asynchronously to avoid blocking page render
Speed Up Your Store in 60 Seconds
Image compression is the #1 speed fix for Shopify stores. EA Page Speed Booster handles it automatically — free to install.
Frequently Asked Questions
Why is my Shopify store so slow?
The most common causes of a slow Shopify store are uncompressed images (accounting for 50-80% of page weight), too many installed apps loading JavaScript, heavy theme code, excessive third-party scripts (tracking pixels, chat widgets), and large product catalogs without pagination. Image compression alone can reduce page load time by 40-60%.
What is a good page speed score for Shopify?
Aim for a Google PageSpeed Insights mobile score of 50+ and desktop score of 70+. Most Shopify stores score 20-40 on mobile due to unoptimized images and app bloat. A score above 60 on mobile puts you ahead of 90% of Shopify stores. Focus on real-world metrics like Largest Contentful Paint (under 2.5 seconds) rather than just the score number.
Do Shopify apps slow down my store?
Yes. Each app adds JavaScript to your store's front-end code. Some apps add 100KB+ of JavaScript that loads on every page, even if the app's functionality is only used on one page type. Audit your apps quarterly and remove any you're not actively using. Even uninstalled apps can leave code behind in your theme that continues to slow your store.
How do I compress images on Shopify without losing quality?
Use an app like EA Page Speed Booster that automatically compresses images using modern formats (WebP, AVIF) while maintaining visual quality. Manually, you can use TinyPNG or Squoosh before uploading. Keep product images under 200KB each, use Shopify's built-in image resizing by specifying dimensions in your theme code, and avoid uploading images larger than 2000px wide.
Does Shopify theme choice affect store speed?
Significantly. Free Shopify themes (Dawn, Sense, Craft) are generally faster because they use modern architecture and minimal code. Premium themes with lots of features often load more JavaScript and CSS. Choose a theme based on the features you actually need, not the most feature-rich option. Theme customization code also accumulates over time and can slow your store.
How much does site speed affect Shopify conversion rates?
Every additional second of load time reduces conversions by 7-12%. A store loading in 2 seconds will convert approximately 2x better than the same store loading in 5 seconds. Mobile users are especially impatient — 53% of mobile visitors abandon a page that takes longer than 3 seconds to load. Speed optimization is the highest-ROI improvement most Shopify merchants can make.