GuideWordPressNext.jsastro

WordPress to Next.js Migration Services

MigrateLab moves WordPress sites to code you own (Next.js or Astro, with Payload CMS for editors). Content comes out through the REST API, every plugin gets a written replacement plan, and a complete 301 map protects your rankings. Fixed-price, typically $5,000 to $25,000 in 4 to 10 weeks.

M

MigrateLab Team

Migration Experts

10 min read· Last updated
WordPress to Next.js Migration Services: Fixed Price, SEO Kept, Code You Own

Hire a WordPress Migration Team That Hands You Code You Own

A WordPress to Next.js migration for a 50 to 100 page site runs $5,000 to $25,000 fixed-price and takes 4 to 10 weeks. The price is set after we inventory your site and before you commit, so there is no hourly meter and no surprise invoice.

MigrateLab is a specialist migration service. We move WordPress sites to code you own (Next.js, or Astro when the site is mostly content, with Payload CMS so your editors keep a real editing screen), extract your content through the WordPress REST API, replace each plugin with owned code or a proper service, build a complete 301 redirect map, and hand over a Git repository your team and your AI tools can both work in.

This page is for teams who want to hand the work over. If you would rather run it yourself, read our complete WordPress to Next.js guide instead. Below is what you get, what it costs, what it costs to run afterwards, and when you should not do this at all.

Who This Is For

You are probably reading this because of one of these:

  • A plugin update broke something that makes money. Checkout, a lead form, a booking flow. The fix worked, but nobody can promise it will not happen again next month.

  • You pay someone every month just to keep it standing. Updates, security patches, compatibility checks. A maintenance retainer that buys stability, not progress.

  • Every change waits on a developer. The page builder makes small edits slow, and structural edits risky, so the backlog grows.

  • The site was hacked, or nearly was. You cleaned it up and now you want an architecture with fewer doors.

  • You want AI to edit the site, and you have found out that a theme plus 20 plugins plus a production database is not something an agent can safely change.

If none of those sound like you, read the section on when you should not hire us, further down. WordPress is fine for plenty of sites.

What a WordPress Migration Actually Involves

Most WordPress sites are older and more tangled than their owners think. The work that decides whether a migration goes well is the part nobody sees on the finished site.

Content comes out through the REST API, not the XML export. The Tools > Export file (WXR) carries posts, pages, terms and custom fields, but attachments arrive as URLs rather than files, and any plugin that stores data in its own tables is not in it at all. We page through /wp-json/wp/v2/ with per_page=100, read the X-WP-TotalPages header to know we have everything, and pull media files directly.

Shortcodes and blocks get converted, not pasted. The rendered content has already executed your shortcodes into plugin-specific HTML. The raw content (behind context=edit with authentication) still contains [gallery], [contact-form-7] and the HTML comments Gutenberg uses to mark each block, such as wp:columns. We parse the raw version and map each shortcode and block type to a real component, so your content stays structured instead of becoming a blob of old WordPress markup.

SEO metadata lives in plugin tables. Yoast keeps titles and descriptions in post meta (_yoast_wpseo_title, _yoast_wpseo_metadesc) and exposes the resolved values as yoast_head_json in the REST response. Rank Math and All in One SEO use their own keys. We carry every title, description, canonical and noindex flag across, per page.

Custom fields need a schema. ACF values only appear in the REST API when the field group has "Show in REST API" turned on. We turn it on, read the field definitions, and turn each field group into a typed schema in Payload, with relationships re-linked rather than flattened.

Images come with size variants. WordPress writes resized copies like photo-300x200.jpg next to every upload in /wp-content/uploads/YYYY/MM/, and old posts link to those variants directly. We map every variant back to its original so no image in old content breaks.

Forms are often less wired than you think. Contact Form 7 does not store submissions at all unless a second plugin (Flamingo) is installed. Gravity Forms keeps entries in its own tables. We find out where your leads actually go today, then rewire each form to your real provider (HubSpot, Salesforce, Mailchimp, Zapier or your own backend) and keep the submission history where it matters.

The Redirect Map Is Where WordPress Migrations Lose Traffic

WordPress serves the same content at more URLs than most teams realise, and every one that has links or rankings needs an explicit 301 target:

  • Date-based permalinks like /2024/03/post-name/, if the site ever used them

  • Category, tag and author archives, plus their /page/2/ pagination

  • Attachment pages, which WordPress creates for every uploaded image

  • ?p=123 plain links and old ?page_id= links still sitting in emails and backlinks

  • Feeds at /feed/ and per-category feeds

  • Trailing slashes, which WordPress adds by default and Next.js does not unless you set trailingSlash: true

We crawl the live site, merge it with your Search Console pages and your sitemap, and build the map from all three. After launch we watch redirect responses and Search Console coverage until the new URLs settle.

Yes, AI Can Reach WordPress. Here Is Where It Stops.

WordPress has an official route for AI agents: the Core AI team's MCP Adapter, built on the Abilities API that arrived in WordPress 6.9. Any vendor telling you AI cannot touch WordPress is out of date.

What an agent reaches that way is the set of abilities a site exposes, mostly content. What it does not get is the site itself. Your layout lives in a theme and a page builder, your features live in plugins that each own their own tables, and changes made in wp-admin go straight to production with no branch, no diff to review and no git revert. The agent cannot run your site, test its change and prove it works before anyone sees it.

In a repository the agent gets the whole thing: layout, content schema, redirects, structured data and tests. It makes a change on a branch, runs the build, reads the failure, fixes it, and you approve before anything goes live. That loop is what you are buying.

What's Included in Every Migration

  • Site audit and plugin inventory. Every page, post type, plugin, form, integration and custom function in functions.php is mapped before we quote, which is why the price can be fixed.

  • A decision for every plugin. Each one is replaced with native code, replaced with a proper service, rebuilt, or dropped because nothing uses it. You see the list before we start.

  • Content extraction through the REST API. Posts, pages, custom post types, ACF fields, taxonomies and media, with shortcodes and blocks converted to real components.

  • Payload CMS for your editors. A clean editing screen with your content types, so marketing does not lose the ability to publish.

  • Complete 301 redirect map. Archives, pagination, attachment pages, feeds and trailing slashes included.

  • SEO and metadata preservation. Titles, descriptions, canonicals, noindex flags and structured data carried across per page.

  • Forms and integrations rewired to your real providers.

  • QA and Core Web Vitals. Measured before and after, with both numbers reported to you.

  • A Git repository you own. Deployable anywhere, editable by your team and your agents, with no plugin licences to renew.

How the Migration Works

Every engagement runs the same sequence, so you always know which phase you are in and what comes next.

What It Costs

We quote fixed prices, scoped before you commit. The band for a 50 to 100 page site is the same $5,000 to $25,000 we quote for any platform.

Page count is a poor predictor. The real drivers are how many plugins do real work, how many custom post types and ACF field groups need a schema, how much content is built from shortcodes or page builder layouts, and how many integrations have to be rebuilt rather than pointed somewhere new. A 40-page site built in Elementor with a booking plugin and a membership plugin can cost more than a clean 200-page blog.

WooCommerce, member areas and multilingual sites (WPML or Polylang) are scoped as separate line items. For WooCommerce in particular, the right answer is sometimes not to move the store at all: keep WooCommerce running headless, or move commerce to Shopify, and rebuild only the marketing site. We will tell you which one fits during the review.

What It Costs to Run Afterwards

"$0 to $20 a month" is only honest if you name the host, so here are both realistic paths.

Static-first on Cloudflare Pages: $0 to $20 a month. Unlimited bandwidth and no commercial-use restriction. The caveat: Pages Functions count against the Workers free tier at 100,000 requests per day, so anything with meaningful server-side work eventually needs a paid plan.

Next.js with Payload and a managed database on Vercel: roughly $20 to $50 a month. Vercel Pro is $20 per user per month and it is the floor, not an upgrade, because Vercel's Hobby tier is non-commercial by Vercel's own terms. Payload is MIT-licensed and free, but it needs a database, and a client-grade managed Postgres is realistically $8 to $30 a month.

Call it under $50 a month either way. What disappears is the rest of the WordPress bill: premium plugin renewals, security plugins, managed WordPress hosting, and the maintenance retainer that exists because the stack needs constant patching. Add up what you pay for those today before you decide. If the total is small and nothing is breaking, the savings alone will not justify a migration.

When You Should Not Hire Us

We would rather lose the enquiry than sell you a migration you do not need.

Stay on WordPress if the site is under 20 pages, one person edits it, it runs a handful of well-maintained plugins, nothing has broken in the last year, and nobody wants AI editing it. WordPress does that job well.

Wait if you are mid-rebrand. Migrating a design you are about to replace means paying for it twice. Finish the redesign, then move the finished thing. Or do both at once: a redesign is the cheapest moment to change platforms, because you are already paying to rebuild the front end.

Keep the store where it is if WooCommerce is the business and the marketing pages are an afterthought. Moving a working store is a bigger risk than the site it sits in.

Think hard if nobody will own deploys. Your editors get a clean CMS, but someone still has to review changes and own the deploy pipeline. If that person does not exist and you are not hiring them, a migration moves the bottleneck rather than removing it.

Why MigrateLab

We sit in the specialist lane: narrower scope than a full-service agency, more depth and accountability than a freelancer marketplace. We do not sell brand strategy or ongoing retainers. The narrow focus is why fixed prices land below full-service agencies for the same work.

The part that matters after launch is the destination. Next.js and Astro are conventional, well documented and deeply represented in the data AI coding tools learned from, so an agent can find its way around your project without a tour. With source control on top, your team gets an agent that can see the whole site, change it, prove the change builds, and be reverted in one command when it gets it wrong. And the repository is yours: any developer or any AI can work on it, with or without us.

Start With a Free Migration Review

The fastest way to find out what your migration costs is to ask. Request a free review and we will audit your WordPress site, list the plugins doing real work, flag the cost drivers, and send back a fixed-price scope and timeline with no obligation. Prefer email? Reach us at [email protected].

Want a number for your specific site? Request a free migration review and we will send back a fixed-price scope, a list of the plugins doing real work, and a timeline. No obligation. Email [email protected] or use the form linked below.

$5-25K

Typical Migration

Fixed-price for a 50 to 100 page WordPress site, scoped before you commit

4-10 wks

Time to Launch

End to end for a typical site, faster for small ones

Under $50/mo

Hosting After

Static-first on Cloudflare Pages, or Vercel Pro with a managed database

0

Plugins to Patch

Every plugin replaced with owned code or a proper service

Our WordPress Migration Process

1

Audit and free review

We inventory every page, post type, plugin, form, integration and custom function on your WordPress site, then send back a fixed-price scope and timeline. This is the free review, no obligation.

Tip: The audit is where the hidden cost drivers surface: plugins that store data in their own tables, shortcodes buried in old posts, and logic someone added to functions.php years ago.

2

Content extraction

We pull content through the WordPress REST API, not the XML export, so custom post types, ACF fields, taxonomies and media all come across, with shortcodes and Gutenberg blocks converted into real components.

Tip: The XML export carries attachments as URLs, not files, and leaves out anything a plugin stores in its own tables.

3

Rebuild in code

Pages and templates are rebuilt in Next.js or Astro, with Payload CMS for your editors and each plugin replaced by owned code or a proper service. Forms are rewired to your real providers.

Tip: You approve the plugin replacement list before the build starts, so nothing disappears by surprise.

4

QA and SEO preservation

We build a complete 301 redirect map, carry over Yoast or Rank Math metadata per page, run cross-device QA, and measure Core Web Vitals before and after so you get both numbers rather than a promise.

Tip: The leaks are in the edge cases: archive pagination, attachment pages, feeds, plain ?p= links and trailing slashes.

5

Launch and handoff

We cut over during a low-traffic window, monitor redirect responses and Search Console coverage after launch, and hand you the Git repository. From then on your team and your agents own the editing loop.

Tip: You leave with code in your repository, deployable anywhere, with no plugin licences to renew and no core updates to chase.

$3K-$8K

Small Site

5 to 15 pages, few plugins, 2 to 4 weeks

$5K-$25K

Typical Site

50 to 100 pages with custom post types and a blog, 4 to 10 weeks

$25K-$50K

Large Site

150+ pages, WooCommerce, member areas or several languages, 10 to 16 weeks

FeatureStay on WordPressMigrateLab Migration
Ongoing upkeepCore, theme and plugin updates, foreverNo plugins to patch, dependencies updated in Git
Ongoing platform costHosting + premium plugin renewals + maintenanceUnder $50/mo, Cloudflare Pages or Vercel + DB
Attack surfacewp-admin, xmlrpc and every plugin endpointStatic pages or a small, typed API
Editing for marketersFamiliar wp-admin and page builderPayload CMS with your content types
SEO during the moveN/A (no move)Full 301 redirect map + post-launch monitoring
AI-driven editsMCP Adapter reaches exposed contentWhole repo, plus branch, diff and revert

Specialist Migration Service vs. the Alternatives

Pros

  • +Fixed-price scope set before you commit, no hourly surprises
  • +A written decision for every plugin before the build starts
  • +SEO preservation and the 301 redirect map are baked in, not an add-on
  • +Content extracted through the REST API, with shortcodes and blocks converted
  • +Narrow, deep focus keeps the price below full-service agencies

Cons

  • -Freelancer quotes can be cheaper, but many skip the plugin inventory and discover the hard parts mid-build
  • -Full-service agencies add brand and design strategy you may not need, at several times the price
  • -DIY with AI tools is viable for technical teams, but a redirect map that misses archives and attachment pages can cost months of traffic

“A WordPress migration is not a content export. It is a decision about every plugin you run, made once, in writing, before anyone writes code.”

MigrateLab Team, Migration Specialists

Escape your CMS. Ship with AI.

Request a free migration review. We audit your WordPress site and send back a fixed-price scope and timeline, with no obligation. Or email [email protected] directly.

Frequently asked questions

What does a WordPress to Next.js migration service actually do?
It rebuilds your WordPress site in code you own. At MigrateLab that means inventorying every page, post type, plugin and form, extracting content through the WordPress REST API, converting shortcodes and Gutenberg blocks into real components, mapping ACF field groups to typed schemas in Payload CMS, rebuilding the front end in Next.js or Astro, rewiring forms to your real provider, building a complete 301 redirect map, and cutting over on a low-traffic window. The deliverable is a Git repository your team and your AI tools can both work in.
How much does it cost to migrate WordPress to Next.js?
For a 50 to 100 page WordPress site, expect $5,000 to $25,000 fixed-price. A small site of 5 to 15 pages with few plugins runs $3,000 to $8,000. Sites past 150 pages, or with WooCommerce, member areas or several languages, run $25,000 to $50,000. Plugins doing real work, custom post types and page builder layouts drive the price more than page count. We fix the price after the audit, before you commit.
How long does a WordPress migration take?
A typical 50 to 100 page WordPress site takes 4 to 10 weeks end to end: audit and plugin inventory, redirect mapping, design system, page rebuild, content migration, forms and integrations, QA and Core Web Vitals, then cutover and monitoring. Small sites finish faster. WooCommerce, member areas and multilingual setups extend the timeline.
Will I lose my Google rankings if I move off WordPress?
Not if the redirect work is done properly, and that is where most WordPress migrations go wrong. WordPress serves content at more URLs than people expect: category, tag and author archives with pagination, attachment pages, feeds, plain ?p= links and trailing-slash variants. We build the redirect map from a crawl, your sitemap and your Search Console data, carry over every title, description, canonical and noindex flag, and monitor redirects and coverage after launch.
What happens to my plugins?
Each one gets a decision before we start. Most SEO, caching, image optimisation and form plugins are replaced by native code. Things like email marketing, analytics or booking are replaced by a proper service called through its API. Plugins with custom business logic are rebuilt. Plugins nothing uses any more are dropped. You see the full list in the scope, so nothing disappears by surprise.
Will my marketing team still be able to edit the site?
Yes. We set up Payload CMS with your content types, so editors get a clean admin screen for posts, pages and custom content. The difference is that the layout and features live in code, so editors cannot accidentally break the site, and developers or AI tools make structural changes on a branch you approve first.
Should we move WooCommerce too?
Not always. If the store is the business, moving it is a bigger risk than the marketing site around it. Common options are keeping WooCommerce running headless behind the new front end, moving commerce to Shopify, or using Stripe directly for simple catalogues. We scope it as a separate line item and recommend one option during the review.
Can't AI already edit WordPress?
Partly. WordPress has an official MCP Adapter from the Core AI team, built on the Abilities API in WordPress 6.9, so an agent can reach the content and actions a site exposes. It does not get the theme, the page builder layouts or the plugin code as one artifact it can run and test, and changes in wp-admin go live with no branch, diff or revert. In a repository the agent can change the site, run the build, and prove the change works before it ships.
Next.js or Astro: which will you use?
Next.js when the site has app-like parts such as logins, dashboards or heavy personalisation. Astro when the site is mostly content, because it ships less JavaScript by default. The migration cost is about the same either way. What matters more is that both are conventional, well documented frameworks that any developer or AI tool can work in.
How do I get started?
Request a free migration review. We audit your WordPress site, list the plugins doing real work, flag the cost drivers, and send back a fixed-price scope and timeline with no obligation. You can also email [email protected] directly.

100 website designs, ready to build for your business

Every design below is a complete, clickable website. Pick one and we rebuild it around your name, colours, photos and services, from $1,520 and live in 7 working days.

See all 100 designs

Related Resources