Text Similarity Checker

Compare two texts and calculate their similarity percentage. Free text similarity checker - detect paraphrasing and near-duplicates.

🔒 Your text stays in your browser - nothing is sent to our servers
Text 1
Text 2
Paste two texts above to compare their similarity
How to Use

Three steps to get started

1

Paste both texts

Add your first and second text in the two input fields. They can be any length.

2

See similarity instantly

The similarity percentage, common word count, and total unique word count update live.

3

Interpret the result

Above 70% is Very Similar, 40–70% is Somewhat Similar, below 40% is Different.

About This Tool

Compare any two texts in seconds

This tool measures how much vocabulary two passages share, using the Jaccard similarity index. Each text is lowercased, stripped of punctuation, and split on whitespace into a set of distinct words. The score is the intersection size divided by the union size - formally J(A,B) = |A ∩ B| / |A ∪ B| - reported as a percentage to one decimal place, with both raw counts shown beneath so you can check the arithmetic yourself.

A worked example makes the behaviour obvious. Compare “the quick brown fox” with “the quick red fox”: the intersection is {the, quick, fox}, the union is {the, quick, brown, red, fox}, so the result is 3 / 5 = 60%. One substitution costs 40 points here - Jaccard is unforgiving on short inputs and steadies as documents grow.

What this measure does and does not see

  • Order is invisible. Sets are unordered, so “dog bites man” and “man bites dog” score 100%. If sequence matters to you, you want Levenshtein edit distance instead.
  • Repetition is invisible. A word appearing forty times counts once, exactly like a word appearing once. Cosine similarity over term frequencies is the measure that weights repetition.
  • Meaning is invisible. “Automobile” and “car” are unrelated tokens here. Semantic overlap needs embeddings, not set arithmetic.
  • Inflection splits tokens. There is no stemming, so run, runs, and running are three separate members of the set.
  • Length asymmetry drags the score down. A paragraph fully contained inside a ten-page document still scores low, because the union is dominated by the longer text.

Read the output as a band rather than a precise figure: above 70% the texts draw on substantially the same vocabulary; 40–70% suggests a shared subject; below 40% they are largely unrelated. Two unrelated English paragraphs typically land in the teens purely from function words like the and of, so treat that as the noise floor rather than zero.

This is not a plagiarism detector. It compares only the two passages you paste - no web index, no academic corpus, no submission database, no stylometric analysis. It cannot tell you whether text was copied from somewhere, only quantify overlap between two things you already have. Within that limit it suits diffing drafts, checking a summary is distinct from its source, or spotting recycled copy across landing pages.

Both passages stay in the page: tokenization and the set arithmetic execute in JavaScript on your machine with no upload step, which makes it safe for unpublished manuscripts.

FAQ

Frequently Asked Questions

Related Tools