# SAMPLE AUDIT: Shopify Page-Speed & Core Web Vitals Audit
**Store:** theme-dawn-demo.myshopify.com  |  **Page tested:** https://theme-dawn-demo.myshopify.com/  |  **Tested:** 2026-09-30 20:23 PT  |  **Tool:** Lighthouse 13.5.0 (same engine as Google PageSpeed Insights)
> **SAMPLE AUDIT of a Shopify theme demo store, not a customer.** The page tested is Shopify's official public demo storefront for its free Dawn theme (themes.shopify.com). It is not a real customer, was not commissioned, and no company brand is being assessed. It is used only to show the report format. All numbers are real lab measurements taken on the date above; they describe one page load under simulated conditions, not any real-customer experience.

## 1. Summary (plain English)
On a simulated mid-range phone with a slow 4G connection, this page scores **93/100** (Needs work loading, Good responsiveness, Good visual stability). On desktop it scores **99/100**.
**Read this first:** the simulated-phone LCP (2.9 s) is far worse than the un-throttled LCP measured in the same run (231 ms). The big gap means the page is heavy on JavaScript and images, which hurts a lot on slow phones/networks. It does not mean every visitor waits that long.

## 2. Scores and Core Web Vitals (lab data)
| Metric | What it means | Mobile | Desktop | Target |
|---|---|---|---|---|
| Performance score (0-100) | Lighthouse overall | 93 | 99 | >= 90 |
| LCP - Largest Contentful Paint | when the main content appears | 2.9 s (Needs work) | 774 ms (Good) | <= 2.5 s |
| FCP - First Contentful Paint | when anything first appears | 1.9 s (Needs work) | 577 ms (Good) | <= 1.8 s |
| TBT - Total Blocking Time | lab proxy for INP (tap responsiveness) | 100 ms (Good) | 0 ms (Good) | <= 200 ms |
| CLS - Cumulative Layout Shift | how much the page jumps around | 0.000 (Good) | 0.000 (Good) | <= 0.1 |
| Speed Index | how fast the page fills in | 1.9 s (Good) | 829 ms (Good) | <= 3.4 s |

*Mobile value shown is the median-scoring of 3 run(s); desktop of 3 run(s). INP cannot be measured in a lab test without a real user, so TBT is used as the stand-in (per Google's web.dev/vitals guidance). Targets are Google's published Core Web Vitals thresholds (LCP 2.5 s, INP 200 ms, CLS 0.1).*

**Run-to-run variation (mobile):** score 93-94; LCP 2.9 s - 3.0 s. Lab numbers move between runs; treat them as a range, not an exact figure.

**Caveat on mobile LCP:** Lighthouse's headline mobile numbers are *simulated* (it loads the page fast, then mathematically models a slow phone/network). In this run the un-throttled *observed* FCP/LCP were 190 ms / 231 ms. Real customers land somewhere between the two, depending on their device. Real-visitor (field) data from Chrome's CrUX report was **not included**: the CrUX API needs a Google API key, which this sample did not use.

## 3. What speed could be worth (ROI, illustrative)
> **Illustrative estimate using example inputs, not a guarantee.** The store traffic, conversion rate and order value below are **placeholders**, not this store's real numbers. Nothing on this page is a customer result, a forecast of your sales or a promise.

### 3a. Before vs after: speed
'After' values start from the measured numbers and subtract Lighthouse's own estimated savings for this page (largest single estimate per metric, not added together): LCP −0.3 s. The 'after' score is modelled with Lighthouse's published scoring curves. **It was not re-measured**; it is what the page would score *if* the fixes in section 4 deliver Lighthouse's estimate.


![Mobile LCP before vs after (illustrative)](charts/theme-dawn-demo-myshopify-com_lcp.svg)

![Mobile score before vs after (illustrative)](charts/theme-dawn-demo-myshopify-com_score.svg)



Mobile LCP: **2.87 s → 2.57 s**; mobile score: **93 → 95** (modelled).

### 3b. What the research says
A study commissioned by Google and run by fifty-five and Deloitte Digital (*Milliseconds Make Millions*, 2020) tracked mobile sessions across 15 retail brands (20.5 million sessions, 4 weeks). When **mobile load speed improved by just 0.1 second** (across four speed measures on every page), retail **conversions rose 8.4%** and **average order value rose 9.2%**. It is an observed correlation across a few brands, not a guarantee, and it is for a 0.1-second improvement, so we do **not** multiply it for bigger speed gains.

Sources: [web.dev summary](https://web.dev/case-studies/milliseconds-make-millions) · [Deloitte](https://www.deloitte.com/ie/en/services/consulting/research/milliseconds-make-millions.html) · [Full report (PDF)](https://www.thinkwithgoogle.com/_qs/documents/9757/Milliseconds_Make_Millions_report_hQYAbZJ.pdf)

### 3c. Example ROI calculator (illustrative)
Lighthouse estimates at least 0.3 s of LCP savings here, so the study's 0.1-second effect is a fair reference point. We use only **conversion** (not the +9.2% order-value finding) and apply only a **fraction** of the 8.4% for the low and base cases:

| Step | Low | Base | High |
|---|---|---|---|
| Assumed share of the study's +8.4% effect (our haircut) | 25% | 50% | 100% |
| Conversion uplift used | +2.1% | +4.2% | +8.4% |
| Example monthly mobile sessions (placeholder) | 10,000 | 10,000 | 10,000 |
| Conversion rate before, then after | 1.50% → 1.53% | 1.50% → 1.56% | 1.50% → 1.63% |
| Example average order value (placeholder) | $65 | $65 | $65 |
| Monthly revenue before | $9,750 | $9,750 | $9,750 |
| **Monthly revenue after (illustrative)** | **$9,955** | **$10,160** | **$10,569** |
| Extra revenue per month | +$205 | +$410 | +$819 |
| 12-month extra revenue (fixes live from month 2) | $2,252 | $4,504 | $9,009 |

*Formula: monthly revenue = sessions × conversion rate × average order value. After = same formula with the conversion rate × (1 + uplift). Replace the placeholder inputs with your own numbers from Shopify analytics to get your own estimate.*


![Illustrative monthly revenue before vs after (illustrative)](charts/theme-dawn-demo-myshopify-com_revenue.svg)

![Illustrative cumulative extra revenue (illustrative)](charts/theme-dawn-demo-myshopify-com_cumulative.svg)



On these placeholder inputs the base case adds about **$410 per month**, which would cover the $99 audit price in under one month of post-fix sales. **This does not include the time or cost of making the fixes** (your developer, app changes), nor seasonality, ad spend changes or anything else that moves sales.

**Why you should treat this cautiously:** the study is a 2019 retail sample, correlation is not causation, your store, audience and starting speed are different, and a lab score is not what shoppers experience. A store with much smaller traffic or conversion would see proportionally smaller numbers. Use this as a way to size the opportunity, not to predict it.

## 4. Prioritised fix list
Ordered by expected impact on the mobile result. This is the list the ROI section above assumes you act on. 'Impact' is Lighthouse's own estimate or a plain-language rating tied to the measured value; it is **not** a promise of a specific score gain or revenue change.

| # | Fix | Impact | Difficulty |
|---|---|---|---|
| 1 | Shrink and modernise images | High (page weight) | Easy |

**1. Shrink and modernise images**  
*Evidence:* 3 images are larger or older-format than they need to be. Lighthouse estimates ~104 KB could be saved. Largest examples: `theme-dawn-demo.myshopify.com/…/141569803_417219312901458_4638470652865432174_n.jpg` (saves ~62 KB); `theme-dawn-demo.myshopify.com/…/Mlouye_-_Shoe_collection.jpg` (saves ~27 KB); `theme-dawn-demo.myshopify.com/…/Shoes_and_bag.jpg` (saves ~15 KB).  
*What to do:* Upload images at the size they are actually shown, let Shopify serve WebP/AVIF (use the `image_url` filter with `width` and a `srcset`), and re-compress hero/banner art before uploading. For images hosted by a third-party tool (e.g. a marketing app), fix it in that app.

## 5. Third-party scripts and requests
Page transferred **1,700 KB** in 266 requests (measured by Lighthouse). Requests to domains other than the store's own:

| Third party | Requests | Transferred | Main-thread time |
|---|---|---|---|
| Shopify | 36 | 57 KB | 65 ms |
| shop.app | 1 | 4 KB | - |

Total third-party transfer: **62 KB** (4% of page). *Main-thread time is only shown where Lighthouse attributed script CPU time to that domain. Note: Lighthouse's own 3rd-party summary failed in this run (tool bug), so this table is computed from the raw request log.*

## 6. Images
25 image requests, **361 KB** total (21% of page weight). Largest images:

| Image | Size | Host |
|---|---|---|
| `theme-dawn-demo.myshopify.com/…/141569803_417219312901458_4638470652865432174_n.jpg` | 99 KB | theme-dawn-demo.myshopify.com |
| `theme-dawn-demo.myshopify.com/…/Mlouye_-_Shoe_collection.jpg` | 37 KB | theme-dawn-demo.myshopify.com |
| `theme-dawn-demo.myshopify.com/…/Mlouye_-_Bags_collection.jpg` | 35 KB | theme-dawn-demo.myshopify.com |
| `theme-dawn-demo.myshopify.com/…/Shoes_and_bag.jpg` | 35 KB | theme-dawn-demo.myshopify.com |
| `theme-dawn-demo.myshopify.com/…/Mlouye_video.png` | 30 KB | theme-dawn-demo.myshopify.com |

Lighthouse flags 3 images as improvable (estimated savings ~104 KB).

HTML check (raw page source): 25 `<img>` tags; 0 missing width/height; 0 with no `alt` attribute; 9 with empty `alt`; 22 lazy-loaded. Note that many images on modern themes are inserted by JavaScript and will not appear in raw HTML.

## 7. Store technology (detected from public HTML)
- Shopify store: **yes** (Shopify CDN/`Shopify.theme` present)
- Theme: **Dawn** (base: Dawn 15.0.0, role: main)
- HTML document size: 241 KB uncompressed; 17 external `<script>` tags; ~36 KB inline JavaScript
- Server response time (TTFB): 60 ms

## 8. Method and limits
- Lab test only: Lighthouse via headless Chrome on a cloud Linux box, mobile emulation (Moto G Power, simulated slow 4G, 4x CPU slowdown) and desktop preset. No login, no store access, home page only.
- Lab numbers are reproducible but are not the same as what Google measures from real visitors (field data), which is what Google Search actually uses.
- Section 3 (ROI) is an illustrative model with placeholder business inputs and one published study (links in section 3). It is not a forecast of this store's sales. 'After' speed values are Lighthouse's own estimated savings, not a re-measurement.
- The audit itself is report-only; fixes are an optional add-on (section 9).
- Fix instructions are general guidance; a developer should test on a duplicate theme before publishing.

## 9. Optional add-on: Fix It For You
*The audit itself is report-only; fixes are an optional add-on.* **$199 to $599 per store.** Only available after you buy the $99 audit (or if you already have one of our reports). We apply the audit's top fixes where they apply to your store.

**Price and payment.** Where you land in the range depends on the audit findings: how poor the scores are and how much work the fixes need. The exact fixed price is quoted in writing after the audit and before any work starts. You pay only after you accept the written quote, using a payment link we send you by email.

**What's included**

- Compress, resize and convert oversized images to modern formats
- Add lazy loading and fix how the hero / LCP image loads
- Defer or remove unnecessary third-party scripts and leftover code from apps you no longer use
- Trim and clean theme code, including unused CSS and JavaScript
- Preload key fonts and assets
- Fix layout-shift (CLS) causes, such as images missing width and height
- Re-run the same audit afterwards and send you a before-and-after comparison

**What's NOT included**

- Redesigns or new features
- Building new pages
- Content or copywriting
- Purchasing paid apps
- Uninstalling any app without your approval
- Fixing slowness caused by your apps' own servers
- SEO or advertising work
- Ongoing maintenance
- A guarantee of any specific speed score, or of any change in sales or revenue

**What we need from you**

- Shopify staff or collaborator access. We send the access request, and you can remove it at any time
- Your approval of the written quote
- Your confirmation of which apps and scripts are safe to remove

**How we work safely**

- We work on a duplicate (unpublished) copy of your theme and never edit your live theme directly.
- We send you a preview link and a list of the changes.
- We publish only after you approve.
- Your original theme stays in place as a backup, so changes can be reverted.

**Timeline.** Typically 3-5 business days after you accept the quote and we have access. This is a typical time, not a guarantee.

**How to request it.** Email [elevate20llc@gmail.com](mailto:elevate20llc@gmail.com?subject=Fix%20It%20For%20You) with the subject “Fix It For You”. There is no payment link yet; we send one only after you accept the quote.

**Terms.** Every quote includes up to 2 rounds of revisions to the changes we made (adjustments to our work, not new features or new work). Full details of scope and price are in the written quote.