Text diff checker
Compare two text blocks and see what changed.
Paste text into both boxes and click Compare. Works well for code, config files, and prose.
About this tool
Quickly see what changed between two versions of text — a config file before and after an edit, two README drafts, an old log and a new one. This tool runs a line-by-line or word-level diff in your browser and colours the result: green for added, red for removed, grey for unchanged. Options include "ignore leading/trailing whitespace" and "ignore case" for quick sanity checks. Nothing is uploaded — the diff happens on your device.
How to use this tool
-
Paste the original
Into the left pane. Plain text, code, JSON, config, logs — anything text-based. Whitespace is preserved exactly, so indentation changes show up.
-
Paste the new version
Into the right pane. The diff regenerates every time either side changes — no submit button. Files of a few thousand lines stay responsive.
-
Read the highlights
Added lines appear in green, removed in red, and modified line-pairs sit side-by-side so you can read the change at a glance. The summary above the pane counts additions, deletions, and modifications.
Frequently asked questions
What's the difference between line and word diff?
Line diff compares one line at a time — best for code and config files where a whole line is added or removed. Word diff works token-by-token and is better for prose, where a sentence may have only a word or two changed.
Is this the same as git diff?
Same underlying idea (longest common subsequence) but much simpler: no patch hunks, no context lines, no file headers. Good for quick ad-hoc comparisons when you don't have the two files in a git repo.
Will large files work?
It handles reasonable inputs (tens of thousands of lines) comfortably. The algorithm is O(n·m) in memory, so pasting two novels will slow it down — for that you'd want a real diff tool locally.
Why are my diffs so noisy with reformatted code?
Diff algorithms work on lines. Reformatting (changing indentation, splitting one line into many) makes every changed line look new even when the meaning is identical. The fix is to compare after running both through the same formatter — or to compare token-level rather than line-level (some tools do).
Does this work for binary files or just text?
Text only. Diffing binary files needs format-specific tools (vimdiff for some binaries, dedicated tools for images / PDFs / spreadsheets). For text — code, prose, JSON, config — this is what you want.