DT Data Tools

CSV Merge — Combine CSV Files Online

Merge multiple CSV files in your browser: append rows with columns matched by header, or join files on a key column with inner or left join.

🔒 Runs entirely in your browser — nothing is uploaded

Drop two or more CSV files here or click to browse

Comma, semicolon, tab and pipe delimiters are detected automatically.

Add at least two CSV files to begin.

Advertisement

Two ways to combine CSV files

Data rarely arrives in one piece. Monthly exports, regional reports and separate systems each produce their own CSV file, and sooner or later you need them in a single table. CSV Merge offers the two operations people need most. Append rows stacks files on top of each other, which is ideal for combining January, February and March exports into one year-to-date file. Join on a key column places matching records side by side, for example adding customer names from one file to order lines from another using a shared customer_id.

When appending, columns are matched by header name rather than by position, so files with columns in a different order, or with extra and missing fields, still line up correctly. The merged header is the union of all headers, and cells that a file does not provide are left empty. Enable the source_file option to add a column recording which file every row came from.

How the join works

Joins run from the first file in the list to the last. The key selector only offers columns that exist in every file. An inner join keeps rows whose key is found in all files, while a left join keeps every row of the first file and leaves the extra columns blank when no match exists. If a key appears several times in a later file, one output row is produced for each match, exactly like a SQL join. Keys are compared after trimming surrounding spaces, and empty keys are never matched. Columns whose names clash with earlier ones receive a numeric suffix such as name_2.

Private and dependable

Each file's delimiter is detected automatically, quoted fields with commas or line breaks are handled, and a UTF-8 byte-order mark at the start of a file is ignored. Everything runs locally in your browser; the files are never uploaded, which keeps customer lists and financial exports on your device. Review the preview of the first 100 rows, then download the complete merged file with a comma, semicolon, tab or pipe delimiter. For more complex combinations, such as filters or aggregations across files, try the SQL on CSV tool.

How to use

  1. Add CSV filesDrop two or more CSV files. Use the arrows to set their order; the first file is the base table.
  2. Choose a merge modeAppend rows to stack files, or join them on a key column that exists in every file.
  3. Merge and previewClick Merge files and check the combined table preview.
  4. DownloadSave the merged CSV with your preferred delimiter.

Frequently asked questions

Do the files need the same columns to append?
No. Columns are matched by header name. The output contains every column from every file, and cells a file does not have are left empty.
What is the difference between inner and left join?
An inner join keeps only rows whose key exists in every file. A left join keeps every row of the first file and leaves the other files' columns empty when no match is found.
What happens when a key appears several times?
Each match produces its own output row, just like a SQL join. Keys are compared after trimming spaces, and empty keys never match.
Can the files use different delimiters?
Yes. The delimiter of each file is detected separately, and you choose the delimiter for the merged output.
Are my CSV files uploaded?
No. Files are parsed and merged entirely in your browser.
Advertisement