How the comparison works
This tool uses Myers' diff algorithm — the same one behind
git diff — to find the shortest set of edits that turns the
first text into the second. That matters because a naïve line-by-line
comparison goes wrong the moment content shifts: insert one line near the top
and every line after it looks changed. Myers finds the longest common run of
lines instead, so an insertion is reported as a single added line and the rest
of the file stays quiet.
Word-level highlighting
When a line changes rather than being added or removed outright, comparing whole lines tells you that something changed but not what. So each changed line gets a second pass, this time over words, and only the words that actually differ are highlighted. Change one word in a long sentence and you see exactly that word, not a wall of red and green.
The two options
Ignore case treats Hello and hello as the
same line — useful for comparing text that has been through a formatter or a
case-normalizing pipeline. Ignore trailing whitespace hides differences
that are nothing but spaces or tabs at the end of a line, which is the single
most common source of noise when diffing files that have travelled between
editors. Both options affect only the comparison; what you see rendered is
always the original text.
Line endings are normalized automatically, so a file saved on Windows (CRLF) compares cleanly against the same file saved on Linux or macOS (LF) without every single line showing as changed.
Nothing leaves your browser
Text people compare tends to be text they care about: contract drafts, configuration with credentials in it, log excerpts, unpublished writing. Both sides are compared locally in the page, nothing is uploaded to a server, and nothing is written to the URL — so no fragment of what you pasted ends up in your browser history or in a link you might share later.
Related tools: for structured formats, the JSON, YAML, XML, and CSV diff tools compare the parsed data rather than the raw characters, which ignores reformatting entirely.