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.
Optional But Recommended
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:| Element | Description | Example |
|---|---|---|
| Collection | A content type in Webflow | Blog Posts, Authors, Products |
| Item | A single piece of content | One blog post, one author |
| Field | A property of an item | Title, Body, Image, Date |
| Reference | Link to another collection | Post → 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:Quickstart
Migrate your first collection in 10 minutes
Migration Guide
Detailed step-by-step instructions
Need Help Getting Set Up?
I don't have a Sanity project yet
I don't have a Sanity project yet
No problem! Follow Sanity’s Getting Started guide to create your first project. It takes about 5 minutes.
I'm not sure which dataset to use
I'm not sure which dataset to use
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.Can I migrate without a Sanity schema?
Can I migrate without a Sanity schema?
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.
What if my API token expires?
What if my API token expires?
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.