WordPress migration pricing
WordPress to Next.js Migration Cost Scope Before Price
Rebuilding a WordPress site as a custom Next.js build starts at $1,500 with us, $3,500 for a broader marketing site, and $5,000 to $10,000 where templates, data or integrations multiply. Those are our prices, not a market average. Before you use any of them: if you only want the same WordPress site on a different host, that is a different job and it is usually free. Kinsta publishes unlimited free migrations from all hosts, and SiteGround publishes both a free expert migration and a free Migrator plugin. Do not pay platform-migration prices for a host change.
Reviewed against current WordPress, Google and host documentation on August 2, 2026.
Hassan Jamal·Mar 22, 2026·8 min read
PandaCodeGen planning tiers
A WordPress rebuild with us starts at $1,500 for a small bounded site, $3,500 for a broader marketing site, and $5,000 to $10,000 where templates, data or integrations multiply. Treat those as entry points for planning, not as quotes: the signed statement of work sets the final price, the deliverables, the acceptance criteria and the remedy, and it overrides anything on this page.
- ✓Starter begins at $1,500 for a small, bounded migration.
- ✓Growth begins at $3,500 for broader content, templates, CMS or integration work.
- ✓Scale normally falls between $5,000 and $10,000 for larger or more operationally sensitive scope.
- ✓Complex commerce, applications, regulated data and unusual integrations are scoped separately.
- ✓The signed statement of work, not this article, sets the final price, deliverables, acceptance and remedy.
The prices above are ours. We do not publish a market-wide range for a WordPress migration, because ranges like that mix unlike project types, scopes, regions and levels of finish, and a figure stated without a defined sample and scope is not something a buyer can plan against. The published averages you will find elsewhere mostly average a free host transfer together with a full platform rebuild, which is why they land anywhere from $0 to five figures. Establish which job you are buying first, then use our tiers as a starting point and let the accepted written terms set the final price, deliverables, acceptance criteria and remedy.
URLs
Routes, status, value and redirect disposition.
Templates
Layouts, blocks, forms and interactive behavior.
Data
Content, media, users, commerce and plugin fields.
Evidence
SEO, accessibility, analytics and functional QA.
Acceptance
Profiles, pages, runs, exclusions and remedy.
Which tier your migration lands in
Our migrations start at $1,500 for a small site on a few repeatable templates, and rise with the number of distinct templates, the state of the data and the integrations that have to survive the move. URL count is rarely what sends a quote up a tier. Read the fourth column, because that is where most quotes actually move.
| Tier | Planning range | Potential fit | Common scope expansion |
|---|---|---|---|
| Starter | $1,500 | Small site, few repeatable templates, bounded content and forms | Redesign, custom data, many unique layouts or integrations |
| Growth | $3,500 | Broader marketing site, CMS, blog and defined integrations | Complex search, localization, accounts or workflows |
| Scale | $5,000 to $10,000 | Larger content, data, commerce or operational scope | Subscriptions, regulated data, multiple systems or markets |
| Custom | Scoped separately | Application behavior and risk outside a standard website tier | Discovery identifies the appropriate delivery model |
The same tiers with their full inclusions sit on the pricing page; if this article and that page ever disagree, the pricing page is correct. The delivery process behind them is set out on our WordPress migration service page.
Are you changing hosts, or changing platforms?
Two different jobs share one word, and only one of them is worth agency money. Moving a WordPress site from one host to another keeps the same software, theme, plugins and database. Nothing is rebuilt. Most hosting companies do that transfer when you buy a plan: as of August 2, 2026, Kinsta publishes “Unlimited Free WordPress Migrations From All Hosts”, and SiteGround publishes a free expert migration alongside a free Migrator plugin. Ask your incoming host first. If all you need is a host change, do not pay migration prices for it.
A platform migration is the other job. Content comes out of WordPress and gets rebuilt in something that works differently: templates, plugins, forms, search, checkout and the editor workflow are reproduced rather than transferred, and every URL has to be mapped so the search traffic survives. That is what the tiers above price. Published figures that mix the two jobs are why quotes for a “WordPress migration” run from $0 to five figures, and why the same phrase can honestly describe a free one-click host transfer and a full rebuild. Our cross-platform migration cost guide applies the same split to every source platform.
A third case sits in between. Staying on WordPress but changing where it runs and how it is built is a hosting or performance decision rather than a migration, and our method for fixing a slow WordPress site covers it for a fraction of a rebuild budget. A fourth: staying on WordPress.com rather than self-hosting. WordPress.com publishes a $0 plan on a wordpress.com subdomain with no custom domain, then Personal at $4 a month, Premium at $8, Business at $25 and Commerce at $45, all billed annually, with a custom domain free for the first year on paid annual plans. Those figures are read from WordPress.com's pricing page on August 2, 2026, and they change; check them before budgeting against them.
The DIY plugin route, and the four things that break it
Between a free host transfer and a paid rebuild sits the option most cost articles list and then drop: moving the site yourself with a migration plugin. For a standard WordPress site going to another WordPress host, that route genuinely works and genuinely costs almost nothing. It is the right answer more often than an agency will tell you. What nobody tells you is where it stops working, which is the part worth knowing before you start at ten at night.
Four conditions account for most of the failures we get called in to finish. A database large enough that the export times out on shared hosting, which usually shows up as a partial archive rather than an error. Serialized data in the options table, where a find-and-replace on the old domain silently corrupts anything the plugin did not unserialize first. Custom tables written by a plugin that the migration tool does not know to carry, which is common with membership, booking and form-entry plugins. And anything multisite, where the mapping between sites and their uploads is the thing that breaks rather than the content.
The practical test before you commit to the DIY route: check the database size, search the options table for serialized values, list any plugin that created its own tables, and confirm the site is single-site. If all four come back clean, do it yourself and keep the money. If any one of them does not, the plugin will still appear to succeed, and you will find out which records were lost after the DNS has moved.
Price the templates, not the page count
One template can produce hundreds of consistent posts, while ten manually composed pages may contain ten distinct layouts and behaviors. Group URLs by template, content model and journey. Record page-builder components, shortcodes, reusable blocks, custom post types, taxonomies, forms and conditional behavior. Price the systems that generate the pages, not only the URL total.
The migration inventory
What a migration costs is decided by what is on this list, which is why the inventory comes before the quote rather than after it. Eight categories cover a WordPress site, and the ones that surprise people are custom fields, shortcodes and the plugins holding data nobody has opened in years. Build it from a crawl, not from memory.
- ✓Which URLs can be crawled, what status they return, their canonicals, titles, descriptions, and whether they can be indexed
- ✓Templates, Gutenberg blocks, builder widgets, shortcodes and reusable sections
- ✓Posts, pages, custom post types, taxonomies, custom fields, and how they relate to each other
- ✓Media files with their captions and alt text, what references them, and anything that needs resizing
- ✓Forms, email, CRM, analytics, consent, search and third-party embeds
- ✓Users, roles, accounts, gated content and personal data
- ✓Commerce, orders, subscriptions, bookings, memberships and payment integrations
- ✓Redirects, sitemaps, structured data, internal links and campaign routes
What a cheap quote usually leaves out
The gap between a low quote and a realistic one is rarely the build. It is the work that only becomes visible once someone opens the current site properly. When you compare quotes, check each of these explicitly. If an item is absent from the written scope, assume it is absent from the price, and ask what happens when it turns up mid-project. Page-builder sites deserve particular care here, and we have written separately about how Elementor affects search performance and how the Divi theme affects page speed.
- ✓Redirect mapping for every existing URL, including paginated archives, tag and category routes, media attachment pages and campaign destinations. A homepage redirect is not a redirect map.
- ✓Content migration with reconciliation, not just an export. Counts checked, fields mapped, relationships preserved, media re-linked and exceptions reported.
- ✓Page-builder layouts rebuilt as templates. Elementor, Divi, WPBakery and similar store layout as their own markup and shortcodes, so what comes out of a WordPress export is not something a different architecture can render. In every inventory we have run, those pages were rebuilt rather than transferred, and someone has to price that.
- ✓Form handling end to end: submission, validation, spam protection, notification delivery, storage and whatever CRM or email tool currently receives the data.
- ✓The editorial experience after launch. Which CMS, which fields, who can publish, how preview and scheduling work. A site nobody can update is a problem you discover in week three.
- ✓Analytics and consent continuity, so historical data stays comparable and tracking does not silently break at cutover.
- ✓Accessibility work, if it matters to you. Retrofitting it after the templates are built costs more than designing to it.
- ✓Launch, monitoring and rollback. DNS, verification, a named decision-maker and a documented way back if something is wrong.
In our experience the four that most often arrive as change requests are page-builder layouts nobody inventoried, a plugin whose workflow data was not noticed until it broke, content cleanup that turned out to be larger than the export suggested, and integrations discovered late because they were configured by someone who has since left. None of these are dishonest on the seller's part. They are the predictable consequence of quoting before inventorying. Ask any provider how they price scope discovered mid-project, and get the answer in writing before you start.
What WordPress export covers
WordPress documents a Tools Export function that creates an XML export for supported content, including posts, pages, custom post types, comments, custom fields, taxonomies and users in the described export. WordPress also provides REST API endpoints. Neither mechanism guarantees that every theme, plugin, page-builder layout, private table, credential or third-party service will import cleanly into a different architecture.
A successful file or API response proves only that data was obtained. Migration acceptance needs counts, field mapping, relationship checks, media validation, exception reporting and sampled rendered parity in the target. Our step-by-step WordPress to Next.js migration guide walks through the checks in order.
Price plugin capability, not plugin count
Inventory what each active component does, where it stores data and which customer or staff journey depends on it. Mark retain, replace, redesign or retire. A plugin that adds no frontend assets may still own critical workflow data, while a single page builder can affect most templates. Count alone does not establish effort or risk. On the performance side, how plugins accumulate into a page-weight problem explains what to look for while you inventory.
Content editing after WordPress
A Next.js frontend does not decide the editor. Define the target CMS, fields, roles, previews, approvals, scheduling, localization, media and rollback. Test representative editorial tasks with the people who will use them. A technically complete migration can still fail if routine publishing becomes harder. The editorial setup we most often recommend is described in our write-up of the Next.js and Sanity stack.
SEO migration scope
The SEO work in a migration is redirect mapping and output fidelity, and both cost far less before launch than after it. Six controls define the scope. They reduce avoidable technical risk and they entitle nobody to promise that rankings hold, which is why the monitoring line at the end belongs in the quote as well.
- ✓Keep valuable URLs stable where practical.
- ✓Map every changed URL to a relevant successor or an intentional removal state.
- ✓Preserve approved rendered content, titles, canonicals, headings and structured data.
- ✓Update internal links, hreflang, sitemaps and campaign destinations.
- ✓Test redirects and rendered output before launch.
- ✓Monitor Search Console, analytics and server behavior after cutover.
Google documents permanent redirects for site moves and recommends changing one major thing at a time where possible. Controls reduce avoidable technical risk, but rankings, indexing, traffic and recovery timing remain controlled by search engines and are not guaranteed. We go through what to expect in what a migration does to your search rankings, and if traffic has already fallen on the current WordPress site, how to tell a speed-driven traffic drop from the other causes is the diagnosis to run before you budget a migration to fix it.
Performance scope and the 90-plus target
The owner-approved target is a Lighthouse performance score above 90 on mobile and desktop when the signed scope identifies the representative pages, profiles, exact environment, three passing runs per page and profile, exclusions and remedy. It is not a promise for every URL under every network, browser, data, consent or third-party state, and it is not a ranking or conversion guarantee. For what the score is made of, see Core Web Vitals explained and the engineering behind a top PageSpeed result.
Accessibility and functional acceptance
Acceptance means the new site does what the old one did, demonstrated rather than assumed, and accessibility belongs inside that rather than beside it. Five areas need named checks in the scope document. Agree which browsers, devices and assistive technologies count as in scope before the build, because that list is the test plan.
- ✓Keyboard navigation, visible focus, headings, landmarks and labels
- ✓Responsive layouts, zoom, text reflow, contrast and reduced motion
- ✓Forms, validation, errors, success states and notification delivery
- ✓Consent, analytics, search, filters, downloads and third-party integrations
- ✓Supported browsers, devices and assistive technology checks named in scope
Security and account ownership
Removing WordPress changes the attack surface but does not eliminate dependencies or operational risk. Inventory target framework packages, CMS, hosting, database, email and monitoring providers. Define updates, secrets, access, logs, backups, recovery and incident ownership. Prefer client-controlled domain, hosting, repository and business accounts when agreed. On the current threat picture, see our review of WordPress security risk in 2026 alongside the April 2026 evidence we collected, and on account control, do you actually own your website.
How long a WordPress migration takes
Seven inputs set the duration, and content readiness moves the date more often than engineering does. Nothing on this list is page count. A migration waits on access to the source systems, on stakeholder review, and on data that needs cleaning before it can be reconciled, so start those three early.
- ✓Inventory quality and access to the source systems
- ✓Content readiness and stakeholder review
- ✓Number of templates and bespoke interactions
- ✓Export gaps, data cleanup and reconciliation
- ✓Integration, commerce and account complexity
- ✓Accessibility, security, performance and browser acceptance
- ✓Cutover constraints, approvals and final data delta
MyCustomPatches is an independent client, not a PandaCodeGen property, and its figures are owner-confirmed and published with permission. That project was completed in about 22 days. We do not hold a dated record of the confirmation, so treat it as a first-party duration for that accepted scope rather than as an audited figure, and not as a universal WordPress migration schedule. The MyCustomPatches case study sets out what was in that scope, and how long a custom website takes to build covers the phases in general.
When you should stay on WordPress
Migration is not automatically the right answer, and a provider who never says so is not giving you advice. There are situations where the honest recommendation is to spend a fraction of a migration budget on the actual problem and keep the platform you have. If you have not run the diagnosis yet, start with our evidence-led method for fixing a slow WordPress site.
- ✓The measured bottleneck is specific and repairable: an oversized hero image, one slow third-party script, an undersized hosting tier. Fix the measured cause and re-test before concluding the platform is the constraint.
- ✓Your team publishes comfortably in WordPress and nobody has capacity to learn a new editorial workflow. A faster site that your team avoids updating is a net loss.
- ✓You depend on a plugin whose workflow has no equivalent on the target stack, and rebuilding that workflow costs more than the performance gain is worth.
- ✓The site is young and the business model is still changing. Migrating a spec that will be different in six months means paying to rebuild it twice.
- ✓Nobody will own maintenance afterwards. A custom build removes plugin patching and replaces it with dependency and framework patching. If neither will happen, WordPress with managed hosting and a maintenance contract is the safer failure mode.
- ✓Your traffic and revenue do not justify the cost. If the honest upside is smaller than the build, the money belongs somewhere else in the business.
We run the diagnosis before recommending a rebuild, and if the evidence points at repair we say so. That costs us the project sometimes. It costs considerably more to deliver a migration a client did not need and cannot operate, and it is the kind of thing that shows up in the reference call two years later.
Cutover and rollback
Build and test while the source remains available as the plan permits. Before launch, lower DNS timing where appropriate, freeze or reconcile writes, back up relevant systems, verify redirects, forms and analytics, name the decision-maker and define rollback triggers. Universal zero interruption is not promised.
Ownership and licensing
Client content, data and brand assets remain client property. Custom deliverables transfer after full payment under the signed agreement. PandaCodeGen retains reusable internal tools, templates and pre-existing code. Third-party components retain their original licenses. Repository and provider handoff are documented rather than implied by the word custom.
Payment, refund and support
A common payment option is 30 percent at onboarding and 70 percent at the delivery milestone named in the accepted terms, and another written schedule may be agreed. Refund is tied to failure to deliver the signed scope, not a preference change after work starts; the contract defines any project-specific exception and work disposition. When a refund is due, PandaCodeGen aims to initiate it within 2 to 3 business days; the receiving bank or payment provider controls settlement, which can take up to 10 to 12 business days. Package discussions may start with 15 business days of launch defect support on Starter and 30 on Growth and Scale, and support applies only when the accepted project terms record it.
How to compare migration quotes
Two migration quotes only become comparable once you have normalized what each includes, and the gap between them is usually responsibility rather than price. Six checks line them up. The last one matters most in practice: a higher quote that names its acceptance evidence and its cutover plan is often the cheaper project by the end.
- ✓Normalize URL, template, data, plugin and integration scope.
- ✓Compare design, content, accessibility, SEO and analytics responsibility.
- ✓Check environments, test profiles, acceptance evidence and exclusions.
- ✓Check cutover, rollback, support, change control and incident ownership.
- ✓Check repository, accounts, deliverables, reusable IP and third-party licensing.
- ✓Do not treat a higher quote as padding when the scope or governance is broader.
Is migration financially worth it?
Compare the target with a maintain-and-optimize WordPress option. Use current invoices, internal work, planned changes, target provider cost and migration cost. Keep hypothetical traffic and revenue outside the base case unless dated first-party evidence and an attribution method support them. No universal revenue threshold or payback period applies. For the longer view, the three-year cost comparison of WordPress and custom code models both columns, and the WordPress and Next.js platform comparison covers the capability differences behind them. We ran the same arithmetic on our own site and published the working in why we moved off WordPress ourselves.
Frequently asked questions
Frequently Asked Questions
How much does a WordPress to Next.js migration cost in 2026?
PandaCodeGen planning tiers start at $1,500 Starter, $3,500 Growth and $5,000 to $10,000 Scale, with complex commerce and application work scoped separately. Final price follows the accepted URL, template, content, plugin, data, integration, quality, cutover and support scope.
How long does a WordPress to Next.js migration take?
A host transfer can be same-day. A platform rebuild is weeks, and MyCustomPatches, an owner-confirmed PandaCodeGen delivery example, completed in about 22 days. That is one project, not a standard, and the variable is template count and content readiness rather than page count. The existing site stays live until cutover.
Will I lose my Google rankings when I migrate from WordPress to Next.js?
If you are changing hosts and keeping WordPress, nothing search engines can see needs to change at all. If you are rebuilding on another platform, every URL needs a documented destination and every template needs checking for content that did not come across. Those are two different jobs with two different risk profiles, and only the second one needs a redirect workstream.
Is migrating from WordPress to Next.js worth it financially?
Compare migration with a maintain-and-optimize WordPress option using current invoices, internal work, target provider costs and planned features. Keep hypothetical ranking, conversion and revenue effects outside the base case unless first-party evidence supports them. No universal payback period applies.
What should a professional migration include?
The signed scope should identify URLs, templates, content, data, plugins, integrations, editing, accessibility, SEO, analytics, security, performance profiles, browser and functional QA, cutover, rollback, ownership and support. The exact inclusions depend on the inventory rather than a universal checklist.
What happens to my WordPress plugins after migration?
Inventory the capability, data and dependencies of each plugin. Mark it retain, replace, redesign or retire, and define acceptance for the target. A plugin count does not establish migration effort, and deactivation is not a safe data-migration strategy.
Primary sources
Five documents carry the third-party claims on this page: the WordPress pages behind what an export does and does not contain, and the Kinsta, SiteGround and WordPress.com pages behind the free-migration and plan-price figures. All five were read on August 2, 2026. Vendor pricing and migration offers change without notice, so open them rather than quoting this page.
- WordPress export documentation
- WordPress REST API handbook
- Kinsta: free WordPress migrations
- SiteGround: website transfer
- WordPress.com pricing
Get an inventory before a fixed price
We will map routes, templates, content, data, plugins and acceptance criteria, then confirm whether the migration fits a published tier or custom scope.
Related Articles
Next.js and Sanity in 2026: Fit, Cost and Tradeoffs
A current guide to Next.js with Sanity: rendering and content roles, editorial workflows, localization, pricing, security boundaries and when to use a simpler stack.
WordPress in April 2026: Three Security and Product Records
A source-led review of the Smart Slider 3 Pro and EssentialPlugin supply-chain incidents plus a WooCommerce core team lead's public feedback thread and their limits.
Divi Theme Slow? A 2026 Diagnostic and Fix Guide
Diagnose a slow Divi site, test Divi 5 and in-place fixes, and decide whether to optimize, rebuild in WordPress, or migrate.