Merge two CSV files by a common column
Combine two spreadsheets by matching a shared column, like VLOOKUP. Handles a million rows, and your file never leaves your computer.
How this works
- Add your files. Drop both spreadsheets onto the page, or pick them from your computer.
- Choose the matching column. Pick the column the two files have in common. A suggestion is offered based on which columns actually share values.
- Choose which rows to keep. Decide whether to keep every row from the first file, only rows found in both, or only rows with no match.
- Check the result. Review how many rows matched and look at any that did not before downloading.
- Download. Save the combined file as CSV, Excel, JSON, or Parquet.
What it cannot do
- Matching needs to hold every distinct value from the second file in memory, so files with tens of millions of unique values may not finish in a browser tab.
- Blank values never match other blank values, because two missing entries are not evidence of being the same thing.
- Matching is exact unless you turn on the options for uppercase, spacing, or punctuation.
Questions
- Is this the same as VLOOKUP?
- It does the same job and more. VLOOKUP pulls one column from another sheet; this brings across every column you choose, and it tells you which rows found no match instead of leaving #N/A behind.
- How big a file can this handle?
- Matching a million rows against a hundred thousand takes about fifteen seconds. Much larger files still work, and the tool warns you before it starts if your file is too large for the browser to finish.
- Is my file really not uploaded?
- Correct. The processing happens inside this page, and the browser is instructed to block outbound connections entirely. Open your developer tools, watch the Network tab, and reload — you will see no upload.
- Why did nothing match when the values look identical?
- Usually one file stores the value as text and the other as a number, so 00412 and 412 look the same but are not. The tool detects this and offers to fix it with one click.
- What happens if a value appears more than once in the second file?
- You get one output row per match, so the result can be longer than the file you started with. The tool counts this before it runs and asks you to confirm if the result would grow unexpectedly.
- Can I match on more than one column?
- Yes. Add as many column pairs as you need — for example an invoice number together with a tax id — and a row must agree on all of them to count as a match.
- Is it free?
- Yes, with no signup, no row limit, and no watermark. Paid features are for saving and re-running your steps on next month’s file, not for the tools themselves.
Your file is processed in this page and never uploaded — the privacy page shows how to confirm that yourself.