Text Diff Checker

This text diff checker compares two blocks of text and highlights exactly which words were added or removed, word by word rather than line by line. Runs entirely in your browser.

How to use it

Paste the original text on top and the changed version below, then click "Compare". Removed words appear struck through in red, added words appear underlined in green, and unchanged text stays plain.

How word-level diffing works

The text is split into word-and-whitespace tokens, and the diff algorithm finds the shortest sequence of token insertions and deletions that turns the original into the changed version — the same category of algorithm git diff uses for lines, applied here at the word level instead.

When this is more useful than a line diff

Comparing two drafts of a paragraph, a legal clause, or a product description usually involves small in-place edits rather than whole rewritten lines — a line-level diff would just mark the entire paragraph as changed, while a word-level diff shows precisely which words moved.

Text Diff Checker Pro

Pro version coming soon — batch validation via CSV upload, exportable results, API access, and an offline version. The free tool stays free.

Pro version coming soon

Batch validation via CSV upload, exportable results, API access, and an offline version are on the way. The free tool stays free.

Frequently asked questions

Why word-level instead of line-level or character-level?

Line-level diffing marks a whole line as changed even if only one word moved, and character-level diffing is noisy for prose. Word-level is the sweet spot for comparing sentences, paragraphs, or short documents — it shows exactly which words changed without drowning the result in unrelated line or character noise.

What algorithm does this use?

This tool uses jsdiff, a widely used JavaScript diff library that implements the standard Myers diff algorithm at the word level — the same class of algorithm behind tools like `git diff`, adapted to compare word tokens instead of lines.

Why not write a diff algorithm from scratch?

A correct, efficient diff implementation has real edge cases (how whitespace and punctuation get tokenized, how the algorithm picks between equally-short edit sequences) — using a mature, widely-tested library avoids subtly wrong output that would be easy to miss in a quick visual check.

Does it ignore whitespace or capitalization differences?

No — comparisons are exact by default, since silently ignoring differences could hide a real change. If you need a whitespace- or case-insensitive comparison, normalize both texts yourself before pasting them in.

Is my text sent anywhere?

No. The comparison runs entirely in your browser via JavaScript — nothing is transmitted, logged, or stored.