In Excel: use =A2=B2 for row-by-row matches, or =COUNTIF($B:$B,A2)>0 to check whether each value in column A appears anywhere in column B.
On this page7
Only in A: 2 · Only in B: 1
What this does
Comparing columns has two different meanings. Row-by-row comparison asks whether A2 equals B2, A3 equals B3, and so on. List comparison asks whether each value from one column exists anywhere in the other column. The first uses a direct equality test; the second uses COUNTIF, MATCH or XLOOKUP. The same idea underpins a lot of everyday Excel work, so the few minutes spent getting it right here pay back across every sheet you build afterwards. Treat it as a pattern, not a one-off, and it stops being something you look up and starts being something you reach for. The difference between a quick fix and a sheet you can trust is the extra minute you spend validating “compare 2 columns in excel for matches”. Start on a copy or a tiny sample, keep the affected columns visible, and compare the result with the tool above before you touch the real workbook. When a formula is involved, keep the inputs labelled beside it, reference cells instead of typing values, and apply number formatting only after the result checks out. The point is a data step that keeps your analysis trustworthy, but the practical win is that someone else can open the file and understand what happened without asking you.
A worked example
Column A has invoice IDs from system 1 and column B has IDs from system 2. In C2, =A2=B2 returns TRUE only when the two rows match exactly. If the rows are not aligned, use =COUNTIF($B:$B,A2)>0 in C2; invoice 1042 returns TRUE if it appears anywhere in B, even on a different row. Column comparison is core spreadsheet reconciliation: invoices, IDs, email lists, product codes, migration checks and any workflow where two systems should agree. A practical tip before you scale it up: build it once on a small block of test data, confirm the number against the tool on this page, and only then point it at your real sheet. That one habit catches almost every mistake while it is still cheap to fix, long before a wrong figure reaches a report or a colleague.
In Google Sheets
If you are in Google Sheets rather than Excel, the good news is that the formula shown here is identical and the workflow barely changes — menus sit across the top instead of in a ribbon, and a few function names differ slightly, but anything you build here moves across with little or no rework. Nothing on this page is behind a login: the tool runs entirely in your browser, the formula is shown in full with one-click copy, and the steps work the same on Windows and Mac. That is the whole promise here — the exact answer, a way to prove it on your own numbers, and just enough context to make it stick. Treat “compare 2 columns in excel for matches” as a small building block rather than a chore. Once the inputs sit in their own cells and the formula reads from them, the same setup answers a dozen related questions with a tweak, and Excel keeps every dependent figure current as the data changes. The tool above is there so you can rehearse and verify before committing anything to a real workbook; the steps and worked example are there so the logic sticks. Get it right once and it stops costing you time — it starts saving it, every time the question comes back around.
Common mistakes
- Using
=A2=B2when the two lists are sorted differently. - Forgetting absolute references in $B:$B, so the lookup range shifts while copying.
- Treating numbers stored as text as equal to real numbers without cleaning the data.
- Ignoring leading/trailing spaces;
TRIMboth columns when matches look visually identical but fail.
Frequently asked questions
How do I compare two columns row by row?
Use =A2=B2 and fill down. TRUE means the values in that row match exactly.
How do I find values in A that are missing from B?
Use =COUNTIF($B:$B,A2)=0 and filter TRUE results.
Can conditional formatting compare columns?
Yes. Use a formula rule such as =$A2<>$B2 for row differences, or COUNTIF for list membership.