Skip to main content

What You’ll Need

Before starting your migration, make sure you have:

1. Webflow Access

  • CMS Collections - At least one collection with content to migrate
  • Export permissions - Ability to export collections as CSV files
  • Admin or Editor role - Required to access CMS export features

2. Sanity Project

You need an active Sanity project with a dataset. If you don’t have one yet:
1

Sign up at sanity.io

Create a free account at sanity.io
2

Create a new project

Use Sanity’s CLI or web interface to create a project
3

Note your project details

Save your Project ID and dataset name (usually production)
Don’t have a schema yet? That’s okay! You can define your schema during the ContentWrap mapping process. Schema generation assistance is coming soon.

3. Sanity API Token

You’ll need an API token with write permissions:
1

Go to sanity.io/manage

Navigate to your project’s management console
2

Select your project

Click on the project you want to migrate content into
3

Go to API settings

Click API in the left sidebar
4

Create a token

Click Add API Token and configure:
  • Name: ContentWrap Migration
  • Permissions: Editor (required for creating documents)
5

Copy and save the token

Copy the token immediately—you won’t be able to see it again
Important: Your API token needs Editor permissions to create documents. Viewer permissions won’t work.

4. ContentWrap Account

Sign up for a free ContentWrap account to access MigrateKit:

Sign Up

Create your ContentWrap account
ContentWrap is the platform that powers MigrateKit. Your account gives you access to migration tools and, optionally, white-glove migration services.

Test Dataset

For your first migration, use a Sanity development or staging dataset instead of production:
  • Test the migration workflow without risk
  • Refine field mappings and see results
  • Delete and retry if needed
  • Move to production once confident

CSV Editor

While not required, a good CSV editor helps you review exports:
  • Google Sheets - Free, handles UTF-8 well
  • LibreOffice Calc - Free, better than Excel for CSVs
  • VS Code - View raw CSV structure
Avoid Microsoft Excel - It auto-formats dates and can corrupt CSV data. If you must use Excel, import CSVs as text to prevent formatting issues.

Understanding Webflow Collection Structure

Familiarize yourself with your Webflow CMS collections:
ElementDescriptionExample
CollectionA content type in WebflowBlog Posts, Authors, Products
ItemA single piece of contentOne blog post, one author
FieldA property of an itemTitle, Body, Image, Date
ReferenceLink to another collectionPost → Author relationship
Reference fields are not currently supported in ContentWrap. You’ll need to recreate relationships in Sanity after migration. Multi-collection support with reference resolution is on the roadmap.

Ready to Start?

Once you have everything above, you’re ready to begin:

Need Help Getting Set Up?

No problem! Follow Sanity’s Getting Started guide to create your first project. It takes about 5 minutes.
If your Sanity project is new, use the production dataset. If you already have content in production, create a staging or development dataset for testing migrations.
Yes! ContentWrap helps you define fields during the mapping step. However, you’ll need to manually create the schema in Sanity Studio after import if you want custom validation or field configurations.
Sanity API tokens don’t expire by default. If you revoke a token, create a new one with the same permissions and update it in ContentWrap.