Migrating from Wix, Squarespace or Hostinger to Next.js, Vercel and Claude Code
TL;DR
- Wix, Squarespace and Hostinger's Website Builder are all-in-one platforms, and none of them gives you a codebase to take away, so the move is a rebuild with Claude Code
- Wix says its sites cannot be hosted anywhere else, though CMS collections export to CSV
- Wix blog posts sit behind a post prefix that cannot be removed, so keeping that path in Next.js saves you a redirect for every post
- Squarespace exports an XML file built for WordPress, covering posts and pages, and keeps redirects in its URL mappings
- Hostinger says switching away from its Website Builder means starting again, and it documents an export of builder content into WordPress
- Each platform creates 301 redirects for you, and every one of them stops working when you leave, so copy them first
- These platforms often hold your domain and email settings too, so move DNS carefully and keep your mail records intact
Why all-in-one builders are the hardest to leave
Wix, Squarespace and Hostinger's Website Builder solve the same problem: a small business needs a site this week and has no developer. They bundle the design, the hosting, the CMS and often the domain into one subscription, and they do it well.
The bundle is also the catch. Wix's own help centre explains that its sites run on proprietary technology and cannot be hosted elsewhere. Squarespace exports content in a format built for WordPress. Hostinger tells you that moving to another system means deleting the builder site and starting from scratch. None of them hands you code.
That used to make leaving expensive. With Claude Code, a rebuild from the live site is a realistic project for a small team, and you end up with a Next.js codebase you own, on Vercel, that any future tool can read.
This guide covers what is specific to these three platforms. For the general process, start with our guide to migrating any website to Next.js, Vercel and Claude Code.
The shared method: rebuild from the live site
Because no export gives you the design, all three moves start the same way.
Capture the live site. List every URL from the sitemap, the Pages report in Google Search Console and your analytics. Save every page's title and meta description. Screenshot every template at desktop, tablet and phone widths.
Let Claude Code read it. Claude Code can fetch live pages, so it can pull the copy and structure of each page straight from your current site and compare them against your screenshots.
Fetch each URL in /migration/urls.txt and save the main copy, headings, title and meta description as a markdown file per page in /migration/pages. Flag any page where the content looks loaded by a script and might be missing.
Build the design system first. Colours, type, spacing and components, then pages. Ask Claude Code to flag near-duplicate sections so you rebuild one version of each.
Then work through the platform-specific steps below.
Wix
Content. Wix's CMS lets you export any collection to CSV from the collection's actions menu. Do this for every collection on the site. For Wix Blog posts, the dependable route is to pull them from the live pages with Claude Code.
URLs. Wix Blog posts live under a post prefix. Wix says you can rename that prefix but cannot remove it. Keep the same /post/your-slug pattern in Next.js and every blog URL carries across untouched. Change it later if you want, with one pattern redirect.
Redirects. Wix creates a 301 redirect automatically whenever you change a page's URL slug, and you can see them all in the URL Redirect Manager in your SEO dashboard. Copy the full list before you switch, since those rules stop working the moment Wix stops serving your domain.
Apps. Wix sites often leans on Wix apps for bookings, stores and members areas. List every one and decide whether you rebuild it, replace it with a dedicated tool, or keep it running on a subdomain while the marketing site moves.
Squarespace
Content. Squarespace exports your site as an XML file, and its help centre says the file is set up for importing into WordPress, so not every type of Squarespace content comes across. WordPress.com's own import guide lists posts, pages, comments, tags, images, audio and embedded video in that file. Claude Code can read the XML and split it into one content file per post.
URLs. Squarespace blog posts usually sit under the blog page's slug, such as /blog/your-post. Keep that structure in Next.js and the posts need no redirects.
Redirects. Squarespace keeps redirects in URL mappings, one rule per line. Copy the whole block, then convert it.
Here is our Squarespace URL mappings block. Convert each line into the redirects array in next.config.js with permanent: true, and flag any rule that points at another redirected URL.
Hostinger Website Builder
Content. Hostinger's help centre says that to use another content management system, you set up a new site from scratch, and it documents an export that sends your builder content into WordPress. That gives you an option no other builder in this guide has: export to a WordPress install, then pull everything out through the WordPress REST API in clean, structured form. Our WordPress migration guide covers that second step.
If the export does not suit your site, rebuild from the live pages using the shared method above.
Redirects. Check Hostinger's settings for any redirects you have added, and collect them alongside the rest.
All three: redirects in Next.js
Put every collected rule into next.config.js. With permanent: true, Next.js sends a 308 status code, and Google treats 301 and 308 both as permanent redirects, with no loss of PageRank according to its site move guide. Point each old URL at its final destination in one hop. Pages you are dropping for good should return a 404 or 410.
If your domain and paths stay the same, the move counts as a change of hosting to Google, and you need very few redirects at all. That is the aim for launch.
Domains and email: the step that breaks things
All-in-one platforms often sell you the domain and sometimes manage your DNS. When you point the domain at Vercel, you change those DNS records, and a careless change can take your email down with the website.
Before you touch anything, write down every DNS record: the A and CNAME records for the site, the MX records for email, and the TXT records for email authentication and domain verification. Move only the website records to Vercel. Leave the mail records exactly as they were, and send yourself a test email after the switch.
If you want to move the domain registration itself away from the builder, do it as a separate step after the site has settled. That follows Google's advice to change one thing at a time.
SEO setup on the new site
Match first. Launch every page with the title and description it had on the old platform, so any ranking movement comes from the move and not from rewritten copy.
Then build the foundations once, in code:
- A
metadataexport orgenerateMetadataon every route, with a canonical on your production domain app/sitemap.tswith real last-modified dates, andapp/robots.tspointing at it- Article JSON-LD on blog posts, matching the visible headline, author and date
- Server-rendered content, so crawlers that skip JavaScript still read every word
Our guide to SEO for Vercel and Next.js sites covers each file, and our guide to robots.txt for AI explains which crawlers to allow if you want to show up in AI answers.
Where your content lives now
These platforms gave you a friendly editor. The new site has none, and the first person who wants to publish a post will notice.
Contengi is the AI-native CMS we built for sites like this. Claude Code adds one signed endpoint to your Next.js site from a single prompt, and posts arrive with their title, slug, SEO title, meta description, body, FAQ and featured image, stored in your own database and keyed on the URL. Edits republish to the same address, so a refresh never creates a duplicate. The agents writing those posts work from your knowledge base and hard rules, and you approve before anything goes live.
Page copy lives in code, where Claude Code changes it on request. Blog posts and anything you publish regularly live in Contengi.
What you gain
You own the site. The code sits in your repository, the hosting is Vercel, and no single company holds your design, your content and your redirects in one place.
You can change anything. A new landing page, a pricing update or a layout fix is a request to Claude Code, and it ships on the next deploy.
You get a cleaner foundation for search and AI visibility. Server-rendered pages, consistent metadata and a sitemap you control give Google and AI crawlers the best chance of reading everything.
You still earn the growth with what you publish. The migration protects what you have and removes the ceiling.
Launch checklist
- Save every DNS record before changing anything, and leave mail records untouched
- Keep the old platform subscription active until the new site has been stable for a few weeks
- Test every redirect on a preview deployment
- Confirm titles and descriptions match the old site for your top pages
- Point the website records at Vercel, test email, submit the new sitemap in Search Console and watch the Pages report daily for two weeks
Frequently asked questions
Can I export my Wix site to Next.js?
No. Wix says its sites cannot be hosted elsewhere. You export CMS collections to CSV, pull the rest from the live pages, and rebuild the site in Next.js with Claude Code.
How do I export content from Squarespace?
Squarespace exports an XML file designed for WordPress import, containing posts, pages and related content. Claude Code can convert that file into content for your Next.js site.
Can I move a Hostinger Website Builder site to Next.js?
Yes, by rebuilding it. Hostinger documents an export of builder content to WordPress, which you can then pull through the WordPress REST API, or you can rebuild from the live pages.
Will moving my domain break my email?
Only if the mail records change. Move the website records to Vercel and leave the MX and TXT records as they were, then send a test email.
Do I lose my redirects when I leave Wix or Squarespace?
Yes. They stop working when the platform no longer serves your domain, so copy them into next.config.js before you switch.