SITE SPEED CASE STUDY · PERFORMANCE DESIGN · CORE WEB VITALS

The Store Got Slow One Design Decision at a Time. It Got Fast the Same Way. 1.9s Mobile Load Time, Down From 6.4s

Niche: Outdoor & Camping Gear Ecommerce StorePlatform: ShopifyCatalog: ~250 SKUsService: Performance-Led Design Overhaul
+42%Conversion Rate, 1.2% to 1.7%
+19%Organic Traffic as Core Web Vitals Turned Green
0Visible Features Removed. It Looks Better, Not Barer

01 How Stores Get Slow

No one decides to build a slow store. They decide to add a video hero, a reviews widget, a countdown timer, a chat bubble, two custom fonts, and a parallax section, each one reasonable, each one costing milliseconds. Slowness is what a thousand small design yeses add up to.

An outdoor and camping gear Shopify store came to us with a 6.4-second mobile load time and a familiar story: sales plateauing despite growing traffic, an SEO report flagging failed Core Web Vitals, and a vague sense that the site "felt heavy." It did. The homepage weighed 9.2MB, more than most feature films' opening credits, and the product pages weren't much lighter.

The cost of that weight is well documented. Google's mobile research found that 53% of mobile visits are abandoned when a page takes longer than 3 seconds to load. A large-scale study by Google and Deloitte found that even a 0.1-second improvement in load time measurably lifted conversion and spend across retail sites. And since Core Web Vitals became a Google ranking signal, speed leaks traffic before visitors even arrive.

Most speed projects are handed to developers and treated as a technical cleanup. This one was led as a design project, because nearly every kilobyte traced back to a design decision, and the fixes had to preserve what the design was trying to do while deleting what it was costing. This case study covers the weight audit, the image diet, the app and font cull, and the perceived-speed design work that made the store feel even faster than the stopwatch says.

The core speed insight: every element on a page has two prices, what it adds to the experience and what it costs in milliseconds. Most stores only ever evaluate the first. A speed overhaul is just running the second evaluation, element by element, and keeping only what's worth its weight.

02 What the Weight Audit Found

We profiled every template with Lighthouse and WebPageTest on a throttled 4G connection, then attributed every kilobyte and every blocking script to the design decision that created it. Where the 9.2MB homepage came from:

HOMEPAGE WEIGHT BY SOURCE (BEFORE)

Images 5.3MB Hero video 2.2MB App scripts 1.2MB Fonts 0.5MB

9.2MB total, delivered to phones on cellular connections, before a single product was visible.

IMAGE WEIGHT

Full-resolution PNGs straight from the photographer, some over 2MB each, served at every screen size

A 2.2MB auto-playing hero video that most mobile users never watched past the first second

Every image on the page loading immediately, including a footer Instagram grid nobody had scrolled to yet

SCRIPT & APP WEIGHT

19 installed apps, 8 no longer used, all still injecting scripts on every page

Three review widgets from two abandoned migrations, all three still loading

A chat bubble, exit-intent popup, and countdown bar all render-blocking on first paint

DESIGN EFFECTS

Four font families (two purely decorative) in nine weights, half a megabyte before text could render

Parallax scroll effects triggering constant repaints that made mid-range phones stutter

Layout shift of 0.31 CLS: images without reserved space pushed the page around as they arrived, causing mis-taps

THE BUSINESS COST

6.4s mobile load, double Google's 3-second abandonment threshold

All three Core Web Vitals failing in Search Console, a drag on rankings since the page experience update

Mobile bounce at 67% while desktop (on fast connections) sat at 44%, the same design, priced differently by the network

Lighthouse report before, with failing Core Web VitalsPre-overhaul Lighthouse mobile report showing the performance score and red LCP/CLS/INP metrics

03 Our Performance Design Approach

Developer-led speed work optimizes what exists. Design-led speed work asks whether each thing should exist, and what could do its job for less. Three rules ran the project:

1
Attribute every kilobyte to a design decision

Accountability

"The site is slow" is unactionable. "The hero video costs 2.2MB and 1.8 seconds, and 90% of mobile users scroll past it within a second" is a decision waiting to be made. The audit produced a ranked list of design decisions priced in milliseconds, and the owner made every call with both prices visible for the first time.

2
Replace, don't just remove

Same job, less weight

Every heavy element was doing a job the design still needed done. The video conveyed adventure; a single striking photo conveys it for 4% of the weight. The parallax added depth; a subtle CSS treatment adds it for free. Speed work that just deletes things leaves a barer store. Speed work that redesigns them leaves a better one, and this store's post-overhaul design tested as more premium, not less.

3
Set budgets that outlive the project

Durability

Each template got a permanent budget: total weight, image weight, and script count, documented alongside the brand guidelines. Any new app, section, or campaign asset has to fit the budget or displace something. Stores don't stay fast by being optimized once; they stay fast by having a rule that new weight must be paid for.

04 The Image Diet

Images were 58% of the weight, so they got the deepest work. Nothing here reduced visual quality on the screens where buyers actually look:

ChangeWhat We DidSaved
Format & compressionEntire catalog re-exported to WebP at quality levels tuned per image type (photos vs graphics)~65% of image weight, no visible difference at device resolutions
Responsive sizessrcset on every image so phones download phone-sized files, not desktop heroesThe single biggest mobile win, megabytes per page
Hero video → hero photoOne striking campaign photo with the same adventure energy, art-directed from existing assets2.2MB and 1.8s off first paint
Lazy loadingEverything below the first screen loads as the user approaches it, with space reserved to prevent shiftInitial load carries only what's visible
The Instagram gridRemoved entirely, it loaded 12 images and a third-party script to send visitors off-siteWeight, plus an exit ramp
Same product photo at original vs optimized weightSide-by-side of a product image at 2.1MB PNG and 130KB WebP, visually identical at phone size

05 Apps, Fonts, and Effects

The rest of the weight came from accumulation: apps installed for one campaign and never removed, fonts added for one banner, effects that impressed in a demo. The cull:

BEFORE: THE ACCUMULATION

Apps

19 installed, 8 unused, 3 review widgets, every script on every page

Fonts

4 families, 9 weights, ~500KB before any text rendered

Effects

Parallax sections, scroll animations, an auto-playing video, a countdown bar

Interrupters

Chat bubble, exit popup, and cookie bar all competing on first paint

AFTER: THE DIET

Apps

9 remain. One review widget. Scripts load only on pages that use them, after content paints

Fonts

One variable family, ~80KB, with system-font fallback so text shows instantly

Effects

Subtle CSS transitions only. The design reads calmer and more premium, not plainer

Interrupters

Chat loads after 5s, popup shows once per visitor at 30s, nothing blocks first paint

The app audit conversation: we walked the owner through all 19 apps with one question each: what revenue does this produce, and what does it cost in load time? Eight had no answer to the first question. This meeting takes an hour, saves more milliseconds than most technical optimizations, and almost no store has ever held it.

06 Designing Perceived Speed

The stopwatch matters, but the feeling of speed is a design outcome of its own. Two pages with identical load times can feel completely different depending on what the user sees while waiting:

1
Content-first paint order

First glance

The page now paints in usefulness order: headline and navigation text instantly (system font fallback), the hero image next, decoration last. The old site painted a blank white screen while fonts and scripts negotiated, then everything at once. Same network, completely different experience of waiting.

2
Zero layout shift

Stability

Every image, embed, and widget has its space reserved before it arrives. CLS went from 0.31 to 0.02. Nothing jumps, nothing dodges a tap. Stability reads as quality; a page that assembles itself in front of the user reads as broken even when it's technically fast.

3
Instant feedback on every action

Responsiveness

Add-to-cart responds visually within a frame, the cart drawer opens with its skeleton while contents load, and page transitions show immediate movement. Users judge speed by how fast the site responds to them, not by network panels. Feedback is the cheapest speed there is.

Filmstrip comparison, old vs new load sequenceWebPageTest filmstrips showing the blank-then-everything old load next to the content-first new load

07 Results: Faster Store, Better Numbers, Same Brand

Search Console Core Web Vitals report turning greenCWV report showing URLs moving from "poor" to "good" across the overhaul period

The overhaul shipped over five weeks, images first (biggest win, lowest risk), then apps and fonts, then the template-level design changes. Twelve weeks after completion:

MetricBeforeAfter (12 Weeks)Change
Mobile load time (4G)6.4s1.9s↓70%
Homepage weight9.2MB1.4MB↓85%
Overall conversion rate1.2%1.7%↑42%
Mobile bounce rate67%51%↓16pts
Core Web VitalsAll failingAll greenLCP 1.8s, CLS 0.02
Organic trafficBaseline+19%Over the following quarter

Speed metrics from Lighthouse and WebPageTest on throttled 4G; business metrics from GA4 and Shopify, comparing the 8 weeks pre-overhaul against weeks 4–12 after. Traffic mix steady, no campaigns in the window. The organic traffic gain accrued gradually over the following quarter and can't be attributed to CWV alone, rankings move for many reasons, but the timing tracks the page experience improvement, and it was the store's first organic growth in a year.

1.9s Mobile load, from 6.4s

+42%Conversion rate
↓85%Homepage weight
5 wksFull overhaul

Context: the part the owner didn't expect: in a post-launch survey, customers rated the new site as "more premium" than the old one, despite it having strictly fewer effects, fonts, and moving parts. Speed itself reads as quality. The store didn't trade beauty for performance; the weight was never buying beauty in the first place.

08 Why It Worked

Three decisions carried the result.

Pricing design decisions in milliseconds changed every conversation Biggest lever

"Should we keep the hero video?" is a taste debate that the prettiest argument wins. "The hero video costs 1.8 seconds and 90% of mobile users scroll past it within one second" is a business decision that takes thirty seconds. Attributing every kilobyte to its design decision turned a vague technical project into a sequence of easy calls, and the owner made cuts we could never have talked them into with aesthetics arguments.

Replacing instead of deleting kept the brand intact Design-led

Every removal was paired with a lighter design solving the same problem: photo for video, CSS for parallax, one variable font doing the work of four families. That's why the post-launch survey read "more premium" instead of "stripped down," and why the owner stayed bought-in through five weeks of cuts. Speed projects fail politically before they fail technically; giving the design team the knife instead of fighting them for it is what keeps the brand whole.

The budgets made it permanent Durability

Six months on, two holiday campaigns and one app installation later, the homepage still loads under 2.2 seconds, because every addition had to fit the documented budget or displace something. The store that got slow one unaccounted yes at a time now accounts for every yes. That rule, one page in the brand guidelines, is worth more than the entire one-time optimization.

09 Key Takeaways for Store Owners

1
Run PageSpeed Insights on your top three pages today.

It's free and takes two minutes. If mobile load exceeds 3 seconds, Google's research says the majority of your mobile visitors are gone before your store finishes introducing itself.

2
Audit your apps with one question each.

What revenue does this produce, and what does it cost in load time? Most stores carry several apps with no answer to the first question, all of them charging every visitor in milliseconds.

3
Images first, always.

WebP format, responsive sizes, lazy loading below the fold. On most Shopify stores this is over half the total weight and none of the visual quality buyers can actually perceive at device resolution.

4
Replace heavy elements, don't just delete them.

Identify the job each heavy element does, then design a lighter way to do it. A photo can carry a video's message; CSS can carry an effect. Deletion makes a store barer; redesign makes it faster and better at once.

5
Write a weight budget into your brand guidelines.

A per-template load target that every new app, section, and campaign asset must fit inside. Optimization is an event; a budget is a policy. Only the policy survives your next marketing push.

What Is Your Store's Weight Costing You?

We'll profile every page, attribute every kilobyte to the design decision behind it, and show you the cuts that pay for themselves, without making your store look cheaper.

Reading Time: 9 minutes · Category: Ecommerce Design · Site Speed · Core Web Vitals