Import collection items

Use a CSV file to import thousands of Collection items into your Webflow project in one go.

This video features an old UI. Updated version coming soon!
Clone this project

When you create Collections, you can enter your Collection items manually, or import them directly into an existing Collection with a comma separated values (CSV) file. This allows you to import hundreds or thousands of data items from an external source directly into the CMS and map CSV content to reference fields when importing CMS content.

You can also import a Collection you've exported from the same or another Webflow project. Learn more about migrating your CMS to another project.

In this lesson:

  1. Upload a CSV
  2. Configure fields and preview items
  3. Import the data
  4. Structure your CSV file
  5. Use supported data types

Upload a CSV

To upload your CSV in Webflow to your designated Collection:

  1. Open the CMS panel
  2. Select your Collection
  3. Click Import
  1. Drag in your CSV file (or click browse from your computer)
  1. Connect columns to their fields

For reference and multi-reference items that don’t exist in your Collection: you’ll get a warning that your item doesn’t exist. As a required field, it will be imported as a draft since it doesn’t exist in your reference Collection. 

Note: The maximum file size for a CSV file is 4MB.

Number of items you can import

Using Enhanced staging with a paid Account plan, you can publish up to 50 Collection items. To import more than 50 items, you'll need to add a CMS or Business site plan to your site, which allow up to 2,000 and 10,000 Collection items, respectively. To test CSV import for free, use a CSV of 50 rows or less, including the header row.

Specify the header row

Usually, the header row of a CSV contains column labels defining the type of content contained in each column. Once you upload the CSV file, you’ll see a preview of your CSV and be able to confirm whether or not the first row is a header. Selecting "yes" or "I'm not sure" marks the first row the header and excludes it from import. Selecting "No" includes the row in the import.

No matter what choice you make at this stage, in the next step, you can go to the first item and check or uncheck the "Header Row" box.

The values of this header row will be set as the field labels for this field configuration step.

Configure fields and preview items

When a CSV is uploaded, the columns will be available as fields that you can configure in the field configuration pane on the left. If specified, column headers will appear as field labels.

The values in the input fields will be pulled from the selected row. Each row will translate to a Collection item. You can preview items on the right.

Configure fields

In this step, you’ll configure the fields, by choosing which columns to map and which to leave out. You can also create new fields for each column.

Don’t map field

If there are columns in your CSV that you don’t want to import, choose do not import from the dropdown.

Create new field

If a field doesn’t already exist in the Collection, you can create one and map it to a column.

  1. Choose Create new field
  2. Choose the field type for this new field from the dropdown that appears. Field types that do not support the content in a column won’t be available and will be grayed out.
  3. Add a New field label or keep the suggested label.
  4. Optional: add Help text

You will have other options to set for different field types. A new option field will be populated by all unique values from that column. For a new switch field, you can specify which value maps to “No.” 

Map to existing field

You can map each column to an existing field in the Collection. A green indicator next to a column label indicates that the column has been mapped.

  1. Choose Map to existing field
  2. Choose the field you want to map this column to from the dropdown that appears. Fields that do not support the content in a column won’t be available and will be grayed out.

For the switch field, you can specify which value maps to “No.” Or, you can swipe to map a value to “Yes.”

Need to know: You can't map a column to existing fields that are already in use. If you need to map a column to a specific field type, you can create a new field.

Preview items

You can preview the items that will be imported in the item preview pane on the right. You can switch between items using the arrow keys at the top to preview the fields and values for each item. You can also see a list of all the items that will be imported by clicking the underlined item number indicator in the top bar. You can also select to preview any item from this list by clicking on the item name.

Hovering anywhere over a mapped or created field in the left panel will highlight the corresponding preview item. Preview items update in real time as the field is configured.

If you need to edit the value in a field for a given item, you can do so before you configure the field, or by selecting Do not import in the dropdown.

Fields with requirements/validations

If a cell within one of your CSV columns is mapped to a required reference field, and it’s empty or does not contain any values that exist in that referenced Collection, then the item for that row will set to Draft once imported, and the reference field will be left blank.

If the mapped reference field is not required and a cell within that column is empty, or does not contain any values that exist in that referenced Collection, then the item for that row will be set to Staged for publish once import, and the reference field will be left blank.

Learn more about CSV import.

Import the data

Once this step is complete and your CSV has been fully configured, import the data by clicking the Import button on the top right.

Wait until all items are imported.

Good to know: A pre-import version of your site will be created, which you can restore in the Versions tab of your Project Settings, just in case anything goes wrong with the import.

Structure your CSV file

You don't need to worry about the structure of exported Webflow Collections. Typically, CSVs exported from other CMSs like WordPress are already structured in a way that’s compatible with Webflow.

Learn more: How to migrate from WordPress to Webflow CMS

But you may want to create your own CSV and import that data into a Collection. For example, you can use Google Sheets, MS Excel, or Airtable to create a spreadsheet with the columns representing fields and rows representing items and their values. Once the spreadsheet is ready, you can save it as a CSV file.

Note: When saving a CSV file in Excel, be sure to select the CSV type “Comma Separated Values.” Other CSV extensions may not render correctly when uploaded to Webflow.

To ensure that you don’t run into any errors during the import process, first make sure your CSV is Webflow-friendly. See the supported data types section below.

Use supported data types

When you upload a CSV file, Webflow CMS will usually understand your content just fine. However, some formats, such as those for images, dates, numbers, and colors, may not be recognized. 

One nice note about formatting is that exported Webflow CMS content will be properly formatted for importing. So moving CMS content from one Webflow site to another will work using the exported CSV file.

To ensure that your data is formatted correctly and it can be mapped to the right field type, follow the guidelines below when creating your own database spreadsheet:

  • Name field — any plain text field with less than 256 characters can be mapped to this field
  • Slug field — any plain text field with less than 256 characters can be mapped to this field

Note: If you haven't mapped a CSV column to the default name and slug fields, the CMS will generate those for you.

  • Plain text field — any plain text values can be mapped to this field
  • Rich text field — any values can be mapped to this field. However, to import rich text, the value of this field must be in HTML code.

Note: During import, the code is “cleaned up” to remove elements, classes, and attributes that aren’t supported by the rich text field. Because of this cleanup process, it's a good idea to check all your rich text content after import.

  • Image field — images should be added as direct URLs (links that end in an image file extension) in your CSV. Only supported image file types will be imported into your Collection.
  • Video field — only YouTube or Vimeo URLs can be mapped to a video field
  • Link field — any URL can be mapped to a link field
  • Email field — Only email addresses can be mapped to an email field
  • Phone field — any supported phone number format can be mapped to a phone field
  • Number field — only numbers can be mapped to this field. You won’t be able to map numbers to a number field if your values contain letters for example units (100 USD), symbols (eg. $100), or commas (10,000).
  • Date/Time field — any supported date and time formats can be mapped to this field
  • Switch field — You can map a column to a Switch field, when there are only two unique values in its cells. For example, if a column only has "True" and "False" as values, you can import this as a switch field type, and specify which value means "Yes" during the mapping phase.
  • Color field — any value in web color format (color names, hex codes, RGBA) can be mapped to this field. Hex codes must be preceded by the pound sign (#), e.g., #4353ff.
  • Option field — any column can be mapped to the option field. All unique values in this column will become the options for this field (with a maximum of 100 options).
  • File field — currently you cannot map any columns to the file field. You can manually upload your files once you import all your data.
  • Reference field —  You can map content that is formatted as normal text — no special formatting required (e.g. “Charles Dickens”).
  • Multi-reference fields — You can map content separated by semicolons within its cell (e.g. “Charles Dickens; Jane Austen; Charlotte Bronte”) just like multi-image field content.
Try Webflow — it's free
No items found.
This video features an old UI. Updated version coming soon!