AI List Deduplicator & Merger

Merge and deduplicate bullet lists from multiple LLM responses.

Paste two or three LLM-generated lists; the tool merges them, removes exact duplicates, and optionally fuzzy-matches near-duplicates using edit distance so 'set up CI' and 'set up CI/CD' collapse into one item. It runs free in your browser on Gera Tools, with nothing uploaded.

Last updated Source: Gera Tools

How are list items detected?

Each non-empty line is one item. Leading bullet markers (-, *, +, or 1.) and surrounding whitespace are stripped before comparison, so '- set up CI' and 'set up CI' are treated the same.

Merge and dedupe AI lists

Ask the same question to two models, or run one model twice, and you get two overlapping bullet lists. Combining them by hand means scanning for repeats. This tool merges up to three lists, strips the duplicates, and optionally collapses near-duplicates so you end up with one clean, deduplicated list.

How it works

Each line becomes an item; bullet markers and whitespace are stripped, and comparison is case-insensitive. In exact mode, items that normalise to the same string are collapsed to their first occurrence. In fuzzy mode, the tool also computes the Levenshtein edit distance between items and merges any pair whose similarity exceeds your threshold.

List A: set up CI, write tests
List B: write tests, set up CI/CD

fuzzy ->  set up CI, write tests   (CI/CD merged into CI)

When to use this tool

The most common scenario is multi-model prompt aggregation: you ask GPT-4o and Claude the same question (for example “list the steps to launch a SaaS product”) and want a single master list without manual deduplication. A second common case is running the same model prompt multiple times to increase coverage — models are non-deterministic, so different runs surface different items, and merging three runs gives you broader coverage than one.

The tool is also useful for combining research notes, action-item lists from multiple meeting transcripts, or tag lists from different contributors — any situation where several people or systems generated overlapping lists in plain text.

Exact vs. fuzzy: choosing the right mode

Exact mode removes only items that are character-for-character identical after stripping bullets and normalising whitespace and case. Use this when wording precision matters — for a list of specific URLs, command names, or technical terms where “git rebase” and “git rebase -i” are genuinely different items.

Fuzzy mode collapses items that are “close enough” according to Levenshtein edit distance. The similarity threshold controls how aggressive this is: 100% requires an exact normalised match (same as exact mode), while 80% allows up to roughly one word’s worth of difference per item. A threshold around 85–90% is a good starting point for most prose-style lists.

Good fuzzy targets — pairs that should collapse:

  • “add unit tests” / “add unit testing”
  • “set up CI” / “set up CI/CD pipeline”
  • “write documentation” / “write docs”

Bad fuzzy targets — pairs that should stay separate:

  • “use Redis” / “use Postgres” (short items with high apparent similarity)
  • Technical version numbers like “Node 18” / “Node 20”

If the threshold is too low, semantically different items collapse incorrectly. When in doubt, start at 88% and raise it if too many unrelated items are merging.

Output order and casing

Items appear in first-seen order across boxes 1, 2, and 3 in sequence. The first occurrence’s original casing and wording is kept; later duplicates are discarded. This means the most important list should go in box 1, since its phrasing wins whenever there are duplicates.

Tips and notes

Use exact mode when wording precision matters and fuzzy mode when different runs just phrase the same idea differently — start the similarity threshold around 85% and adjust. First-seen order is preserved, so the earliest phrasing of each point wins. To compare two responses line by line instead of merging them, use the AI Output Diff tool.