Free, printable and ungated
Get Your Free WordPress to Next.js Migration Checklist
A practical WordPress to Next.js migration checklist for protecting URLs, content, SEO, analytics, forms and rollback readiness before launch.
Last reviewed September 2026 · For website owners, marketers and engineering teams
Key takeaways
- Map every URL before launch; use exact one-hop redirects and a clear canonical destination.
- Preserve intent, proof, media, forms and analytics—not just the visible paragraph copy.
- Do not call a migration ready until rollback, monitoring and ownership are documented.
How to use this checklist
What counts as “done”?
A tick is not a feeling. For each item, record the evidence, link or owner that makes the decision reviewable. If evidence is missing, mark the item “ready with conditions” and name the follow-up rather than hiding the risk.
Critical items pass and rollback is tested.
Known non-critical work has an owner and date.
URLs, forms, tracking or recovery remain unverified.
1. Discovery and ownership
Agree what success means and preserve the source before anyone starts redesigning it.
Name the migration owner and final approver
Why it matters: Unowned decisions create late route, copy and launch changes.
Evidence / done when: A named owner, approver and decision log exist.
Define business goals, constraints and launch window
Why it matters: A migration is a business release, not only a framework swap.
Evidence / done when: Goals, non-goals, dependencies and a freeze date are written down.
Export and preserve the source site
Why it matters: The old site is your recovery path and evidence of what was published.
Evidence / done when: A restore-grade backup, media archive and export have been inspected.
Inventory URLs, content states and dependencies
Why it matters: Unlisted drafts, protected pages and integrations can still matter at cutover.
Evidence / done when: Published, draft, noindex, gated and system URLs are classified.
2. URL and information architecture
Make one deliberate decision for every old URL before the new site is indexed.
Map every URL to keep, consolidate, redirect or retire
Why it matters: Search equity follows clear destinations, not vague homepage redirects.
Evidence / done when: The route register has an owner, destination and reason for every record.
Choose one canonical URL for each surviving topic
Why it matters: Competing URLs dilute relevance and create duplicate-content signals.
Evidence / done when: Canonical, sitemap and internal-link destinations agree.
Create one-hop redirects with no loops or chains
Why it matters: Chains slow crawlers and make recovery harder.
Evidence / done when: Automated redirect checks pass for representative legacy routes.
Check breadcrumbs, navigation, related links and CTA destinations
Why it matters: A valid route still fails if users cannot discover the next step.
Evidence / done when: Desktop and mobile paths reach the intended page or form.
3. Content and editorial fidelity
Preserve meaning, evidence and search intent rather than copying only visible paragraphs.
Preserve search intent, headings and useful depth
Why it matters: A shorter page can lose the questions that earned visibility.
Evidence / done when: The new page answers the same intent with an approved structure.
Carry over links, quotes, tables, downloads and proof
Why it matters: These elements often carry trust and conversion value.
Evidence / done when: A content comparison has been reviewed by the page owner.
Review claims, testimonials, labels and dates
Why it matters: Old copy can be accurate historically but unsafe as a current claim.
Evidence / done when: Every material claim has a source, approval or intentional rewrite.
Keep page-specific CTAs and supporting proof
Why it matters: Generic forms hide the reader's intent and reduce useful conversion data.
Evidence / done when: Each CTA has a destination and a tested success state.
4. SEO, AEO and structured data
Give search engines and answer engines a consistent, inspectable description of every page.
Use the primary keyphrase in title, H1, introduction and a useful H2
Why it matters: Clear topical language helps humans and retrieval systems understand the page.
Evidence / done when: The phrase is natural, specific and supported by the page content.
Set unique metadata, canonical and social cards
Why it matters: Search snippets and shared links are part of the page experience.
Evidence / done when: Rendered HTML contains the intended title, description, canonical and OG values.
Add only visible, accurate schema
Why it matters: Structured data should describe what a visitor can actually see.
Evidence / done when: Article, HowTo, FAQ and BreadcrumbList output validates against visible content.
Inspect sitemap, robots, 404s and redirects
Why it matters: Indexing controls can undo otherwise excellent content work.
Evidence / done when: Production crawl and Search Console inspection show the intended state.
5. Media and embeds
Treat images, videos, logos and downloads as content and performance dependencies.
Inventory images, PDFs, videos, audio and downloads
Why it matters: A migration can silently break assets even when HTML returns 200.
Evidence / done when: Asset URLs, ownership and replacement decisions are recorded.
Preserve meaningful alt text, captions and credits
Why it matters: Accessible context is also useful context for search and sharing.
Evidence / done when: Decorative images are marked and informative images have specific alt text.
Check responsive sizes, loading and embeds
Why it matters: Oversized media damages mobile experience and Core Web Vitals.
Evidence / done when: Representative pages are checked at mobile and desktop widths.
Confirm partner marks are approved and not distorted
Why it matters: Brand and rights mistakes create avoidable trust and legal risk.
Evidence / done when: Logo usage matches current approval and preserves clear space.
6. Forms, analytics and integrations
Preserve the signals and handoffs that make the website commercially useful.
Rebuild fields, validation and confirmation states
Why it matters: A form that looks right but drops submissions is a launch failure.
Evidence / done when: Valid, invalid, loading, success and failure states have been tested.
Verify delivery, logging, spam controls and consent
Why it matters: Lead handling must be reliable and privacy-aware.
Evidence / done when: A test submission reaches the approved destination with consent recorded.
Recreate approved page-view, CTA and form events
Why it matters: Without baselines you cannot distinguish traffic from conversion problems.
Evidence / done when: Events are visible in the approved analytics property and documented.
Keep secrets out of client bundles
Why it matters: Public browser code is not a place for private integration credentials.
Evidence / done when: Build output and environment review show only intentionally public values.
7. Application and design system
Use shared patterns without flattening the differences that make important pages useful.
Create shared templates without flattening page differences
Why it matters: A service page, article and case study have different jobs.
Evidence / done when: Each page type has an approved content contract and hierarchy.
Standardise type, buttons, spacing and focus states
Why it matters: Consistency improves comprehension and lowers interaction friction.
Evidence / done when: Design tokens and keyboard focus are consistent across routes.
Add branded 404, loading and error states
Why it matters: Recovery experiences protect trust when something goes wrong.
Evidence / done when: Invalid, slow and failed states are visible, useful and on-brand.
Centralise company details across footer, contact and schema
Why it matters: Conflicting organisation data weakens trust and entity signals.
Evidence / done when: Name, address, contact and legal links match everywhere.
8. Accessibility and responsive QA
Test the actual interaction surface, not only a single screenshot at one width.
Test 320px through 1440px representative widths
Why it matters: Headers, tables, CTAs and cards often fail between design breakpoints.
Evidence / done when: No unintended horizontal scrolling or clipped controls are present.
Test keyboard navigation, focus and accessible names
Why it matters: Keyboard and assistive-technology users need the same clear path.
Evidence / done when: Menus, accordions, dialogs and forms work without a mouse.
Check contrast, long headings and text zoom
Why it matters: Readability is a conversion and accessibility requirement.
Evidence / done when: Contrast and 200% zoom checks pass on content-heavy pages.
Test mobile sticky CTAs and consent UI
Why it matters: Fixed elements can cover content or make forms impossible to use.
Evidence / done when: Sticky elements remain dismissible and do not obscure primary actions.
9. Automated quality gates
Turn quality into repeatable evidence before a human approves the release.
Run TypeScript, lint and the production build
Why it matters: A local development server can hide build-only failures.
Evidence / done when: The release build completes from a clean checkout.
Run link, crawl, redirect, metadata and schema checks
Why it matters: Automated coverage catches omissions faster than manual browsing.
Evidence / done when: The repository validation commands pass with recorded output.
Run form, menu, responsive and accessibility tests
Why it matters: Critical interactions need more than a static visual review.
Evidence / done when: Representative automated and manual flows pass.
Review screenshots and record failures with owners
Why it matters: Unresolved ambiguity becomes production debt when it is not assigned.
Evidence / done when: The release record names any accepted risk and follow-up owner.
10. Cutover and rollback
Launch only when you can explain how to verify, monitor and recover the change.
Freeze content and route changes
Why it matters: A moving source makes comparison and rollback ambiguous.
Evidence / done when: The freeze window and last source export are recorded.
Verify domains, variables, TLS and deployment settings
Why it matters: Infrastructure errors can make a good build unavailable.
Evidence / done when: The target host serves the intended domain with production values.
Smoke-test pages, forms, redirects, sitemap and robots
Why it matters: The first minutes after cutover are the best time to catch obvious failures.
Evidence / done when: A signed smoke-test record covers critical routes and actions.
Keep the previous origin and restore instructions
Why it matters: A rollback plan is only useful when it can be followed under pressure.
Evidence / done when: The old origin, backups and named rollback owner remain available.
Monitor crawl errors, availability, indexing and conversions
Why it matters: Some migration effects appear days after launch.
Evidence / done when: 72-hour and weekly review checkpoints are scheduled and owned.
“A migration is ready when the business can explain what changed, what stayed the same and how it will recover.”
WiselyWise migration principle
Turn the checklist into a decision
Want an independent readiness review?
We can help separate engineering work, editorial judgement and work that should stay out of scope.
Written by
Chandra Kumar
Founder, WiselyWise · AI, education and business transformation
Chandra writes about practical technology decisions, digital transformation and the operating discipline required to make change useful.
Continue reading
Related articles and resources
How to Move from WordPress to Next.js Without Losing SEO
A guide to preserving content, search intent, forms and analytics.
Read more →WordPress to Next.js migration case study
A real production migration from Divi to Next.js and Vercel.
Read more →WiselyWise Learning Center
More practical guides, articles and resources.
Read more →