Overview
Introduction
Comparing two lists by hand, spotting what's shared and what's unique to each side, quickly becomes impractical once either list grows past a few dozen entries.
List Comparer automates the whole comparison in one pass, reporting exactly what's only in List A, only in List B, and shared by both.
What Is List Comparer?
A two-list set comparison tool: it treats each list as a set of distinct values and reports the three natural partitions of their union: A-only, B-only, and the intersection.
It's the two-input generalization of tools like Common List Item Finder (intersection only) and Distinct List Item Finder (symmetric difference only), giving you the complete picture in a single result.
How List Comparer Works
Both inputs are split into items using the shared selected separator, then each list is deduped into a set of distinct values.
List A's deduped values are checked against List B's set (and vice versa) to build the only-in-A and only-in-B sections; values present in both sets form the third, shared section.
When To Use List Comparer
Use it to spot what changed between two versions of a list, like a before/after export of tags, IDs, or usernames.
It's also useful for auditing overlap between two independently maintained lists, such as an allow-list and a denied-list.
Often used alongside Three-List Comparer, Common List Item Finder and Distinct List Item Finder.
Features
Advantages
- Reports all three comparison sections in a single pass instead of running three separate tools.
- Dedupes each input list automatically, so internal repeats don't skew the comparison.
Limitations
- Comparison is exact and case-sensitive with no trimming applied.
- Only handles two lists; use Three-List Comparer for a three-way comparison.
Examples
Best Practices & Notes
Best Practices
- Use the same separator setting for both lists, since it's shared across the whole comparison.
- Follow up with List Subtractor if you specifically need a one-directional "remove B from A" result rather than the full three-way breakdown.
Developer Notes
Builds `Set<string>` objects for each list via `new Set(items)`, then computes each section with `Array.prototype.filter()` against the opposite set's `.has()` method, giving each membership check O(1) average time.
List Comparer Use Cases
- Diffing two exported lists to see what was added or removed between versions
- Auditing overlap between two independently maintained allow-lists or deny-lists
- Reconciling two datasets that should theoretically match but may have drifted
Common Mistakes
- Assuming order or duplicate counts are preserved; each section is a deduped set-based result, not a raw positional diff.
- Forgetting both lists share one separator setting; mixed-format lists need to be normalized first.
Tips
- If you only need the intersection or only the symmetric difference, Common List Item Finder and Distinct List Item Finder give a more focused single-list result.
- Chain the "only in A" or "only in B" section into another list tool for further processing.