Journal

WordPress to Astro Migration Checklist

Published by Aisha A. on Last modified Web, Mobile & Commerce

WordPress to Astro Migration Checklist

A WordPress to Astro migration is not just a front-end rebuild. It is a website migration, a CMS decision, a redirect project, a content cleanup, and an analytics parity exercise happening at the same time.

The move makes sense when WordPress has become slower than the marketing team needs: too many plugins, brittle themes, security updates, messy content, and landing pages that take too long to ship. Astro can help because its islands architecture renders most of a page as static HTML and only loads JavaScript for the interactive components that need it, according to the official Astro islands documentation.

The risk is that a faster site can still lose search visibility if the migration drops URLs, changes canonicals, loses metadata, breaks images, or stops tracking conversions. Treat this as an SEO launch system, not a design refresh.

For the broader platform decision, compare Astro vs WordPress first. If the move is already likely, pair this checklist with a website migration audit and the full website migration SEO checklist before launch.

A visual map showing the main risk areas in a WordPress to Astro migration

When should a WordPress site move to Astro?

A WordPress site should move to Astro when the current stack is blocking speed, security, ownership, or campaign delivery. The strongest cases are marketing sites, content hubs, product pages, docs, and landing-page systems where the public site can be mostly static but still needs selective interactivity.

Look for these triggers before recommending a rebuild:

  • Plugin drag: SEO, forms, caching, page builders, redirects, schema, and tracking depend on a fragile plugin stack.
  • Performance issues: Core Web Vitals work has become a recurring maintenance task instead of a one-time cleanup.
  • Security maintenance: WordPress core, themes, plugins, user roles, and database exposure require constant patching.
  • Brittle themes: small content or plugin changes create layout bugs because pages rely on a visual builder or old theme framework.
  • Messy content: posts, pages, media, revisions, shortcodes, categories, and metadata have drifted over years.
  • Slow landing-page delivery: marketing needs reusable page patterns, cleaner components, and faster launch cycles.

Do not migrate only because Astro is fashionable. If the site is a true application, has heavy logged-in behavior, or works well enough with a smaller optimization pass, the better move may be to fix WordPress, simplify plugins, or rebuild only the pages that are creating business drag.

Pre-migration inventory

The pre-migration inventory is the part of the project that protects SEO. Before rebuilding templates, create one working inventory that combines the current site crawl, WordPress exports, analytics, Search Console, redirect plugins, server rules, and paid media landing pages.

At minimum, capture these items:

Inventory itemWhat to captureWhy it matters
URLsLive pages, posts, taxonomy pages, redirects, PDFs, gated assets, and high-value historical URLsPrevents lost pages, surprise 404s, and missed redirect rules
TemplatesHomepage, landing pages, blog posts, category pages, author pages, case studies, and legal pagesShows what needs a reusable Astro layout rather than one-off rebuild work
Posts and pagesTitles, body content, slugs, publish dates, modified dates, authors, categories, tags, and excerptsKeeps content structure intact during the CMS move
MediaImage paths, file names, alt text, captions, featured images, Open Graph images, PDFs, and download URLsPrevents broken images and protects accessibility metadata
RedirectsPlugin redirects, server redirects, legacy campaign URLs, uppercase variants, trailing slash rules, and deleted contentGives the launch team a redirect map before DNS changes
MetadataMeta titles, descriptions, canonicals, robots directives, Open Graph tags, and Twitter card tagsPrevents search snippets and sharing previews from regressing
SchemaArticle, Breadcrumb, Organization, Product, FAQ, LocalBusiness, and other JSON-LD blocksPreserves rich-result eligibility where it already exists
FormsContact forms, lead magnets, newsletter forms, hidden fields, thank-you pages, spam controls, and CRM routingPrevents lost leads after launch
AnalyticsGA4 property, GTM container, pixels, conversion events, consent tags, UTM rules, and paid media importsKeeps reporting and bidding signals continuous
IntegrationsCRM, email platform, payment tools, scheduling, search, memberships, personalization, and APIsIdentifies dynamic work that may need serverless routes or a CMS integration

This is also where you decide what not to migrate. Thin tags, duplicate archives, obsolete landing pages, old author pages, and expired campaign URLs should be mapped intentionally: keep, consolidate, redirect, noindex, or return a proper 404/410.

Choose the content model before the build

The content decision shapes the entire WordPress migration checklist. Do this before component design, because the editing workflow determines how content moves through Astro.

Option 1: Full static export

Use a full static export when the site has a manageable content library and the team is comfortable with Git, Markdown, MDX, or a lightweight editor on top of the repository.

This path usually gives the cleanest rebuild. WordPress is retired, content is cleaned into Markdown or MDX, images are normalized, and templates are rebuilt around Astro content collections. Astro says content collections are designed for structured sets such as blog posts, product descriptions, and other repeatable content, with schema validation and type safety.

Choose this when performance, security, and ownership matter more than keeping the WordPress editing screen.

Option 2: Headless WordPress

Use headless WordPress when the editorial team still needs the WordPress dashboard, permissions, plugins, or publishing workflow.

In this model, WordPress remains the CMS and Astro becomes the public front end. Astro’s official WordPress guide notes that WordPress can be used as a headless CMS and connected through the built-in REST API or GraphQL plugins. The WordPress REST API handbook explains that the API exposes posts, pages, taxonomies, and other data as JSON.

This can be a good transitional model, but it is not maintenance-free. WordPress still needs updates, hosting, security controls, editorial governance, and preview handling.

Option 3: Astro content collections with a new CMS

Use Astro content collections with a new CMS when the team wants a cleaner editing workflow but not necessarily Git-based editing. Sanity, Storyblok, Payload, Decap, Contentful, and other CMS options can feed Astro at build time or request time.

This path is usually best when the current WordPress content model is part of the problem. It lets you design content types around how the marketing site actually works: services, journal posts, authors, landing pages, testimonials, case studies, locations, and FAQs.

The SEO-safe launch checklist

Google’s site-move guidance is simple in principle and unforgiving in execution: prepare the new site, create a URL mapping, implement redirects, and monitor both old and new URLs after launch. Google’s documentation also says ranking fluctuation can happen during a move while pages are recrawled and reindexed, which is why the checklist matters.

Use this website migration SEO checklist as the launch control:

  1. Freeze the URL inventory. Export the final legacy URL list from WordPress, crawler data, Search Console, analytics, sitemap files, redirect plugins, and server rules. Mark each URL as keep, redirect, merge, noindex, 404, or 410.

  2. Build one-to-one redirect rules. Every meaningful old URL should resolve directly to its best new equivalent. Google recommends permanent server-side redirects such as 301 or 308 where possible and warns against long redirect chains in its site move documentation.

  3. Preserve or improve canonical tags. Each indexable Astro page needs a production canonical URL. Google treats canonicalization as a way to identify the preferred URL among duplicates, so do not let staging domains, trailing slash variants, or paginated paths point to the wrong target.

  4. Rebuild metadata from the inventory. Carry over or rewrite meta titles, meta descriptions, Open Graph images, robots directives, and social card tags. Do not let the new system generate generic defaults across the site.

  5. Recreate schema deliberately. Rebuild existing JSON-LD for Article, Breadcrumb, Organization, Product, FAQ, LocalBusiness, or other page types where it still fits the page. Test important templates with Google’s Rich Results Test before launch.

  6. Generate a clean sitemap. The live sitemap should include only indexable, canonical, 200-status URLs. Google’s sitemap guidance frames sitemaps as a way to help search engines discover important URLs, but they are not a substitute for clean internal links or redirects.

  7. Crawl staging against the old site. Compare titles, headings, canonicals, metadata, schema, image references, internal links, and status codes. Fix missing images, broken links, wrong slugs, and staging canonicals before DNS changes.

  8. Verify forms and analytics. Submit every lead form, test thank-you states, confirm CRM delivery, check GA4 realtime reports, verify GTM triggers, and confirm ad platform conversion events if paid campaigns depend on the site.

  9. Launch during a lower-risk window. Avoid major campaign launches, product announcements, and peak traffic periods. Keep the old WordPress install accessible privately for recovery, but do not let it remain indexable as a duplicate site.

  10. Monitor for 8 weeks. Watch Search Console indexing, crawl stats, 404s, sitemap submissions, organic landing pages, rankings, leads, conversion events, and paid campaign performance. Fix issues by URL, not by broad guesses.

A launch control loop for checking redirects, canonicals, sitemap, analytics, and Search Console after migration

Common migration risks and how to avoid them

Most WordPress to Astro migration problems are not caused by Astro. They come from missing inventory, unclear ownership, rushed redirects, and content decisions made after the build has already started.

RiskWhat goes wrongPrevention
Lost URLsOld posts, PDFs, taxonomy pages, or campaign pages return 404sBuild the URL map from crawler data, WordPress exports, analytics, Search Console, and redirect plugins
Missing imagesOld /wp-content/uploads/ paths break or alt text is lostDownload and map media assets, preserve alt text, and test rendered pages before launch
Changed slugsNew clean URLs accidentally replace URLs that already rankKeep ranking URLs where possible; redirect only when the new URL is clearly better
Broken internal linksPages link through old WordPress paths or redirect chainsRewrite internal links to final Astro URLs before launch
Analytics gapsGA4, GTM, pixels, or conversion events stop firingCreate tracking parity tests and verify realtime data before DNS changes
CMS confusionEditors do not know whether to update WordPress, Markdown, or a new CMSDecide the content model early and document ownership before handoff
Schema lossRich-result markup disappears during template rebuildAudit current JSON-LD, rebuild it in shared Astro metadata components, and validate templates
Canonical mistakesStaging URLs, duplicate slash variants, or paginated pages become canonicalGenerate canonicals from the production site URL and crawl staging for mistakes

Technical checks inside the Astro build

Astro will not automatically solve SEO because the framework is fast. The build still needs SEO decisions encoded in layouts, data models, and deployment behavior.

Set these controls in the project:

  • Use a shared metadata component for title, description, canonical, Open Graph, Twitter card, robots, and schema behavior.
  • Validate content frontmatter so missing descriptions, invalid dates, or overlong titles fail before deployment.
  • Keep pages semantic: one H1, clean heading order, descriptive image alt text, and useful internal links.
  • Generate the sitemap from the same URL source the templates use.
  • Keep redirects in version control when the list is small, and use edge-level redirect tools for large legacy maps.
  • Test the production build, not only the local development server.
  • Keep important pages readable in HTML without relying on client-side rendering for core content.

The point is not to make Astro imitate WordPress. The point is to rebuild the site as a smaller, more controlled publishing system.

What to do in the first 48 hours after launch

The first 48 hours are for detection, not celebration. Have one person own the issue log and triage by severity.

Check these first:

  • Homepage, top organic landing pages, and top paid landing pages return 200.
  • Top legacy URLs redirect directly to the correct new URL.
  • Sitemap is live and submitted in Search Console.
  • Robots.txt allows production crawling and references the correct sitemap.
  • Canonicals point to production URLs.
  • Key templates render expected metadata and schema.
  • Lead forms reach the CRM or inbox.
  • GA4 realtime reports show traffic and conversion events.
  • Paid media URLs and UTM parameters land on the right pages.
  • Search Console starts showing expected discovery and indexing behavior.

Then keep a daily watchlist for the first week and a weekly watchlist through week 8. Separate normal migration volatility from fixable errors: spikes in 404s, missing canonical pages, sitemap exclusions, dropped conversion events, or sudden declines isolated to a specific directory.

When Hapy Co should help

If the project is a small blog, a careful internal team may be able to migrate from WordPress to Astro with the checklist above. If the site carries meaningful organic traffic, paid acquisition, lead generation, or content operations, the migration deserves a risk audit before the rebuild.

Hapy Co’s Astro website migration engagement is built around that exact problem: preserve what is already working, rebuild what is slowing the team down, and launch without casually risking SEO, analytics, forms, redirects, or the content workflow.

The practical rule is simple: do not start the Astro build until the migration inventory exists. A fast new site is only a win if the business keeps its rankings, links, leads, and ability to publish.


Share with others

Continue reading

More journal notes worth your time