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 at least one dataset.- Project ID
- Dataset name (e.g.,
productionorstaging) - Schema deployed to that dataset (required for v1)
3. Sanity API Token
You’ll need an API token with write permissions:- Sanity Free: Editor
- Growth/Enterprise: Editor or Developer (both read/write)
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.
5. Add Your Sanity Project in ContentWrap
In ContentWrap, open the Projects tab and add:- Project ID (copied from Sanity project header)
- Dataset (e.g.,
production,staging, ordevelopment) - API Token (Editor or Developer)
You can add multiple projects in ContentWrap. Select the project/dataset you want active during migration.
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
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?
Not in v1. Your schema must already be deployed to the target dataset so ContentWrap can read it during mapping and import.
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.