NOTECurrently, we are testing out a couple of flows with different UI related to CSV imports into a base. You may see some of the screenshots and guidance in this article differ depending on which UI you are seeing. Our apologies in advance if you experience any difficulties.
Airtable makes it easy to get started with data from an existing CSV file, Google Sheet, or Excel Workbook. This article covers creating a new base by uploading a CSV file or pasting cell data directly from a spreadsheet program. For other import options, please see these articles:
- Import CSV data into an existing base
- Import data from Google Sheets
- Import data from Microsoft Excel
You can also add new records to an existing table in your base from a CSV file using the CSV import extension (available to Pro and Enterprise customers).
IN THIS ARTICLEImporting data from a CSV file
Importing data by pasting from a spreadsheet
Cleaning up the data
NOTESpreadsheet/CSV import can only be done on the desktop and web versions of Airtable at this time. You cannot import a CSV file with enough rows that doing so would put your table over the 50,000 record limit for a single table. There is a limit of 15,000 rows per upload, but it's recommended that you split large CSV files into even smaller chunks to prevent performance issues.
To import an existing spreadsheet or CSV, open the new base dialog by clicking the New Base icon:
This will open up a new blank base with a sidebar on the right side of the page. Here, you can select the CSV/Other option.
This will open an attachment upload dialog where you can select a CSV file from your computer (or from a variety of other supported services). Note that there is currently a 5MB limit on CSV uploads.
After selecting the location and CSV file you would like to upload, click the "Upload" button. This will open up a window where you can choose to let Airtable try and detect the field types for you—or you can skip that step for now and set up the proper field types after your data is imported.
In a spreadsheet application, select a range of cells and copy them using ⌘ + C.
After clicking the "Add a base" option in the workspace of your choice from the homepage, you'll see an option to "Paste data" in the sidebar on the right.
A new window will appear where you can then paste the data into the "Paste table data" dialog using ⌘ + V.
Preview your pasted data
You will be shown a preview of the header cells that will be created in your new base based on the pasted data.
If the first row in the pasted table is not a header, you can uncheck the "First record is a header" option, and every row pasted in will be added as records to the table.
Once you've clicked the "Import pasted data" option, another window will open up where you can choose to let Airtable try and detect the field types for you—or you can skip that step for now and set up the proper field types after your data is imported.
After clicking "Import," you'll see a table comprised of the auto-detected field types. If we didn't auto-detect the field types the way you want them to be customized, then you can convert them at this point. Some examples of conversions you might wish to make:
- Changing a field containing numbers into a number field
- Changing a field containing lists of tags into a multiple select field
- Changing a field containing long paragraphs of text into a long text field
- Changing a field containing values that are important enough to warrant their own table into a linked record field (which will create a new table)
An important thing to note if you want to convert a field from a single line text field into a multiple select field or linked record field is that Airtable will read commas as separators and create an appropriate number of select tokens/links based on the number of commas.
This means that if you wish to create a link to a record with a comma in its name, you will need to delimit the desired record name with quotation marks.
So if you wanted to create a single record for the city of Denver, CO, you would need to delimit the text strings with double quotation marks so that "Denver, CO" becomes a single record, [
Denver, CO], rather than two records, [
Denver] and [