UltKit

Text Compare

Paste the original on the left and the new version on the right. Removed lines turn red, added lines turn green, and inside an edited line the words that actually changed are highlighted, so a one-word change in a long paragraph is easy to spot.

0 characters · 0 words · 0 lines

0 characters · 0 words · 0 lines

Paste text into both boxes to see the differences here.

0 characters · 0 words · 0 lines

Red lines (−) exist only in the original, green lines (+) only in the changed text; bold marks the words that differ. Runs entirely in this browser tab. Your text is never uploaded or stored.

What it does

Text Compare compares two texts line by line using a longest-common-subsequence diff, marks removed lines in red and added lines in green, and highlights the exact words that changed inside an edited line.

Before
the quick brown fox
→ the quick red fox
After
- the quick brown fox
+ the quick red fox

How the comparison works

The tool splits both texts into lines and finds their longest common subsequence: the largest set of lines that appear in both texts in the same order. Those lines are shown as unchanged; everything else in the original is a deletion and everything else in the new text is an insertion. This is the same idea behind the classic Unix diff program, described by Hunt and McIlroy in 1976, and behind the change views of version-control systems.

When a run of deleted lines sits directly before a run of added lines, they usually represent the same lines being edited. The tool pairs them up and runs a second, word-level comparison inside each pair, so you see that "Tuesday" became "Wednesday" instead of having to reread both lines. Line numbers for both versions are shown at the left so you can find each change in your own files.

Ignoring noise: case and whitespace

Two texts can differ in ways that do not matter to you: a line re-indented with tabs instead of spaces, trailing spaces left by an editor, or a heading changed from upper to lower case. Ignore whitespace differences treats any run of spaces and tabs as one space and ignores spaces at the ends of lines; Ignore case compares lines without regard to letter case. The highlighted output still shows the new text as written.

The comparison is exact otherwise: a curly apostrophe and a straight one are different characters, and so are a hyphen and an en dash. If a line is flagged but looks identical, typographic punctuation or a non-breaking space is the usual cause.

Typical uses

Writers compare drafts returned by an editor; lawyers and buyers check which clauses moved in a new contract version; developers compare configuration files or log output from two runs; students check what a paraphrasing step really changed. The result can be copied or downloaded as plain text in unified-diff style, with a minus sign before removed lines and a plus sign before added ones. For other clean-up jobs, the rest of the text tools work the same way, entirely in your browser.

Frequently asked questions

Is the text I compare uploaded anywhere?
No. Both texts stay in this browser tab; the comparison is computed with JavaScript on your device, so confidential drafts and contracts can be compared safely.
Why is a moved paragraph shown as deleted and added?
A line-based diff only keeps lines that stay in the same relative order. When a block moves, the algorithm keeps one position and reports the other as a deletion plus an insertion, the same way git diff does.
How large can the texts be?
Several thousand lines each compare instantly. Identical lines at the start and end are skipped before the main comparison; if the remaining middle part is extremely large, the tool asks you to split the text instead of freezing the tab.
Can I compare Word or PDF files directly?
Paste their text. Copying from Word keeps paragraphs as lines; text copied from a PDF often has hard line breaks, which you can remove first with the Remove Line Breaks tool.
What do the minus and plus signs mean in the download?
A line starting with a minus exists only in the original, a line starting with a plus exists only in the changed text, and lines starting with two spaces are unchanged.