Merge CSV and Excel files

Combine several CSV and Excel files into one table. Columns are matched by name, so files whose columns are in a different order still line up, and a column that only one file has is either filled with blanks or dropped. Add a source column to see which file each row came from, and remove duplicate rows by the columns you choose. Download the result as CSV or as an Excel file that keeps leading zeros. Everything runs in your browser.

Runs in your browser · nothing is uploaded

CSV, TSV, TXT and .xlsx / .xls, up to 25 MB each. Every sheet of a workbook becomes its own table. Choosing more files adds to the list.

Pick two or more files to merge them.

Your file is processed only inside this browser tab and is never sent to any server. Close the page and the data is gone.

Assumptions

How it is calculated

  1. Files are read in your browser. CSV encoding is detected automatically; a workbook is split into one table per sheet.
  2. Column names from every table are collected and grouped, ignoring spacing and letter case.
  3. The chosen mode decides the final column list, and every row is rearranged into that order.
  4. With duplicate removal on, rows sharing the key columns collapse into one, and the result is written as CSV or as a text-typed .xlsx.

Examples

Common mistakes

FAQ

Do the files need the same column order?

No. Columns are matched by name, not by position. Leading and trailing spaces, repeated spaces and letter case are ignored, so "Email", "email" and " Email " are treated as one column. A column that appears in only some files is filled with blanks under the union setting.

Union, intersection or first table — which do I want?

Union keeps every column that appears anywhere, so nothing is lost; use it when the files are near-identical exports with a few extra fields. Intersection keeps only the columns every file has, which gives a clean rectangular table. First table uses the column layout of the first table and drops extra columns from the others, which is handy when one file is the canonical template. The tool lists which columns get left out.

How are duplicates decided?

By default a row is a duplicate only when every column matches. For files keyed on an order number or an email address, tick just that column instead. Values are compared after trimming surrounding spaces, and turning on case-insensitive matching also treats A@X.COM and a@x.com as the same. The first occurrence is the one kept.

What happens to a workbook with many sheets?

Each sheet is loaded as its own table and listed separately. A single file with twelve monthly sheets therefore merges into one flat table on its own. Turn on the source columns to keep a record of which file and sheet each row came from.

Will leading zeros survive?

In the Excel download, yes: every cell is written as text, so 00123 stays 00123. The CSV also writes the value as-is, but Excel converts it back to a number when you double-click a CSV, so choose the .xlsx download if the result is going straight into Excel.

Are my files uploaded?

No. Reading, merging and saving all happen in your browser. Neither the contents nor the file names leave your device.

Related tools