Skip to content

Text Tools

Compare two texts

Paste two versions and see exactly which lines were added, removed or left alone.

  • Free, no signup
  • No upload — runs on your device
  • No watermark
  • Unlimited use

Text Diff

Processed locally

Ignoring whitespace is what makes a diff readable

Diff two versions of a document where someone reflowed the paragraphs and every single line shows as changed. The actual edit — three words in the fourth paragraph — is buried in five hundred lines of noise. This is the normal experience of diffing prose, and it is why most people give up on diff tools for anything but code.

Normalising whitespace before comparison collapses runs of spaces, strips leading and trailing space, and makes reflowed text compare equal to its original. The single genuine change then stands alone. It is the difference between a tool that answers your question and a tool that reprints your document in red.

The algorithm underneath is a longest-common-subsequence match, which finds the smallest set of insertions and deletions that turns one text into the other. It is the same approach Git uses. Its weakness is that a line moved from top to bottom shows as one deletion and one addition rather than a move, because subsequence matching has no concept of relocation.

How it works

  1. Paste the original text on the left and the new version on the right
  2. Tick ignore whitespace or capitalisation if needed
  3. Read the highlighted result below
Why nothing uploads. Every operation on this page happens inside your browser using JavaScript and WebAssembly. Your file is read into memory, processed, and offered back as a download. It is never transmitted. Disconnect from the internet after this page loads and the tool keeps working.

Frequently asked questions

Why does every line show as changed?
Usually because the text was reflowed or the indentation differs. Tick "ignore whitespace" and the real changes will surface.
Does it show which words changed within a line?
No — this is a line-level diff. A line with a single altered word appears as one removal and one addition. Word-level diffing is a different algorithm and much noisier on prose.
Can it detect that a paragraph was moved?
No. A moved block appears as a deletion in one place and an addition in another. This is a fundamental property of subsequence-based diffing, and Git behaves the same way.
What do the line numbers mean?
The left number is the line in the original text, the right is the line in the changed text. A dash means the line does not exist in that version.
Is my text sent to a server to compare it?
No. The comparison runs in your browser. Neither version is transmitted anywhere.