Service·Nuxt 2 / 3 → Nuxt 4·SEO kept intact

Nuxt migration to Nuxt 4, with your search traffic intact

Nuxt 2 reached end of life in June 2024, and Nuxt 3 followed on July 31, 2026. Neither gets security patches now. Our senior engineers move your app to Nuxt 4 in small steps and check that every URL, meta tag and rendering mode still does what search engines expect.

  • Nuxt 2 → Nuxt 4
  • Nuxt 3 → Nuxt 4
  • Nuxt Bridge
  • compatibilityVersion: 4
  • Nitro server routes
  • SSR · SSG · hybrid routes
  • @nuxtjs/seo
  • Pinia
$1,499
Part-time senior engineer
per month · 80 hours
$2,499
Full-time senior engineer
per month · 160 hours
48 h
Typical start
in most cases
You approve
Meet the engineer first
before onboarding

Signs your Nuxt upgrade can't wait

Nuxt 3 stopped getting patches

Nuxt 3 reached end of life on July 31, 2026. A new security issue in Nuxt, Nitro or one of their dependencies now stays open on 3.x.

A Nuxt 2 app on an old stack

Nuxt 2 runs on Vue 2, which reached end of life in 2023. Many Nuxt 2 modules never got a Nuxt 3 or 4 version, so each one needs a replacement or a rewrite.

Fear of losing search traffic

Your site lives on organic traffic. A careless upgrade changes URLs, drops meta tags or turns server-rendered pages into empty shells, and rankings follow.

Data fetching that has to change

Nuxt 2's asyncData, fetch and Vuex store become useAsyncData, useFetch and Pinia. Nuxt 4 also changes some useAsyncData and useFetch defaults, so Nuxt 3 code can behave differently.

Modules pinned to old majors

Your nuxt.config pulls in modules that won't install on Nuxt 4. Some have a new major, some were replaced by another module, and some you no longer need.

Server code nobody mapped

serverMiddleware in Nuxt 2, or server routes added over time in Nuxt 3, hide auth, proxies and redirects. Each one moves to Nitro and needs checking.

What we check first

  1. Nuxt version, rendering mode and hosting target
  2. Every module in nuxt.config: upgrade, replace or drop
  3. Data fetching: asyncData, fetch, useAsyncData and useFetch calls
  4. Server middleware, API routes and redirects
  5. Indexed URLs, meta tags, sitemap and structured data
  6. How you deploy today, and how you roll back

From first call to handover

01

Inventory

We read the repository and the live site. Every module gets a status, every page gets its rendering mode noted, and we list the URLs search engines already know about.

You get
  • A module and dependency matrix
  • A list of indexed URLs to protect
  • An effort range based on your code
02

Plan the path

Nuxt 2 apps go through Nuxt Bridge or move in one step, depending on size and tests. Nuxt 3 apps on 3.12 or later can turn on compatibilityVersion: 4 and fix what breaks before the switch.

You get
  • A written upgrade plan
  • Which path we chose, and why
  • A rollback for each stage
03

Upgrade in small steps

We move to the app/ directory layout, update data fetching and swap modules in reviewable pull requests. The Nuxt team's codemods handle the mechanical parts, and we check the rest by hand.

You get
  • Small PRs in your repo
  • Modules on supported versions
  • Data fetching on Nuxt 4 defaults
04

Protect SEO

Before each release we compare the old and new site: status codes, redirects, titles, meta descriptions, canonicals, sitemap and structured data. Each route keeps the rendering mode it needs, from SSR to prerendered to client-only.

You get
  • A URL and meta comparison
  • Redirects for anything that moved
  • Route rules for rendering per page
05

Release and hand over

We ship in stages you control and watch errors after each one. Your team gets a walkthrough of what changed in Nuxt 4 and in your code.

You get
  • Release notes per stage
  • A rollback path for each release
  • Handover notes and decision records

What you have at the end

Module matrix

Every Nuxt module and key dependency with its target version, its replacement, or a note that it can go.

Upgrade plan

The path (Bridge, direct, or compatibility flag first), the order of work, the risks and how each stage rolls back.

Pull requests in your repo

Reviewable PRs in your Git host, following your branching and review rules. No code dump at the end.

SEO comparison

Old versus new for status codes, titles, meta, canonicals, sitemap and structured data, on the URLs that bring you traffic.

Route rules

A documented rendering mode per route: server-rendered, prerendered, cached or client-only.

Handover notes

Decision records for what changed, which modules replaced which, and what to watch on future Nuxt upgrades.

Pick the model that fits the work

Monthly billing at a flat rate. No onboarding fees, no minimum commitment, and you can pause or cancel anytime. Our hours overlap with US and EU time zones.

Part-Time Senior Vue Engineer

$1,499/ month
80 hours per month

Upgrade help next to your team. We take the module swaps and the SEO checks, and your developers keep shipping.

Full-Time Senior Vue Engineer

$2,499/ month
160 hours per month

One senior engineer owns the upgrade end to end, from the inventory to the last release on Nuxt 4.

Dedicated Vue Squad

Custom
Several engineers + a lead

For several Nuxt apps, or a large app where the upgrade and your roadmap have to move in parallel.

Short engagement

Scoped
Add-on or one-off

A short engagement focused on getting a Nuxt 2 app off Nuxt 2: the inventory and a plan your team can carry out.

See full pricing and what every plan includes →

When we're not the right call

We'd rather tell you now than sell you the wrong engagement.

  • Your site is small and mostly static. Rebuilding it on Nuxt 4, or on a simpler tool, can cost less than migrating.
  • You're leaving Nuxt anyway, for Next.js or another framework. Then skip Nuxt 4 and move once.
  • Your team knows the codebase and has the time. A short planning engagement may be all you need from us.
  • You need the upgrade done this week with no inventory. We read the code and the live site first, because that's where the SEO risk hides.

Questions buyers ask us

Is Nuxt 3 still supported?

No. Nuxt 3 reached end of life on July 31, 2026, and the Nuxt team no longer ships security patches for it. Your app keeps running, but new issues in Nuxt, Nitro or their dependencies stay unpatched on 3.x.

Can we go straight from Nuxt 2 to Nuxt 4?

Yes. There's no reason to stop on Nuxt 3, which is already out of support. For large apps, Nuxt Bridge can let part of the work ship while you're still on Nuxt 2.

How big is a Nuxt 3 to Nuxt 4 upgrade?

Much smaller than Nuxt 2 to 3. On Nuxt 3.12 or later you can turn on compatibilityVersion: 4, fix what breaks while still on Nuxt 3, then switch. Most of the work is the new directory layout, data-fetching defaults and modules that need a new major.

Will we lose search rankings?

The risk comes from changed URLs, missing meta tags and pages that stop rendering on the server. We compare all three before each release, and any URL that has to change gets a permanent redirect.

Can a Nuxt app use the Vue 3 migration build?

Not the way a plain Vue app can. Nuxt 3 can't use @vue/compat, so Nuxt 2 apps move through Nuxt Bridge or a direct upgrade instead.

What does a Nuxt upgrade cost with VueSquad?

You pay a flat monthly rate for the engineers on it: $1,499 a month part-time or $2,499 full-time, or a custom price for a squad. After the inventory you'll know roughly how many months to plan for.

Get started

Still on Nuxt 2 or Nuxt 3?

Tell us your Nuxt version, where it's hosted and which pages bring in traffic. A senior engineer will reply with how we'd approach the upgrade and what to protect first.

Matched in 24 hours·48 hours free on every plan·No long-term contract