WordPress to Next.js migration

Moving from WordPress or Elementor to Next.js, Without Losing Your Rankings

A migration is worth doing when the current site is holding the business back: it is slow because of a page builder, every new feature means another plugin, or the team is afraid to update anything. It is not worth doing just because Next.js is newer. I start by checking whether a cleaner WordPress theme would solve the same problem for less, and only recommend moving when it would not.

What this fixes

Elementor pages that get slower every month

Page builders wrap every element in several layers of markup and load their own scripts and styles on every page. Add a slider plugin, a popup plugin and a few tracking tags and the site is heavy before any content loads. Rebuilding the templates in Next.js removes that weight, because each page only ships what it actually uses.

Losing search traffic in the move

The most expensive migration mistake is changing URLs without redirects. Years of rankings can disappear in a week. I export every URL that gets traffic or has links pointing to it, map each one to its new page, and put 301 redirects in place before the switch, then check Search Console after launch.

Plugins doing jobs nobody wrote down

A WordPress site often relies on a dozen plugins for forms, SEO tags, redirects, image resizing, caching and analytics. Each one is doing something the new site must also do. I list them before quoting, so the rebuild covers everything the old site did and nothing is discovered missing after launch.

How I work

The process

  1. Audit the current siteTraffic by page, links pointing in, plugins in use, forms and integrations, and what the content team edits. The output is a written list, and sometimes the honest recommendation is to keep WordPress and rebuild the theme instead.
  2. Decide where content will liveIf your team publishes often, the content stays editable: headless WordPress, or a hosted CMS. If it rarely changes, it can live in the codebase. This is decided before the build, not discovered during it.
  3. Rebuild the templatesEach page type is rebuilt in Next.js to match or improve the current design, on a staging link you can compare side by side with the live site.
  4. Map URLs and redirectsEvery old URL gets a new home or a 301 redirect. Titles, descriptions and structured data move across too, so search engines see the same page in a faster form.
  5. Launch and watchWe switch over at a quiet time, resubmit the sitemap, and I watch Search Console and analytics through the first weeks to catch anything that did not carry over.

Tools

The stack

Next.js
The new front end: server-rendered pages that only load what they use.
Headless WordPress or a hosted CMS
Keeps content editable for your team when they publish often.
301 redirect map
Built from your real traffic and backlink data, so rankings follow the content.
Google Search Console
Sitemap resubmission and indexing checks before and after launch.
Lighthouse and field data
A before and after record, so the speed gain is measured rather than claimed.

Closest examples

Live sites you can check yourself

Every one of these is in production. Click through and judge it.

i2D — Digital agency website with custom templates and GSAP, built with WordPress

i2D

Digital agency website with custom templates and GSAP

WordPressCustom TemplatesGSAP
Aspect Roofing — Elementor-built business website, built with WordPress

Aspect Roofing

Elementor-built business website

WordPressElementorPHP
PillPharm — Online pharmacy platform, built with Next.js

PillPharm

Online pharmacy platform

Next.jsReactRedux Toolkit

Ways to work together

Pick whichever fits the work

Price depends on scope, so it comes after the first call rather than off a menu.

Fixed-price project

A defined build with a clear finish line

  • One agreed price, set before work starts
  • Milestones with a payment against each
  • Scope in writing, changes quoted separately
  • Best when you know roughly what you need

Hourly

Work that cannot be scoped up front

  • Joining an existing codebase
  • Debugging, audits and one-off fixes
  • Exploratory work where the shape is unclear
  • Time logged and reported, no minimum block

Monthly retainer

A site that needs someone on it every month

  • A set block of hours each month
  • Priority over ad-hoc requests
  • Updates, fixes and small features
  • Someone who already knows the codebase

Before you ask

Common questions

Will I lose my Google rankings?

Not if the URLs are handled properly. Every page that has traffic or backlinks gets mapped to its new address with a 301 redirect, and titles, descriptions and structured data move across. Some movement in the first weeks is normal; a lasting drop usually means redirects were missed.

Can we keep editing content the way we do now?

Often yes. Headless WordPress keeps the editing screen your team knows, with Next.js rendering the pages. If you publish rarely, moving the content into the codebase or a simpler CMS can be cheaper to run.

Is a migration always the right call?

No. If the site is slow because of a page builder and a heavy theme, rebuilding the WordPress theme properly is often cheaper and solves the same problem. The audit at the start is there to answer this honestly before you spend anything.

What happens to forms, SEO plugins and integrations?

Each one is listed in the audit and rebuilt or replaced: forms post to an API route or a form service, SEO tags are generated from the content, and integrations such as CRMs or booking tools are connected directly.

How long does a migration take?

It depends mostly on the number of page templates and integrations, not the number of pages. The audit gives you a written scope with milestones and a fixed price.

Need this built? Let's talk

Tell me what the site needs to do. You get a written scope and a fixed quote, including an honest answer if a smaller fix would do the job.

Start a conversation →