
Founder of Goodspeed
A CMS migration is the move of your structured content (pages, posts, authors, categories, media and metadata) from one content management system to another, such as WordPress, Webflow, Contentful, Sanity or Drupal to Framer. Doing it safely comes down to five things: audit what you have, model it properly in the new CMS, move it with the right import route, keep every URL working, and test before and after launch.
A careful migration reduces avoidable risk to traffic and leads. It cannot guarantee rankings, and some temporary movement in search is normal while search engines recrawl the new site.
Who can do this for you?
Goodspeed, a Framer Enterprise partner, runs migrations as a fixed product. We audit your current site first, sign off a redirect map with you before anything moves, launch with zero downtime in about five weeks, then monitor redirects and search performance for 30 days. Migrations start from $10,000. See our Migration service.
Start With a Content Audit
Every reliable content migration begins with an inventory. You cannot model, map or test content you have not counted, and the audit is where most of the later decisions get made. Treat it as a proper website audit focused on content, not a quick skim of the sitemap.
Build the inventory
Crawl the live site with a crawler such as Screaming Frog and export every indexable URL, its title, meta description, canonical and status code.
Export from the CMS itself. Crawls miss drafts, unlisted pages and content that only appears inside components. The CMS export or API shows what actually exists.
Pull performance data from Google Search Console and your analytics tool: clicks, impressions, landing page sessions and conversions per URL.
Record backlinks to each URL from a backlink tool, so you know which pages carry external authority.
Decide what moves
Tag every URL with one of three outcomes: keep (migrate as is), improve (migrate and rewrite or merge), or retire (do not migrate, redirect to the closest relevant page). Thin tag archives, old event pages and near duplicate posts are common retire candidates. Pages with traffic, links or conversions should almost never be dropped without a redirect.
The output is a single spreadsheet that becomes the backbone of the project: one row per URL, its outcome, its content type in the new CMS and its new URL.
Model Your Content in the New CMS
Content modelling means deciding how your content is structured in the destination: which collections exist, which fields each one has, and how they connect. Get this right before importing anything, because changing a model after hundreds of items are in it is slow and error prone.
Map content types to collections
Each repeating content type in the old system usually becomes a collection in Framer: blog posts, case studies, authors, categories, team members, job listings, integrations, help articles. One off pages such as the homepage, pricing and about are usually built as standard pages, not CMS items.
Map fields one by one
For each collection, list the source fields and the destination field type. In Framer that typically means plain text, formatted text, image, file, link, date, number, toggle, color, option, and reference or multi reference fields. Watch for:
Custom fields and plugins. WordPress sites often store important data in custom field plugins or page builder blocks. Each needs a home in the new model or a decision to drop it.
Modular content. Structured block content from Contentful, Sanity or other headless CMS setups rarely maps one to one onto a single rich text field. Decide which blocks become fields, which become separate items, and which are rebuilt as page sections.
SEO fields. Add explicit fields for meta title, meta description and social image if the old site set them per item, so nothing falls back to defaults at launch.
Plan relationships
Authors and categories should be their own collections, linked to posts with reference fields, rather than repeated as text on every post. That keeps names consistent, gives you author and category pages, and makes later changes a single edit.
Choose Your Export and Import Route
There are three common ways to move content into the new CMS. Most migrations use a mix, chosen per collection based on volume and complexity.
CSV export and import
Many platforms can export collections to CSV, and Framer can import CSV files into a collection. This is the simplest route for flat content such as team members, locations or short posts. It gets harder with rich text, multiple references and images, so test with ten rows before importing a thousand. Our Webflow to Framer guide walks through a CSV based move in detail.
APIs and scripts
When content is large, deeply structured or lives in a headless CMS, a script that reads from the source API and writes to the destination gives you the most control. You can clean HTML, resolve references, rename slugs and rerun the import as often as you need. This is usually the right choice for Contentful to Framer and large WordPress moves.
Sync plugins
Framer plugins can sync collections from external sources, which suits teams that want to keep editing in a spreadsheet or another tool. Check what the plugin supports for field types, images and references, and whether the sync is one way or ongoing, before you rely on it for a launch.
Whichever route you pick
Freeze or log content changes on the old site during the move, or plan a final delta import.
Keep the import repeatable, so a fix to the mapping can be rerun cleanly.
Back up the full source export before you start and keep it after launch.
Handle Rich Text, Media, Authors and Categories
This is where most of the manual effort in a content migration sits. Body content looks simple until you inspect it.
Rich text
Clean the HTML. Strip inline styles, empty tags and builder specific wrappers so the new site's styles apply consistently.
Find unsupported elements. Shortcodes, custom embeds, tables and widgets from the old platform will not carry over on their own. Decide whether each becomes a component, an embed or plain content.
Fix heading levels. Make sure posts use a sensible heading order inside the template, rather than repeating the page's main heading.
Rewrite internal links. Update links inside body content to the new URLs instead of relying on redirect chains.
Media
Download every image, video and file from the source and confirm it is accessible to the import. Image fields can often be populated from URLs during import, but files hosted on the old platform's CDN may disappear when that account closes, so move them rather than hotlinking. Carry over alt text, and keep or redirect important PDF and image URLs that other sites link to.
Authors and categories
Import authors and categories first, then posts, so the references have something to point at. Match on slug rather than display name, merge duplicate tags before import, and decide whether each category and author page should be indexed. If the old site had author bios or headshots, move them too, because they support trust signals on each post.
Preserve URLs, Slugs and SEO Signals
The safest URL is the one that does not change. Where the new CMS allows it, keep slugs and folder paths identical. Where structure must change, every old URL needs a 301 redirect to its closest equivalent.
Build the redirect map
Start from the audit spreadsheet, so every URL already has a destination.
Redirect one to one, avoid chains, and never send everything to the homepage.
Include old media URLs, paginated archives and tag pages that earned traffic or links.
Get the map signed off by marketing and whoever owns paid campaigns, since ad and email links break too.
Google's guidance on site moves with URL changes is worth reading in full before you finalise the plan.
Carry the on page signals
Move titles, meta descriptions, canonicals, Open Graph images and schema markup per item. Recreate the XML sitemap and confirm robots settings on launch day. For the full SEO side of a move, use our SEO migration checklist alongside our SEO migration strategy guide.
QA the Migration Before and After Launch
Test on staging with real content, not placeholder items. A structured QA pass catches the issues that otherwise surface in a customer email a week after launch.
Before launch
Count check. Item counts per collection match the audit, minus anything marked retire.
Sample review. Open a spread of items per collection, including the longest and oldest, and compare against the live originals.
Field check. Confirm dates, authors, categories, images and SEO fields populated correctly.
Link check. Crawl staging for broken internal links and missing images.
Redirect test. Run the full list of old URLs against the new site and confirm each returns a single 301 to the right page.
Tracking check. Confirm analytics, tag manager, forms, CRM and consent tools fire as before.
After launch
Submit the new sitemap in Search Console, watch coverage and 404 reports daily for the first weeks, and compare clicks and conversions for key pages against your baseline. Some fluctuation is expected; a sustained drop on specific pages usually points to a missed redirect or a lost content element worth checking first.
Train Editors and Plan the First 30 Days
A migration is only finished when your team can publish confidently in the new CMS. Run a short training session on the real collections, and write a one page guide covering how to add a post, assign authors and categories, set SEO fields and preview before publishing.
Agree who can publish, who reviews, and how drafts are handled.
Document the content model so new collections follow the same patterns.
Keep a log of fixes in the first 30 days, then fold lessons into the guide.
Zen Educate, a Series B edtech operating in the UK and US, moved to Framer page by page with zero downtime. We rebuilt its CMS as four content hubs, kept GTM, Zoho, Heap and Hotjar working throughout, and the team went on to run 10x more growth experiments. Read the Zen Educate case study.
Moving from a specific platform? See our WordPress to Framer migration guide, or start with the ultimate guide to migrating to Framer.
Move Your CMS Without Guesswork
A CMS migration rewards preparation. Audit every URL, model content before importing it, pick the right route for each collection, keep URLs stable, and test against a baseline. That will not freeze rankings in place, but it removes most of the avoidable reasons migrations go wrong.
If you would rather have a team that has done this before run it, our Migration service starts with an audit and a signed off redirect map, launches in about five weeks with zero downtime, and includes 30 days of monitoring.

Written By
Founder of Goodspeed
Share this article
