Compare two texts and read the result
Enter non-whitespace text in Text A and Text B to get an overall lexical word-overlap score, matched passages, shared content, and unmatched passage lists. The result compares words, not meaning, and does not show character-, word-, or line-level edits.
How to compare two texts
- Enter or paste content into the Text A and Text B panels. Both panels must contain non-whitespace text before results appear.
- To load a file, select Upload for either panel and choose a
.txtfile. You can also drop a file onto the relevant text area. - Review the results as you edit either text. The comparison runs whenever either field changes, and results appear only while both fields contain non-whitespace text.
Read the score and result panels
- Overall score: the percentage is labelled Mostly distinct for 0-29%, Some overlap for 30-59%, Highly similar for 60-84%, or Near-duplicate for 85-100%.
- Summary: reports the passage count for each text and the number of matched pairs.
- Matched Passages: shows each Text A passage, the Text B passage it scored highest against, and the match percentage.
- Shared Content: shows one representative passage from each matched pair. It uses the shorter passage from that pair.
- Unique to Text A and Unique to Text B: list passages without a qualifying 50% word-overlap match. These are unmatched passages, not definitive semantic uniqueness classifications.
- Copy Report: copies the overall percentage and label, method summary, matched passages, and unique passages for both texts.
How the similarity method works
The tool uses two lexical calculations:
- Overall score: text is lowercased and tokenized into Unicode letters and numbers. Punctuation is not part of the comparison. The tokens are grouped into overlapping
3-word sequences, and cosine similarity between the two sequence-frequency sets produces the overall percentage. - Matched passages: blank-line paragraph breaks are used to create passages, which are then split at sentence punctuation when possible. If no sentence boundary is detected, the remaining text is used as a passage. Each Text A passage is compared with every Text B passage using word-set Jaccard overlap, and its highest score is recorded when it is at least
50%. The same Text B passage can be selected for more than one Text A passage.
These calculations compare words and overlapping word sequences. They do not use embeddings or a semantic model.
Know the comparison limits
If no passage reaches the matching threshold, the result panels show “No passages scored above the match threshold.” and “No shared passages above the match threshold.” Similar meaning with different vocabulary may not score as similar because the comparison uses lexical overlap. The tool does not mark insertions or deletions. Use Compare Text for a visual character-, word-, or line-level diff.
Frequently Asked Questions
How is the similarity score calculated?
The overall score uses cosine similarity between overlapping three-word sequences across the whole text. Matched passages use word-set Jaccard overlap; each Text A passage is compared with every Text B passage, and its best counterpart is used when it reaches at least 50% overlap.
Is this the same as a diff tool?
No. This tool compares lexical word overlap and shows matched passages; it does not produce a word, line, or character diff. Use Compare Text for a visual edit diff.
Is my text sent to a server?
No. The comparison happens entirely in your browser with JavaScript, and the tool does not upload your text.