Wix to Next.js migration: cost, SEO and what moves

Wix to Next.js migration: what moves, what's rebuilt, market costs, and how to redirect /post/ and /product-page/ URLs without losing SEO.

Mohit Goyal11 min read
Wix to Next.js migration: cost, SEO and what moves

A Wix to Next.js migration is a rebuild, not an export. Your text, images, CMS collections and product data can come out of Wix, but the design, the Wix apps and any Velo code have to be rebuilt in React. Freelancers typically quote $2,000 to $8,000 and agencies $8,000 to $30,000, and your Google rankings survive if every old Wix /post/ and /product-page/ URL gets a permanent redirect to its new Next.js page.

What moves from Wix to Next.js, and what doesn't?

Text, images, CMS collections and product data move. The design, Wix apps, Velo code and SEO fields don't, at least not automatically. Wix doesn't give you a site export. You get pieces, and each one comes out a different way.

Item on your Wix siteDoes it move?How
Page text and headingsYesCopied or scraped from the live pages
CMS collectionsYesExport to CSV from the CMS
Wix Blog postsPartlyNo export button. The RSS feed shows only the 20 latest posts and has returned links only since March 2025, so it's an API pull, a scraper or copy and paste
ImagesYes, if re-hostedThey live on static.wixstatic.com and break once the Wix site goes
Meta titles, descriptions, alt textNo bulk exportCaptured from a crawl and re-entered
Design and layoutNoRebuilt as React components
Wix Stores, Bookings, Members, FormsNoReplaced with Stripe or Shopify, a booking tool, an auth library and a form handler
Velo codeNoRewritten as Next.js route handlers or server actions
Redirects in Wix's Redirect ManagerNoCopied out and added to your new redirect map

The SEO fields are what catch most people out. Wix keeps titles and meta descriptions in its SEO panel, and the Wix API doesn't return them with post data. So the first job, before anything else, is to crawl the live Wix site and save every URL with its title, description, H1 and canonical. That crawl becomes your source of truth for the rebuild and for the redirects.

What has to be rebuilt from scratch?

Anything that controls how the site looks or behaves gets rebuilt: templates, forms, payments, bookings and the way your team edits content.

  • Templates. Each Wix page layout becomes a React component styled with Tailwind CSS. A 10-page site with a blog usually needs five or six templates, not ten pages of one-off work.
  • Forms. Wix Forms go away. A HubSpot form works, or a small route handler that emails you and writes to a Google Sheet. On the Taxocity build I saved every lead to a Google Sheet, and you can do the same thing from a Next.js API route.
  • Payments and bookings. There's no Next.js switch you flip to get Wix Stores or Wix Bookings back. You pick Stripe Checkout, a Shopify backend or a booking service and wire it in. I built Stripe event bookings for Ravens Ait and other Aura Clips hospitality clients, so I know where they go wrong: failed payments, confirmation emails and tracking.
  • Editing. On Wix, anyone can drag a box around. On Next.js, you decide how content gets edited: Markdown files in the repo, a headless CMS, or headless WordPress if your team already knows the WordPress editor. Settle this before you ask for a quote. It moves the price more than anything else on this list.

How much does a Wix to Next.js migration cost?

A Wix to Next.js migration typically costs $2,000 to $8,000 with a freelancer and $8,000 to $30,000 with an agency, and takes about 2 to 8 weeks depending on blog size. These are market ranges, not my rates.

Who does the workTypical priceTypical timeline
Freelance developer$2,000 to $8,0002 to 4 weeks
Agency (stores, member areas, heavy QA)$8,000 to $30,0003 to 6 weeks for most sites

On timelines, one migration specialist puts a 5 to 15 page business site at about three weeks and a site with a large blog archive at five to eight.

What pushes the price up:

  • Blog size. You can move 20 posts by hand. 300 posts need a scripted pull, image re-hosting and a metadata pass.
  • Wix apps in use. Every Wix app (Stores, Bookings, Members, Events) is a feature someone has to rebuild or replace.
  • A content editor for your team. A headless CMS adds setup time and sometimes a monthly fee.
  • New design or a faithful copy. Rebuilding the current look costs less than redesigning at the same time.
  • Integrations. CRM, analytics, payment and email tools all need wiring up and testing.

Running costs usually go down. One comparison puts a Wix plan at $17 to $39 a month against $0 to $20 for Next.js hosting, though a headless CMS or a busy site on Vercel can change that maths. Budget for upkeep as well: Next.js maintenance is a real line item.

How do you redirect Wix /post/ and dynamic URLs in Next.js?

Use permanent rules in the redirects() function of next.config.js: one pattern rule per Wix section where slugs stay the same, and one-to-one pairs for everything else. Wix puts app pages under fixed prefixes. These are the defaults, from Wix's own docs and this URL structure breakdown:

Wix page typeDefault Wix URLTypical Next.js URL
Blog post/post/{slug}/blog/{slug}
Blog category/blog/categories/{slug}/blog/category/{slug}
Blog tag/blog/tags/{tag}/blog/tag/{tag}
Store product/product-page/{slug}/products/{slug}
Store category/category/{slug}/shop/{slug}
Bookings service/service-page/{name}/services/{name}
Event/event-details/{slug}/events/{slug}
CMS dynamic item/{collection}/{field}/{section}/{slug}

Don't trust the defaults blindly. Check your own site. Wix lets you rename the post prefix and remove the product-page prefix, so your live URLs may look different.

When the slug doesn't change, one pattern rule handles a whole section:

js
// next.config.js
module.exports = {
  async redirects() {
    return [
      { source: '/post/:slug', destination: '/blog/:slug', permanent: true },
      { source: '/product-page/:slug', destination: '/products/:slug', permanent: true },
    ]
  },
}

permanent: true sends a 308, which Google treats like a 301. Static pages, renamed slugs and merged content need one-to-one pairs. That's where most migrations leak traffic: a handful of high-value pages with no matching rule.

I built the free Redirect Map Builder for exactly this step. I wrote it with sites leaving WordPress in mind, but it takes any list of old and new URL pairs. It gives you a redirects() array for next.config.js and flags chains, loops, duplicates, trailing-slash mismatches and query strings. It runs in your browser, so your URL list never leaves your machine.

  1. 1

    Crawl the live Wix site

    Export every indexable URL with its title, meta description and canonical. Add URLs from Search Console's Pages report and any backlinked URLs.

  2. 2

    Copy out Wix's own redirects

    Anything in Wix's URL Redirect Manager stops working when the site leaves Wix, so list those old-to-new pairs too.

  3. 3

    Pair every old URL with a new one

    Use pattern rules for /post/, /product-page/ and CMS item pages where the slug stays the same, and one-to-one pairs for everything else.

  4. 4

    Run the list through the Redirect Map Builder

    Paste old and new pairs, fix the chains, loops and duplicates it flags, then paste the redirects() array into next.config.js.

  5. 5

    Test on staging before DNS moves

    Request every old URL on the staging build and confirm each one lands on a 200 page in a single hop.

What should you check after launch?

In the first two weeks after a Wix to Next.js launch, check redirects, leftover Wix images, metadata, canonicals, crawler access and Core Web Vitals. Going live is when the SEO work really starts. This is my list:

  1. Every old URL. Re-crawl the saved list. Each one should reach a 200 page in one hop. No 404s, no redirect chains.
  2. No Wix leftovers. Search the codebase and the rendered HTML for wixstatic.com. Every image should come from your own host.
  3. Metadata parity. Titles, descriptions and H1s should match the pre-launch crawl, or be better on purpose.
  4. Canonicals and sitemap. Each page needs a self-referencing canonical. Submit the new sitemap in Search Console and inspect your top pages.
  5. Crawler access. Run the AI Crawler Checker to see whether 14 AI crawlers, including Google's, can fetch your home page, and to check your llms.txt and the sitemaps your robots.txt declares. Run the Security Headers Checker while you're there.
  6. Speed in the field. Lab scores show up straight away. Core Web Vitals field data takes weeks to catch up.

Expect some movement. Google typically processes a migration within 30 to 60 days, and a small dip in that window is normal when the redirects are right. If traffic is still sliding after that, go page by page through redirects, indexing and content changes. The full list is in my Next.js technical SEO checklist.

Do not cancel the Wix plan on launch day

Wix images are served from static.wixstatic.com and your email DNS may sit in Wix. Re-host every image and move MX records before the plan ends.

If email stops working after the DNS change, it's usually missing or wrong MX records at the new DNS host. My guide to fixing email after a website move walks through it.

When is Wix to WordPress the better choice?

Wix to WordPress is the better choice when a non-technical team edits pages daily, when you run a large product catalogue, or when the budget is tight. Next.js isn't always where you should land. This is how I'd decide:

Your situationBetter fitWhy
Marketing team edits pages daily without a developerWordPressVisual builders like Bricks or Elementor keep editing hands-on
Store with many products and stock rulesWordPress (WooCommerce)Mature cart, plugins and payment gateways
Tight budget, mostly brochure pagesWordPressCheaper to build and easier to hand over
Speed, custom features or app-like pages matter mostNext.jsFull control over rendering, code and performance
You want React speed but WordPress editingHeadless WordPressNext.js frontend, familiar editor behind it

If you see yourself in most of the WordPress rows, read my guide to Wix to WordPress migration without losing SEO. The redirect work is almost the same.

What should you ask a developer before you hire?

These seven questions show whether a developer has scoped the job:

  • Will you crawl the current site and give me the full URL inventory before you build?
  • How will you get the blog posts and images out of Wix, and what happens to meta descriptions?
  • Who edits content after launch, and how?
  • Can I see the redirect map, and will you test it on staging before DNS changes?
  • Do I own the code repository, hosting account and domain?
  • What replaces each Wix app we use, and what does it cost each month?
  • How long will you monitor Search Console after launch?

A good developer can answer all seven on the spot. If someone gives you a fixed price without asking which Wix apps you use, they haven't scoped the job.

How do I approach a migration off a closed builder?

I work in a fixed order when moving a site off Wix or any closed builder: crawl first, decide how content is edited, rebuild templates, map every URL, test redirects on staging, then move DNS. I build Next.js and React websites that render on the server and are built to rank. My own portfolio runs on server-rendered React with TanStack Start. I've moved a site off a hosted builder before, too: I rebuilt the Aura Clips agency site from Framer onto WordPress with Bricks Builder. Same kind of job: no clean export, templates to rebuild, media to re-host and a redirect plan.

If you're thinking about leaving Wix, send me your site URL and the list of Wix apps you use through the contact page. I'll tell you whether Next.js or WordPress fits better and what the redirect map will involve. Or book a 20-minute call if talking it through is easier.

Frequently asked

Can I export my Wix site to Next.js automatically?+

No. Wix has no code export, so a Wix site's design has to be rebuilt as React components in Next.js. The content comes out of Wix separately through CSV exports, an API pull, scraping or copy and paste.

Will I lose Google rankings if I move from Wix to Next.js?+

Not if every old Wix URL gets a permanent redirect to its matching Next.js page and your titles, descriptions and content carry across. A short dip while Google recrawls, typically within 30 to 60 days, is normal.

How do I redirect Wix /post/ URLs in Next.js?+

Add a rule to the redirects() function in next.config.js with source '/post/:slug', destination '/blog/:slug' and permanent set to true. One rule covers every Wix blog post as long as the post slugs stay the same.

How long does a Wix to Next.js migration take?+

Most Wix to Next.js migrations take about two to eight weeks, depending on blog size. A small business site of 5 to 15 pages takes about three weeks, while a site with a large blog archive takes five to eight.

What happens to my Wix images after I cancel my Wix plan?+

Wix serves images from static.wixstatic.com, so any image on your new site still pointing there breaks when the Wix site comes down. Download and re-host every image before you cancel the Wix plan.

Should I move from Wix to WordPress instead of Next.js?+

Pick WordPress if your team needs to edit pages visually every day, you run a large product catalogue, or the budget is tight. Pick Next.js when speed, custom features and full code control matter most.

Mohit Goyal

Written by Mohit Goyal

Senior Web Developer in Gurugram, India. 100+ fast, SEO-friendly sites shipped in 4+ years with Next.js, React and WordPress, including the procol.ai rebuild. Send me your next project.

Keep reading

Elementor to Next.js migration: cost, SEO and what moves

Elementor to Next.js migration: what gets rebuilt, how to keep rankings with redirects, and market costs from about $2,000 to $75,000+ for large builds.

10 min read

Framer to Next.js migration: cost, SEO and what moves

A Framer to Next.js migration is a rebuild, not an export. What moves, which CMS to pick, how to map redirects and what it costs.

10 min read

Let's build

Have a site that needs to be fast, rank and convert?

Open to Work. Usually replies within a day.