Text diff
Runs entirely in your browser. Your files and data never leave your device.
About this tool
A text diff tool compares an original and a changed version of some text and shows exactly what moved, was added, or was removed. Paste the two versions into the boxes, pick a mode, and the tool renders the differences below: additions in green, removals in red, everything else unchanged.
What’s the difference between line, word, and character mode?
Line mode gives you a unified view with + and - prefixes, similar to git diff, which is the right choice for comparing whole files like config or code where you care which lines changed. Word and character mode inline the changes within a line instead, so a single word swapped in a sentence shows up as just that word highlighted rather than the entire line being marked as removed and re-added. Character mode is the finest-grained option and catches things word mode would miss, like a typo fix inside a single word or a punctuation change.
How does it decide what counts as “changed”?
The tool runs on the jsdiff library, which implements the Myers diff algorithm: the same approach behind git diff and most other line-based diff tools. It looks for the smallest set of insertions and deletions that turns the first text into the second, rather than just comparing line by line in order, which is why moved or reordered content still lines up sensibly instead of showing as one giant deletion and addition.
Does either text get uploaded?
No. Everything runs in your browser, and neither text ever leaves your machine or touches a server. That matters if you’re diffing a contract redline, a snippet of code with an API key still in it, or a draft you haven’t shared with anyone yet, since none of it is transmitted or logged anywhere.
When is this useful?
Reach for this when reviewing an edited paragraph, comparing two versions of a config file, checking what a rewrite changed in a legal clause, or spotting a one-character typo fix buried in a long line. It’s also a quick way to check whether two blocks of text that look identical actually match, since trailing whitespace or an invisible character shows up as a difference even when your eyes would skip right past it.