Skip to content
ToolBoxGenie

Text Diff Checker

Text Tools · Added 12 August 2026

Paste two versions of anything — a contract, a config file, a draft — and see precisely what changed between them. Differences are found line by line, with the option to ignore the changes that usually do not matter: letter case, indentation, and blank lines.

Ignore while comparing

How to use the text diff checker

  1. 1Paste the original version on the left and the changed version on the right.
  2. 2Tick anything that should not count as a difference — case, spacing and indentation, or blank lines.
  3. 3Press Compare. The summary gives you added, removed and unchanged line counts plus a similarity score.
  4. 4Read the table underneath: a red minus is a line that was removed, a green plus is one that was added.
  5. 5Tick 'show only changed lines' on a long document, or copy the result out as a unified diff.

Examples

One word changed in a paragraph

Input
Two drafts differing by a single word on line 4
Result
1 line added, 1 line removed, similarity 90%

Line-based comparison reports an edited line as a removal plus an addition — the same way version control does.

Reformatted but not rewritten

Input
The same config file after an auto-formatter ran, with 'ignore spacing' on
Result
No differences

This is the fastest way to prove a formatting commit changed nothing of substance.

Two exported lists

Input
Yesterday's 400-line export against today's
Result
12 added, 3 removed, similarity 96.3%

Sort both lists first if the source system does not guarantee a stable order, or every moved row reads as a change.

About the text diff checker

Why line-based comparison is the useful default

It would be possible to highlight individual changed characters, and for a one-line edit that reads nicely. On a real document it does not: character-level differences pick out shared letters between unrelated sentences and produce a speckled mess that is harder to read than the original.

Whole lines are the unit people actually reason about. It is how code review works, how version control records history, and how anyone describing a change tends to talk about it. The trade is that a one-word edit is reported as two changes — which is why the ignore options exist, to strip out the differences that carry no meaning before the comparison starts.

Getting a clean comparison out of messy input

Most confusing diffs come from something other than the content. Files saved on Windows and macOS use different line endings, so this tool normalises them before comparing — otherwise every line would show as changed. Trailing whitespace and inconsistent indentation cause the same noise, which is what the spacing option removes.

The other frequent culprit is ordering. Two exports of the same data in a different row order share every line and match on almost none of them, because a diff respects sequence. Sorting both sides first turns that into the comparison you meant to run — a reordered list becomes identical, and only genuine additions and removals remain.

Frequently asked questions

Is my text uploaded to compare it?
No. The comparison runs as JavaScript in this browser tab, which is what makes it safe to paste an unreleased contract or a production configuration file. There is no upload endpoint on this site.
Why is a small edit shown as a whole line changing?
Because the comparison works on whole lines, which is the same unit Git and most review tools use. A line where one word changed appears as that line removed and a new one added. For prose, turning on 'ignore spacing' and keeping paragraphs on single lines makes the output much easier to read.
Can it compare two files rather than pasted text?
Not directly — open each file and paste its contents in. For very large files, a local diff tool or your editor's built-in comparison will handle them better; this tool compares the first 1,500 lines of each side, beyond which the table itself grows faster than its usefulness.
What does the similarity percentage mean?
It is twice the number of matching lines divided by the total number of lines across both texts. Two identical texts score 100%, two texts with nothing in common score 0%. It is a rough measure of overlap, not a measure of how much meaning changed — moving a paragraph scores badly while changing one crucial word scores well.