All gating budgets met. The legacy build breaches 7 of 7 budgets and would fail the pipeline; the remediated build passes every one. Only the remediated build gates — the legacy build is kept as a fixture so the budgets are proven capable of failing.
Before and after
Each bar is scaled to the worse of the two values, so the gap is the point rather than the absolute width. The final column is the reduction.
| Metric | Legacy build | Remediated build | Change |
|---|---|---|---|
| Largest Contentful Paint budget ≤ 2,500 ms | −90% | ||
| First Contentful Paint budget ≤ 1,800 ms | −92% | ||
| Speed Index budget ≤ 3,400 ms | −92% | ||
| Total Blocking Time budget ≤ 200 ms | −100% | ||
| Cumulative Layout Shift budget ≤ 0.100 | −100% | ||
| Total transfer size budget ≤ 391 KB | −99% |
Legacy build vs budget
Not gating — kept to prove the budgets can fail.
| Metric | Measured | Budget | Status |
|---|---|---|---|
| Performance score | 20 | ≥ 90 | Breached |
| Largest Contentful Paint | 9,243 ms | ≤ 2,500 ms | Breached |
| Total Blocking Time | 1,947 ms | ≤ 200 ms | Breached |
| Cumulative Layout Shift | 0.197 | ≤ 0.100 | Breached |
| First Contentful Paint | 8,952 ms | ≤ 1,800 ms | Breached |
| Speed Index | 8,952 ms | ≤ 3,400 ms | Breached |
| Total transfer size | 880 KB | ≤ 391 KB | Breached |
Remediated build vs budget
This is the gate. A breach here fails the build.
| Metric | Measured | Budget | Status |
|---|---|---|---|
| Performance score | 100 | ≥ 90 | Within budget |
| Largest Contentful Paint | 906 ms | ≤ 2,500 ms | Within budget |
| Total Blocking Time | 0 ms | ≤ 200 ms | Within budget |
| Cumulative Layout Shift | 0.000 | ≤ 0.100 | Within budget |
| First Contentful Paint | 756 ms | ≤ 1,800 ms | Within budget |
| Speed Index | 756 ms | ≤ 3,400 ms | Within budget |
| Total transfer size | 11 KB | ≤ 391 KB | Within budget |
What Lighthouse suggested fixing
The top opportunities reported on the legacy build, largest saving first. These are what turn a red budget into a task list.
| Opportunity | Time saved | Bytes saved |
|---|---|---|
| Minify JavaScript | 600 ms | 115 KB |