ChatGPT detectors: what they actually detect
Nothing detects ChatGPT specifically. Detectors read properties of text, and those properties are shared across models, which is why the same tool that catches one family misses another.
"ChatGPT detector" is the search everybody types, and it slightly misdescribes what these tools do. None of them look for a watermark, a signature or anything ChatGPT leaves behind. They read statistical properties of the writing itself, and then a threshold turns that into a verdict.
That distinction is not pedantic. It explains every result you will get from one.
Why there is no ChatGPT-specific signal
A detector is trained on examples of human writing and examples of generated writing, and it learns what separates them. What separates them is regularity: generated text is more predictable word to word, and it varies less from sentence to sentence.
Both properties belong to how language models sample text, not to any one vendor. So a detector trained mostly on GPT output picks up Claude and Gemini too, with different hit rates, and it also picks up human writing that happens to be regular.
The corollary is the important part: nothing about a high score points at ChatGPT specifically. It points at text that reads as machine written, which is a different and much looser claim.
What we catch on ChatGPT output
This is the number vendors rarely publish, so here is ours.
We catch 89.9% of OpenAI GPT output, measured across 7,491 documents spanning GPT-3.5 through GPT-5.x, while flagging under 1% of genuine human writing. On the strict setting the wrong-flag rate is 0.4%, which is 99.6% specificity.

What moves that number for any detector is which model produced the text, and a tool trained on a narrow slice of generators inherits a narrow profile. Ours is trained across 14,892 generated documents from seven model families and five years of GPT versions, which is why the OpenAI figure holds across the whole range rather than one release.
What a "ChatGPT detector" result tells you
A high score means the text is regular in the ways generated text is regular. That is consistent with a model having written it. It is also consistent with a methods section, a formal report, a heavily edited draft, or writing by somebody who learned English as a second language. See why AI detectors flag human writing.
A low score is only worth what the detector's catch rate is worth. Most tools never publish one, so a clean result from an unnamed classifier tells you very little. Ask what a tool catches at a stated wrong-flag rate, and treat a clean result from a tool that will not answer as unfinished business.
Sentence-level marks carry far less weight than a verdict on a whole document. Turnitin's own figures make the size of it plain: 4% of sentences against under 1% of documents, the same tool four times worse at the smaller unit. See why detectors are unreliable on short text.
Detecting the model family is a separate problem
Worth knowing that it is possible, in a limited way. Our lexical expert can name the generating family at high precision, but only when it is confident enough to speak at all, which is a minority of the time. Anything outside its training set is simply unavailable to it.
So "which model wrote this" is answerable sometimes, and "did ChatGPT write this" is a question no tool answers directly. Both are worth separating from "does this read as machine written", which is the only thing a score reports.
Checking something yourself
Ours is free and unlimited with no account, takes .pdf, .docx and .tex, and scores each paragraph separately rather than handing back one document number. We publish the wrong-flag rate, 0.8% at the public setting and 0.4% strict, which is more than most tools will tell you.
The method is in how the unslop AI detector works.