01 · Context
A B2B SaaS business had outgrown a popular template-based site. Editors waited on a third party to ship copy changes; Core Web Vitals were red across every page; and the content model made any structural change a full rebuild.
02 · Constraints
Everything the solution had to respect from day one.
- 01
No loss of SEO equity. 200+ indexed URLs had to resolve correctly with 301s on day one.
- 02
A performance budget enforced in CI (LCP ≤ 1.8s, CLS ≤ 0.05) for every pull request.
- 03
Editors had to be able to ship a new page without a developer.
03 · Approach
What we actually built and why, in the order it happened.
- 01
Rebuilt on Next.js with a structured content model in a headless CMS, mapped one-to-one against the editor's mental model.
- 02
Wrote a small design system (tokens, primitives, page-level compositions) instead of importing a component library. Nothing on the page was not understood.
- 03
Enforced the perf budget with a CI check that failed the PR if LCP or CLS regressed.
- 04
Shipped redirects before the cut-over, verified with a crawl against production, and monitored the index for a fortnight.
04 · Result
Core Web Vitals moved from 46 to 98 out of 100. Organic traffic rose 41% within ninety days of launch. Time to first byte fell from 1.4s to 190ms on cached routes. Editors now ship new pages without engineering involvement.
- Core Web Vitals
- 46 → 98 / 100
- Organic traffic (90d)
- +41%
- Time to first byte
- 1.4s → 190ms