8,200 pages from WordPress to Astro, LCP 4.1s to 0.9s
✓ 8,200 pages migrated in one cutover with zero SEO loss
✓ LCP down 78% (4.1s → 0.9s), Core Web Vitals all-green
✓ +120% organic sessions within six months

Before → after

Metric Before After
Largest Contentful Paint (mobile) 4.1s 0.9s
Core Web Vitals in green 31% 98%
Organic sessions (6 months) 220k/mo 485k/mo

A digital publisher was losing ad revenue to a slow, bloated WordPress install. Every new article added more plugins, more render-blocking scripts, and more seconds to the load time, while organic traffic slowly bled to faster competitors.

The challenge

  • Page weight had ballooned from plugins, themes, and a decade of bolt-ons.
  • Core Web Vitals were failing on mobile, suppressing rankings.
  • The editorial team needed to keep publishing daily without touching a build pipeline.
  • Any migration had to preserve 8,000+ URLs, redirects, and schema, or risk a rankings cliff.

What we built

  1. Content extraction pulled every post, category, author, and media item out of WordPress into clean Markdown + frontmatter.
  2. Astro rebuild generated a fully static site, no database on every request, no plugin bloat, with NewsArticle JSON-LD and a clean sitemap.
  3. Redirect map generated 1:1 redirects for every old URL so no link equity was lost.
  4. Editorial workflow kept writers in a simple CMS-like flow that publishes straight to Cloudflare Pages, no engineering required.
  5. Cutover shipped the new site behind a staged DNS switch with full monitoring.

The results

The site went from a 4.1s mobile LCP to 0.9s, and Core Web Vitals moved from 31% to 98% passing. Six months later organic sessions had grown 121%, a compounding win driven by speed and clean technical SEO, not more content spend.

The takeaway

A migration is really a technical-SEO project with a new front end. Get the redirects, schema, and Core Web Vitals right and the traffic follows.

Stack AstroCloudflare PagesWordPressREST APIJSON-LD
“
The migration paid for itself in ad yield before the quarter ended. Pages feel instant now.
Daniel Head of Product · Publisher
Start a project like this ← All case studies