What a diff checker does
A diff checker takes two versions of a text and shows, line by line, exactly what changed: which lines were removed, which were added, and which stayed the same. Instead of squinting at two windows side by side, you get one annotated view where no edit can hide.
Typical jobs it solves: spotting what a counterparty quietly edited in a contract before you sign, comparing two revisions of a report, checking what changed between versions of a config file or code snippet, and verifying that a reviewed translation only touched the agreed sentences.
How to use it
- Paste the older version into the Original text box on the left.
- Paste the newer version into the Modified text box on the right.
- For short texts the result updates live as you type; for longer ones, click Compare.
- Tick Ignore trailing spaces on each line if invisible end-of-line spaces should not count.
- Read the added/removed counters, then use Copy diff to grab the result with
+and-prefixes.
Each side accepts up to 5,000 lines — plenty for contracts, articles and most source files.
How to read the output
The output follows the same convention Git and virtually every developer tool use:
| Prefix | Color | Meaning |
|---|---|---|
− | soft red background | the line existed in the original and is gone |
+ | soft green background | the line is new in the modified text |
| none | gray | the line is unchanged |
One thing that surprises first-time users: an edited line shows up as two events, the old wording with − and the new wording with +. That is by design — the comparison works on whole lines, so a changed line is literally one line leaving and another arriving.
Under the hood: longest common subsequence
To decide what changed, the tool computes the longest common subsequence (LCS) of the two texts: the largest set of lines that appear in both versions in the same order. Everything in that subsequence is reported as unchanged; lines found only in the original become deletions, and lines found only in the modified text become additions. The LCS is computed with dynamic programming — the same core idea behind the classic Unix diff.
Worked example
Original text (a three-line to-do list):
buy milk
call the plumber
water the plants
Modified text:
buy milk
call the electrician
water the plants
pick up dry cleaning
The longest common subsequence is buy milk followed by water the plants — two lines present in both versions, in the same order. The line-by-line result:
buy milk
- call the plumber
+ call the electrician
water the plants
+ pick up dry cleaning
Counters: 2 added, 1 removed. Swapping plumber for electrician produces a −/+ pair, while pick up dry cleaning gets a lone + because it is a brand-new line at the end.
Your text stays on your device
The whole comparison runs as JavaScript inside your browser: nothing is uploaded, nothing is logged, and nothing survives closing the tab. That matters when the texts are sensitive — NDAs, unsigned contracts, proprietary code or customer data never leave your machine, unlike online diff services that receive your content on their servers.
Frequently asked questions
Does it compare word by word or line by line?
Line by line — the standard granularity for code, contracts, lists and any structured text. Word-level diffs shine in flowing prose where one small edit changes half a line; a practical workaround is to put each sentence on its own line before comparing.
Can I compare Word documents?
Yes — by pasting their text into each box. Only the content is compared, not the formatting: bold, fonts, colors and tables are stripped when pasting. If you need to track layout changes, use Word’s built-in Compare feature; to know which text changed, pasting here is faster.
How is this different from git diff?
git diff compares files tracked in a Git repository and adds file paths, hunk headers and commit metadata. This tool applies the same underlying idea — lines marked with + and - — but with zero setup: no repository, no terminal, no installation. For anything outside version control, paste-and-compare is the right fit.
Do spaces and capitalization count as changes?
Yes. Two lines match only if they are identical character by character, so Hello and hello differ. The optional exception is the trailing-spaces checkbox: when enabled, spaces and tabs at the end of each line are stripped before comparing.