The Private Diff Workspace for Text, Documents & Code

One workspace for every comparison — text, PDF, Word, files and code. Everything runs locally in your browser and nothing is ever uploaded. For plain text, the dedicated Compare Text tool is the full-featured home for pasting and diffing two texts.

No server uploads — files stay on your device
Instant diff results
Free forever — no signup

Paste your two texts → differences are highlighted instantly, as you type

Compare your texts in under 3 seconds — no signup required

No comparison yet. Paste or upload text in both fields below — results appear here automatically, and nothing is calculated until you do.

Precision:
View:

Compare your two texts

Original Text (A)
0 words

Modified Text (B)
0 words

See How It Works

Additions are highlighted in green. Deletions are highlighted in red.

Original

Hello world

This is version one

The quick brown fox

Modified

Hello world!

This is version two

The quick brown fox jumps

Why Choose SnapTextCompare?

Compare text instantly — without uploads, accounts, or slow processing.

Instant Results

Differences appear as you type — zero waiting.

Compare text now →

No Server Uploads

Paste text or open files — they are read and compared in your browser.

Compare documents →

Your content stays private

No network request is ever made with your content — nothing is sent to our servers.

Why privacy matters →

Works Offline

Once loaded, the diff tool works without internet.

Learn more →

What SnapTextCompare Compares

SnapTextCompare is a text comparison tool: it takes two versions of the same content and highlights every addition, deletion and modification. Paste text, or upload PDF, DOCX and TXT files — the extraction and the comparison both happen locally, so your content is never sent to our servers. That makes it usable for contracts, proprietary code and internal documentation.

Use it to compare document drafts, review contract revisions, check code changes before merging, or verify what an AI model rewrote.

Comparing AI Output (ChatGPT, Claude, Gemini)

One of the fastest-growing reasons people compare text today has nothing to do with contracts or code: it's checking what a language model actually changed. If you ask ChatGPT to "tighten this paragraph" or Claude to "rewrite this in plain English", the response looks plausible — but plausible is not the same as faithful.

Three concrete workflows people run here every day:

  • Prompt A vs. prompt B — Run the same source text through two different prompts and diff the results to see which instruction actually moved the output.
  • Model vs. model — Paste a ChatGPT answer on the left and a Claude or Gemini answer on the right. The diff shows exactly where the outputs diverge, so you know which claims to verify yourself. Agreement between two models is not evidence that either is correct.
  • Original vs. AI edit — The most important one. Diff your own draft against the AI's revision before you accept it. Changes to numbers, dates, names, and citations are usually the ones worth checking most carefully, and our importance scoring surfaces those categories first.

Because everything runs locally, you can do this with unpublished drafts, client material, or internal documentation without sending a single byte to another AI service.

How to Read the Similarity Score

The similarity percentage comes from a normalised Levenshtein edit distance: the minimum number of character insertions, deletions, and substitutions needed to turn the first text into the second, divided by the length of the longer text. It is a character-level measure, not a meaning-level one — which is why we always pair it with a plain-language explanation.

  • 99–100% — Effectively identical. Usually whitespace, a stray character, or an invisible encoding difference.
  • 95–99% — Almost identical. Minor wording or punctuation edits; skim the highlights and move on.
  • 80–95% — Noticeable edits with the structure intact. Typical of a real editing pass.
  • 50–80% — Substantial rewriting. Read the whole diff rather than trusting the score.
  • Below 50% — Two largely different texts. The percentage stops being useful; use the change breakdown instead.

A high similarity score never means "safe to approve". A contract can be 99.4% identical and still have had its payment terms flipped from 30 to 90 days. That single-digit difference is why we score importance separately from similarity, and why numbers, dates, currency amounts, and named parties are weighted far above formatting noise.

Word, Line, or Character — Which Mode to Use

Picking the wrong granularity is the most common reason a diff looks noisy. As a rule of thumb:

  • Word mode for prose, marketing copy, contracts, and anything a human wrote in paragraphs. Reflowed line breaks won't create false positives.
  • Line mode for source code, CSV rows, logs, configuration files, and JSON — anywhere a line is a meaningful unit and order matters.
  • Character highlighting on top of either mode when you need to catch a single transposed digit, a changed currency symbol, or an altered URL slug.

Every mode runs through Google's diff-match-patch library in your browser. Word mode tokenises the text and diffs the tokens, line mode encodes whole lines, and character mode diffs raw characters — the same underlying shortest-edit-script diff in all three cases, so moved sentences and reflowed paragraphs stay readable instead of collapsing into one giant red-and-green block.

How SnapTextCompare works

Diff engine

Google's diff-match-patch (Apache 2.0), running in your browser. Character mode diffs raw characters; word and line modes encode tokens or lines first and diff those, then decode the result.

Similarity & importance

Similarity = 1 − Levenshtein / max(len). Importance weighs each change by category — money and dates score 90+, punctuation scores 3. Deterministic on any device.

Privacy

Files are read with the HTML5 File API and processed in your browser. No network request is ever made with your content — verifiable in the Network tab of your browser's DevTools.

PDF extraction uses pdf.js (Mozilla). Word extraction uses mammoth.js. UTF-8 with or without BOM is auto-detected; CRLF line endings are normalised to LF before diffing so cross-OS files don't appear entirely changed.

Frequently Asked Questions

Everything you need to know about comparing text with SnapTextCompare.

Paste your original text on the left and the modified version on the right. SnapTextCompare uses Google's diff-match-patch algorithm to instantly highlight additions, deletions, and changes — no processing delay.

Yes. All comparison happens in your browser. Your text is never sent to a server, stored, or logged. Close the tab and it's gone.

Yes. Upload TXT, PDF, or DOCX files by clicking the upload button or dragging files into the text areas. Text is extracted and compared instantly — all locally.

Word comparison highlights individual word changes — ideal for proofreading. Line comparison treats each line as a unit, better for code and structured content.

Yes. SnapTextCompare is free with no usage limits, no premium tiers, and no signup required. Bookmark it and use it whenever you need.