Online Excel Editor
Free · No Signup · Local Processing

Join Excel Tables by Key Column Online — Free, No Upload, 1 Click

Left or inner join two tables by a key column. No upload, no sign-up — file stays on device.

File A (rows to keep)

Drop a .xlsx, .xlsm, or .xls file here, or click to browse

Processed locally · never uploaded

File B (lookup table)

Drop a .xlsx, .xlsm, or .xls file here, or click to browse

Processed locally · never uploaded

Join type

How to Join Two Excel Tables Online

  1. Choose file A — the table whose rows you want to keep (for example an orders list). It is parsed locally in your browser as soon as you select it.
  2. Choose file B — the lookup table that adds extra columns (for example a customer list). It is parsed the same way, independently of file A.
  3. Pick the sheet in each file (both default to the first sheet) and the key column in each file — the shared identifier, such as an ID, SKU, email, or customer number. Both default to column A, shown as “A — Id” when row 1 is a header.
  4. Keep “First row is a header” enabled (the default, shared by both files), then pick the join type: Left join (default) keeps every row from file A; Inner join keeps only matching rows.
  5. Click Join tables, review the report — rows output, matched rows, and duplicate keys in B — and download {name}-joined.xlsx.

How It Works

Both files are opened in your browser with SheetJS — each workbook is read into an in-memory array of rows, one sheet per side. Table B is indexed by its key column: keys are normalized so Dates compare as ISO instants and empty cells form a valid key, while the number 1 and the text "1" stay distinct. Table A is then walked row by row; each key is looked up in the index of B, and on a hit every column from the matched B row except the B key column is appended to the columns of A. A left join keeps unmatched A rows with empty B cells, an inner join drops them; a key that repeats in B uses only its first occurrence and counts the rest as duplicates. The combined rows are rebuilt from cell values into a single Joined sheet, packed as a fresh .xlsx, and downloaded — your original files are never modified.

Your file never leaves your device — processing is 100% in-browser.

Compared to VLOOKUP & Power Query

Excel gives you two usual routes to merge by a key: hand-write a VLOOKUP or XLOOKUP for every column you want to pull, or open Power Query and step through a multi-screen merge. This tool sits between the two — pick two tables, pick a key column on each side, click once.

ApproachWhere your file goesWhat to expect
This toolNowhere — processed in your browserFree, no sign-up, one-click join, batch-friendly
VLOOKUP / XLOOKUP formulasStays on your diskManual, one column per formula, results are formulas
Power QueryStays on your diskMulti-step setup, steeper learning curve

Left Join vs Inner Join

Say table A (orders) has 3 rows and table B (customers) only contains 2 of the customer keys:

Table A — Orders (3 rows)Table B — Customers (2 keys)
A-101 · customer C1C1 · Acme Inc.
A-102 · customer C2C2 · Beta GmbH
A-103 · customer C3
Left join — 3 rows (default)Inner join — 2 rows
A-101 · C1 · Acme Inc.A-101 · C1 · Acme Inc.
A-102 · C2 · Beta GmbHA-102 · C2 · Beta GmbH
A-103 · C3 · (blank)

With a left join, A-103 is still there — its B columns are simply empty. With an inner join it disappears, because C3 does not exist in table B. Rows always keep table A’s order, and matching works even when the two files are sorted differently.

A right join and a full outer join are not offered. To keep unmatched rows from both sides, run the tool again with the two files swapped and combine the two results in the editor.

Output Columns and Duplicate Header Names

The output contains every column from table A first, followed by every column from table B except B’s key column — it already matches A’s key, so copying it would only duplicate information. If B’s key column sits in the middle, the columns on both sides still travel in their original order.

When a B header equals a name already used (compared as text), it is renamed automatically: the second one gets “ (2)”, the third “ (3)”, and so on — for example Name, Name (2), Name (3). Blank header cells take part under their column letter (A, B, C…), so an unnamed B column following an unnamed A column B becomes B (2).

Matching is type-sensitive: the number 1 and the text "1" do not match, because Excel stores them with different types. Dates are normalized to ISO timestamps first, so the same instant shown with different date formats still matches; empty and null cells form a valid key and match each other.

When to Join Excel Tables

  • A friendlier VLOOKUP / XLOOKUP replacement: pull whole columns from a reference table into transactional data without writing a single formula.
  • Enrich orders with customer information: add customer name, segment, and country from a customer master file to an order export by customer ID.
  • Master data enrichment: attach product category, price, and supplier details from a product catalog to sales or inventory rows by SKU.
  • Combine exports from two systems: match CRM records with billing records, survey responses with respondent lists, or analytics rows with campaign metadata.
  • Check a list against a reference: an inner join tells you instantly which keys exist in both files, while a left join marks the rest with empty B columns.

If a key appears more than once in table B, only its first row is used for every match. The extra occurrences are not silently merged — they are counted and shown as “Duplicate keys in B” after the join, so you can clean the lookup table and run it again.

Good to Know

  • Both files are processed entirely in your browser; nothing is uploaded and there is no sign-up.
  • The joined workbook is rebuilt from values: cell styles, column widths, merged cells, charts, and formulas (kept as their last calculated values) are simplified.
  • The result always contains one sheet named Joined, and downloads as a modern .xlsx even when the inputs are legacy .xls files.
  • Encrypted workbooks (a password is needed to open them) cannot be read; remove the open password first.
  • Rows with the same key repeated in table A all match the same (first) B row — every row from A is kept.

Frequently Asked Questions

Is this Excel join tool free?

Yes — completely free, with no sign-up, no watermark, and no file-size limit for normal workbooks. Both files are processed in your browser and never uploaded.

What is the difference between a left join and an inner join?

A left join keeps every row from table A and leaves the B columns empty when no key matches. An inner join keeps only the rows whose key exists on both sides.

Which column is used to match the rows?

The key column you pick in each file — typically an ID, SKU, email, or customer number. It can sit at a different position on each side, and row order does not matter: only the key has to match.

What happens when a key appears multiple times in table B?

Only the first row for that key is used for all matches; later occurrences are ignored but counted under “Duplicate keys in B”, so you can spot and clean them in the lookup table.

Does the number 1 match the text "1"?

No — matching is type-sensitive, so 1 and "1" stay apart. Dates, however, are normalized to ISO timestamps, so the same instant displayed in different date formats still matches.

Is table B’s key column included in the result?

No. The output consists of all columns from A and all columns from B except B’s key column. If you need the key value itself, A’s key column is already carried through.

Are my files uploaded to a server?

No. Both parsing and joining happen entirely in your browser; the files never leave your device for an external server.

Related Tools

Need the full reference? Read VLOOKUP in Excel: Syntax, Examples & Common Errors — syntax, examples, common errors, and FAQ.

Need the full reference? Read XLOOKUP in Excel: Syntax, Examples and Errors — syntax, examples, common errors, and FAQ.

Need the full reference? Read INDEX MATCH in Excel: Syntax, Examples and Errors — syntax, examples, common errors, and FAQ.

Want to enrich and clean the joined data next?

Open the free online Excel editor