Text utility

Text Compare

Compare two text blocks side by side with aligned line numbers, inline edits, unified diff output, and precise controls for case, whitespace, blank lines, and Unicode.

Original

Left text

A

Changed

Right text

B

Compare options

Diff settings

Runs locally

Ready.

Comparison summary

Diff statistics

Left lines0
Right lines0
Added0
Removed0
Modified pairs0
Unchanged0
Changed blocks0

Side-by-side diff

Original

Changed

Unified diff

Copy this standard patch-style output into notes, code reviews, or issue trackers.

Popular compare examples

Diff marker reference

MarkerMeaningUse
+Line exists only in the changed textAdded content
-Line exists only in the original textRemoved content
Line exists on both sidesContext
@@Start and line ranges of a changed sectionPatch hunk

How text comparison works

Private local processingBoth inputs are compared in your browser. Nothing is uploaded.
Reliable diff engineA bounded Myers-style diff handles repeated lines without the old quadratic memory matrix.
Ignore controlsTrim, whitespace, blank-line, and case options reduce noise while preserving the displayed source text.
Unicode-aware matchingNFC joins equivalent accents; NFKC can also match compatibility forms such as full-width characters.

FAQ

Does this tool upload my text?

No. Comparison and rendering happen locally in your browser.

Can it compare code, JSON, or lists?

Yes. Line-based comparison works well for drafts, source snippets, configuration files, JSON, and ordered lists.

Why is an edited line counted as added and removed?

A line diff represents replacement as one removal and one addition. Modified pairs estimate adjacent replacements and inline highlights show the changed words.

What should I choose for Unicode normalization?

Use NFC for normal text. Choose NFKC when full-width or other compatibility characters should compare as equivalent.