CanDoYa
EN

Text Diff Checker

Runs entirely in your browser - no upload, no sign-up.

Original text
Changed text
DifferencesRows: 0
Paste two versions of a text on the left and right to see what changed, line by line.
Paste two texts to compare them line by line and word by word
Added: 0Removed: 0Changed: 0Unchanged: 0
Share this tool

What is a text diff checker?

A text diff checker compares two versions of a text and highlights what was added, removed or changed between them. This tool runs a Myers diff (the same minimal-edit algorithm git uses) entirely in your browser: paste an original on the left, a new version on the right, and you get a side-by-side view with line numbers, word-level highlights on changed lines, and counts of added, removed and unchanged lines.

How to use

  1. 1Paste the original. Drop the original text into the left box. It can be a sentence, a paragraph or thousands of lines - the diff runs in the browser.
  2. 2Paste the changed version. Drop the new version into the right box. The side-by-side diff updates as you type, with line numbers and word-level highlights on lines that changed in place.
  3. 3Filter the noise. Toggle Ignore case or Ignore whitespace if those differences are not meaningful. Use Swap sides to flip the comparison, or Copy as patch to copy a unified diff of just the changes.

Who it's for

Diff runs as you type and stays on your device - nothing is uploaded, so it's safe for unpublished drafts, contracts, source code and AI prompts. The line diff uses the Myers algorithm to find the minimal set of insertions and deletions that turn the left text into the right one - the same approach that powers git diff - so the highlights track what actually moved instead of going red from one edit onward. On lines that changed in place, a second word-level pass picks out the words that changed, with strike-through on what was removed and a green wash on what was added.

Two toggles tame the noise: Ignore case treats Hello and HELLO as equal, and Ignore whitespace ignores indent changes, trailing spaces and double spaces. Hit Swap sides to flip the comparison direction without retyping, or Copy as patch to grab a unified - / + patch of just the changes.

FAQ

Is this text diff tool free?

Yes - 100% free, no sign-up and no character limits. The diff runs locally in your browser, so it stays fast even on long texts.

Is my text uploaded anywhere?

No. Both texts are diffed entirely in your browser and never touch a server, which makes the tool safe for unpublished drafts, contracts, source code and confidential AI prompts.

How does the diff decide what changed?

It uses Myers' diff algorithm to compute the minimum edit script that turns the left text into the right one. The result is a sequence of unchanged, deleted and inserted lines - the same model git uses. Adjacent delete/insert pairs are collapsed into a single 'changed' row so you see them side by side, and a second word-level diff picks out the exact words that moved inside a changed line.

What does Ignore whitespace actually ignore?

It collapses runs of whitespace to one space and trims leading and trailing whitespace before comparing each line. So an extra blank line, an indent change, or a tab vs four spaces will not show up as a difference - changes inside the words still do.

Does the diff handle Unicode, emoji and non-Latin scripts?

Yes. The line and word diff operate on Unicode characters, so emoji, Chinese, Arabic and Cyrillic text are all compared correctly. There is no language-specific tokenization - the tool just looks for matching characters.

Can I compare large texts?

Yes - the tool handles hundreds of thousands of characters comfortably. For pathologically large and totally different pairs (millions of characters on both sides) it falls back to a coarse 'replace all' diff to stay responsive rather than locking up the page.

What does Copy as patch produce?

A simple unified-style patch with one prefix character per line: a space for unchanged lines, '-' for removed lines, and '+' for added lines. Paste it into a chat, an issue or a code review when you want a compact textual record of the change instead of a full side-by-side view.

Why are two identical texts still showing rows?

If the toggles are off and the texts are byte-identical, the result panel collapses to the 'Texts are identical' message. With Ignore case or Ignore whitespace on, the byte-level texts can differ but the comparison still reports no semantic changes - the message then notes that the texts are identical under the chosen rules.