Skip to content
Guide · TablePlus

How to Import CSV in TablePlus

TablePlus has a built-in CSV import that loads a file into an existing table or creates a new one. This guide follows the TablePlus documentation step by step, explains the CSV settings that decide how the file is read, gives a small sample file to practise with, and covers the two causes of failed imports that the vendor documents.

Steps and facts checked 8 October 2026 against the vendor's official documentation. Versions covered: TablePlus for macOS 26.10.22, Windows 26.10.2, Linux 1.7.0. Next review due April 2027. Menus, shortcuts and prices change between releases; check the vendor's documentation for your version.
Short answer
  • To import a CSV in TablePlus, use File > Import > From CSV..., or right-click the table in the left sidebar and choose Import > From CSV...
  • The import can create a new table if the target does not exist.
  • Default delimiter, quote character, line break and decimal separator for CSV files are set under Preferences > General.
  • TablePlus documents two causes of failed imports: the wrong encoding and mismatched data types. Importing every field as text avoids most type errors.
  • CSV import is available on macOS, Windows and Linux; the Linux app gained it in 2023.
How we know: Research-based: steps, options and troubleshooting advice were checked against the TablePlus documentation (Import & Export, Getting Started, CSV File preferences and Troubleshooting) and the TablePlus macOS, Windows and Linux changelogs on 8 October 2026. We have not run an import for this guide, and TablePlus does not document every screen of the import dialog; follow the app if your version differs.

TablePlus import CSV: step by step

The TablePlus Import & Export documentation gives two ways to start a CSV import. Connect to the database first, then:

  1. Choose File > Import > From CSV... from the menu bar, or right-click the target table in the left sidebar and choose Import > From CSV....
  2. Select the CSV file on your disk.
  3. Choose the target. You can import into the selected table, or, as the documentation notes, choose to create a new table if it does not exist.
  4. Check how the file's columns map to the table's columns and their data types before you confirm the import.
  5. When the import finishes, reload the workspace with Cmd + R (Ctrl + R on Windows) to see the new rows, as the Getting Started page advises.

The same File > Import menu also offers From SQL Dump... for SQL files, and recent releases added JSON import (macOS 7.1.8 and Windows 7.1.4).

CSV settings: delimiter, quotes, line breaks and decimals

Most "wrong columns" problems come from a mismatch between the file and the CSV settings. TablePlus keeps default CSV options in Preferences (Cmd + ,) on the General tab. Check them against your file before importing, particularly for files saved by spreadsheet software in regions that use a comma as the decimal separator and a semicolon as the delimiter.

Default CSV file options in TablePlus (CSV File preferences documentation)
SettingChoices documentedWhen to change it
DelimiterTab, comma or semicolonThe file uses semicolons or tabs between fields
Swap (quote character)Double quote, single quote, space, or quote if neededText fields are wrapped in a different quote character
Line break\n, \r\n or \rThe file comes from a system with different line endings
DecimalFull stop or commaNumbers are written as 1234,56

Practise with a small sample CSV

Before importing a large file into a real database, practise on a scratch table. Create the table below, save the sample as customers.csv with UTF-8 encoding, and import it with the steps above. The header row names match the table's columns and the dates use the ISO format (YYYY-MM-DD), which avoids most date conversion problems.

Target table (standard SQL; works in PostgreSQL, MySQL and SQL Server)
CREATE TABLE customers (
    id          INT PRIMARY KEY,
    name        VARCHAR(100) NOT NULL,
    email       VARCHAR(255),
    signup_date DATE
);
customers.csv (comma delimiter, header row, UTF-8)
id,name,email,signup_date
1,Amelia Clarke,amelia@example.com,2026-01-14
2,Rahul Mehta,rahul@example.com,2026-02-03
3,"O'Neill, Siobhan",siobhan@example.com,2026-03-21
4,Jonas Weber,,2026-04-09

Why a TablePlus CSV import fails

The TablePlus troubleshooting page names two general reasons a CSV import cannot finish:

  • The wrong encoding. Change the encoding and try again. Files exported from older spreadsheet software are often not UTF-8.
  • Mismatched data types. A value that does not fit the column type, such as text in a numeric column or a date in an unexpected format, stops the import. The vendor recommends basic data checks before importing.

The documented shortcut is to match all fields as text, which the vendor says works almost every time, and you can choose to create a table with all text columns. That gets the data in quickly; you can then convert the columns with SQL once you have checked the values. Empty values such as the blank email in the sample above are another frequent source of trouble in strict columns, so check how they map before importing.

Other documented behaviour: TablePlus can also update existing rows from a CSV (added in build 402, December 2021), and on Snowflake a CSV import bug was fixed in a 2023 release, so keep the app current if an import fails on a less common engine.

After the import

Check the row count and a few values with a quick query, then commit any further edits with Cmd + S. To move data the other way, see exporting query results to CSV or Excel in TablePlus. Connection guides: PostgreSQL, MySQL and SQL Server. For an overview of the tool, read the TablePlus review; to practise the queries you will run on imported data, try the SQL beginner course.

Frequently asked questions

Where is the CSV import in TablePlus?

Under File > Import > From CSV..., or by right-clicking a table in the left sidebar and choosing Import > From CSV....

Can TablePlus create a new table from a CSV file?

Yes. The Import & Export documentation says you can import a CSV file and choose to create a new table if it does not exist, and the troubleshooting page mentions creating a table with all text columns.

How do I import a semicolon-separated CSV in TablePlus?

Set the delimiter to semicolon in the CSV options under Preferences > General, and set the decimal separator to comma if numbers use one.

Why does my TablePlus CSV import fail?

TablePlus documents two usual causes: the wrong encoding and data types that do not match the target columns. Change the encoding, or import every field as text and convert afterwards.

Can TablePlus import Excel files?

The documentation lists CSV and SQL dump imports, and recent changelogs add JSON import. Excel import is not documented, so save the sheet as CSV first.

Sources

Checked 8 October 2026.

How we research tool guides: our editorial method. CodeWithSQL earns nothing from the vendors mentioned.

Still choosing a SQL client?

Read the full reviews, or compare tools side by side.