NeverPrompted
Method

Two measurements, kept separate on purpose.

Everything NeverPrompted reports is one of two measurements. This page is the whole method, including the parts that limit what it can tell you.

1. The provenance-mark test (keyed)

A green-list watermark test, after Kirchenbauer, Geiping, Wen, Katz, Miers and Goldstein, A Watermark for Large Language Models (ICML 2023, arXiv:2301.10226). A keyed pseudorandom function seeded by the preceding token splits the vocabulary into a green list of size γ and a red list; a marked generator is nudged toward green. Detection is the one-proportion z test that falls out of that:

z = (|s|G − γT) / √(T · γ · (1 − γ))

T is the number of scored word pairs and |s|G how many are green. We report the green rate with a Wilson interval, the z, and the one-sided p. Below 40 distinct pairs no z is reported at all, because the normal approximation is not trustworthy there and a number we do not trust is worse than no number.

Two honest caveats. Repeated word pairs are scored once, because the test assumes independent trials. And we partition on word bigrams rather than a model’s own subword vocabulary, which we do not have, so a vendor’s own detector can reach a different conclusion on the same document.

The limitation that matters most

A green-list mark is keyed. Without the secret used to apply it, the partition is unknowable and there is no test to run. No model vendor publishes a detection key, and a publicly checkable mark would be a publicly removable one, so this is unlikely to change.

NeverPrompted therefore tests the keys it holds and names them on every result. It ships a published open reference key so the machinery is auditable: mark a passage under it yourself and watch the statistic move. It also accepts vendor or institution keys through configuration. Any tool claiming to detect a named vendor’s mark without a key from that vendor is not doing what it says.

2. The style measurement (key-free)

Fourteen subject-independent register features, among them mean word length, moving-average type-token ratio, hapax ratio, mean sentence length, sentence-length variability, function-word rate and six punctuation rates, measured on your document in 400-word chunks and expressed as a signed distance in standard deviations from a reference corpus in the same language. The composite is the root-mean-square of those distances, with a seeded percentile bootstrap over your own sentences giving the band.

This channel does not detect AI. It measures how far writing sits from contemporary reference prose. Technical writing, fiction, poetry, translated text and non-native prose all sit far from that reference for entirely ordinary reasons, and the result says so wherever the number appears.

The reference corpora

Measured, not estimated. Every document was language-verified by the engine’s own identifier before being included, because the API was asked for Spanish and is generally telling the truth, but a baseline is what every user’s number is compared against, and “the source said so” is not verification.

LanguageDocumentsWordsChunksRetrieved
English219219,4935672026-08-11
Spanish11393,9812432026-08-11
French11394,2652482026-08-11
German157113,8583102026-08-11
Portuguese9677,3072052026-08-11

Source: Wikipedia article prose via the MediaWiki API, CC BY-SA 4.0.

3. Per-passage findings are corrected

Each passage carries its own test, so a long document runs dozens simultaneously and some will look significant by chance. A Benjamini-Hochberg false-discovery-rate correction is applied across all passages before any is presented as a finding, and the result reports how many were tested and how many survived.

Without that correction a per-passage highlighter will confidently colour in sentences of any document you give it, which is the false accusation this product exists to help people answer, generated by the product itself.

Where the analysis runs

The free check runs entirely in your browser. The engine is a single module with no network calls; open the network tab and watch. The API, the hosted MCP mode and the PDF report necessarily run on our servers, because a programmatic caller has no browser, and those are opt-in and documented rather than quietly the same path.

Answers, in full

Method questions

Why two channels instead of one score?
Because they answer different questions and blending them would destroy both. The watermark test has a real null hypothesis and a real p value. The style measurement does not detect AI at all. It measures register. Combining them into one number would produce something with no defined meaning that would nonetheless be quoted as if it had one.
Why is a repeated word pair only counted once?
The z test assumes independent trials. A document that repeats "of the" forty times supplies one bit of evidence about the key partition, not forty. Counting repeats would inflate the statistic on any repetitive document, manufacturing a signal out of a writing habit.
Why does the style measurement not use a significance test?
Because the obvious test divides by the standard error, so its value grows with document length. A perfectly ordinary 5,000-word essay would score far higher than an identical 500-word one, and the writer would be reading the length of their own document as evidence against them. Effect size is the honest quantity here.