# CSV join tool

> Join two tables by selected keys with unmatched-row output.

[Open tool](https://www.toolcabana.com/aa/csv-join-tool) · [Spreadsheets and data cleanup](https://www.toolcabana.com/aa/category/spreadsheets-and-data-cleanup)

Tool ID: csv-join-tool. Requested language: aa. Description language: en. Complete guide translation: no; untranslated sections use English.

## Overview (en)

The CSV join tool combines two CSV or XLSX tables by matching a key column in the left file with a key column in the right file. It supports left, inner and full joins, so unmatched rows can be kept with blank cells. Output columns are prefixed with left. and right., and the joined table is capped at 20,000 rows.

## Supported tasks (en)

Join two tables by selected keys with unmatched-row output.

## Steps (en)

1. Choose a source file. If the tool accepts multiple files, arrange them in the order you want.
2. Set left key column, right key column, join.
3. Run csv join tool, review the output, then use the available copy or download controls.

## Settings

- Left key column (en; key: leftKey; type: text)
- Right key column (en; key: rightKey; type: text)
- Join (en; key: kind; type: select): left [en], inner [en], full [en]

## Limitations (en)

CSV/XLSX inputs are capped at 10 MB each, 200 columns and 20,000 rows; joined output is capped at 20,000 rows. JSONPath script/filter evaluation is disabled. Other operations apply their visible controls and text limits.

## Privacy and connections (en)

This operation processes its source in your browser. Copy and download are explicit actions; source input is not saved in an account or history.

## Questions (en)

### What is the difference between left, inner and full join?

Inner keeps only rows whose keys match in both files. Left keeps every row from the first file, with blank right columns when unmatched. Full also adds unmatched rows from the second file with blank left columns.

### Why does my joined CSV have more rows than the original?

If a key appears more than once in the right file, every matching pair is output. Repeated keys can multiply records, and the tool stops when output exceeds 20,000 rows.

### Do the key columns need the same name in both files?

No. Set the left key column and right key column separately, for example id and customer_id. Matching is an exact string comparison, so 01 and 1 do not match.

### Where is my input processed?

This operation processes its source in your browser. Copy and download are explicit actions; source input is not saved in an account or history.

### What are the input limits?

CSV/XLSX inputs are capped at 10 MB each, 200 columns and 20,000 rows; joined output is capped at 20,000 rows. JSONPath script/filter evaluation is disabled. Other operations apply their visible controls and text limits.

## Related tools

- [CSV duplicate row remover](https://www.toolcabana.com/aa/csv-duplicate-row-remover)
- [CSV file merger](https://www.toolcabana.com/aa/csv-file-merger)
- [CSV column splitter](https://www.toolcabana.com/aa/csv-column-splitter)
- [CSV pivot table builder](https://www.toolcabana.com/aa/csv-pivot-table-builder)
