01
Paste both versions
Add the original and updated text. Try the example to see a comparison before using your own content.
Compare two texts and spot added, removed, and edited lines with word or character highlights. Your text stays in your browser.
Paste two versions. Find what changed.
0 lines · 0.0 / 100 KB
0 lines · 0.0 / 100 KB
Up to 100 KB of UTF-8 text and 2,000 lines per field. Pasted line endings are normalized; empty lines and the final newline are compared.
Add text to at least one field. An empty field can be compared with a filled one.
Your data is processed locally in your browser whenever supported and is not uploaded to our servers.
How it works
01
Add the original and updated text. Try the example to see a comparison before using your own content.
02
Keep the exact comparison, or explicitly ignore letter case or whitespace at the edges of each line.
03
Read additions and removals with line numbers and inline highlights. Edit either input and compare again.
Compare a revised paragraph, check edits to a prompt, or spot changes between two plain-text code snippets. Word highlights make prose easier to scan; character highlights help inspect small edits.
The inputs stack on mobile, and the results use a single stream of lines. Long lines wrap by default. Turn wrapping off to preserve their layout, or show only changed lines to focus on edits.
For text length, use the word and character counter. To prepare a case change, try the text case converter.
Paste the first version into Original text and the second into Changed text. Choose word or character highlights, then select Compare texts. Removed lines appear with a minus sign, added lines with a plus sign, and matching lines retain both line numbers.
Added and removed counts describe lines in the comparison, not individual words. A replaced line counts as one removal and one addition. Matched lines are equal under your selected settings. An ending newline creates a final empty line, which is included in the comparison.
Yes, by default. You can ignore leading and trailing whitespace on each line, ignore letter case, or use both options. Spaces within a line and empty lines are still compared. Ignored differences are reported separately, and the displayed spelling and spacing are preserved.
Yes. When ignoring letter case, select Turkish rules for I/ı and İ/i. The default uses English locale case rules. Character highlights keep user-perceived characters together, including combined emoji and combining marks. This requires a current browser with Intl.Segmenter support.
No. The comparison runs in a local browser worker. This tool does not send your text to a server or save it in browser storage. Copy buttons write the selected input to your clipboard only when you use them.
Yes. Leave Original text empty to see every line as added, or leave Changed text empty to see every line as removed. If both fields are empty, add some text before comparing.
Each field accepts up to 100 KB of UTF-8 text and 2,000 lines for comparison. Text over either limit stays in the field but is not compared until you shorten it. Results are shown in pages of 100 rows. Complex comparisons stop after a short time limit; try a smaller section if that happens.
Inline highlights are added to replacement blocks with the same number of old and new lines, paired in order. Very long lines, large blocks, and blocks without a simple one-to-one pairing use whole-line highlighting. Line differences remain visible even when finer highlighting is limited.
You can paste code as plain text, but this tool does not understand syntax, merge changes, or produce patch files. Both the browser text fields and this tool normalize line endings to LF, so the comparison does not distinguish Windows CRLF from Unix LF line endings. Empty lines and the presence of a final newline are still compared.
Keep working
Count words, Unicode characters, sentences, paragraphs, lines, bytes, and estimated reading time locally.
Open tool →Convert text to uppercase, lowercase, title, sentence, camel, Pascal, snake, kebab, or constant case.
Open tool →Format, minify, sort, and validate JSON locally with clear syntax feedback.
Open tool →Encode HTML-sensitive characters or decode named and numeric character references locally as plain text.
Open tool →Calculate SHA-256, SHA-384, or SHA-512 checksums for files locally and compare an expected hash.
Open tool →