Skip to content

Join two CSV files

Join two CSV files on a key column and download one joined CSV.

CSVjoinmergeText

Upload

Files (2–2)
Two delimited files, up to 50 MB each. The left-side file is the base of the join; the right-side file is joined in.

Options

Key column in the left file The header name of the key column, or its 1-based number.
Key column in the right file Not repeated in the output; the match joins at the left key's position.
Questions people ask
How are the key columns matched?
As plain text, exactly. The cell "3" matches the cell "3" and nothing else: no numeric coercion ("3.0" and " 3" match nothing), no trimming, no case folding. Tidy the key columns first if their values must be comparable in a stricter form.
What happens with duplicate keys?
Every left row holding a key combines with every right row holding it: two left rows and three right rows on the same key produce six output rows. A single key pairing may not exceed 10,000 combined rows and the whole plan may not exceed 1,000,000 rows; both refusals name the counts and the first affected left row, never the key value.
Why does the formula policy default to prefix here?
The other csv tools re-emit your own rows, so they keep your values verbatim by default. A join manufactures a new document, whose cells a spreadsheet may re-interpret as formulas, so the tool defanges risky lead characters (= + - @) by default. Keep passes cells through untouched; refuse stops the run naming the output row and column.
What are the size limits?
Each file up to 50 MB, at most 200,000 data rows per side, a 10,000-row cross-product per key, 1,000,000 joined rows and a 256 MB download. The shape caps are checked before anything is written, so an oversized join fails fast with a named refusal instead of a partial file.
What happens to my files?
Both uploads are deleted as soon as processing finishes; the joined CSV stays downloadable for about 10 minutes, then is deleted automatically.