Every detector reads the same 180 samples: 100 written by people and 80 produced by AI, 20 of those edited by a person before scoring.
Method last changed: . Page updated: .
What is in the sample set?
One square per sample. Green family: written by people. Blue family: produced by AI.
100 human samples · 80 AI samplesEvery detector reads all 180, in the same run.
| Subset | Count | Source | Why it is in the set |
|---|---|---|---|
| Written by people | 100 | ||
| Student essays | 60 | PERSUADE 2.0 student essays, grades 6 to 12 (The Learning Agency, CC BY 4.0) | The writing teachers check most. Most readers are marking or submitting essays. |
| Non-native English essays | 20 | English-learner essays from licensed public corpora, credited in the manifest | Students writing in a second language are flagged in error more often; this subset counts how often. |
| Professional prose | 20 | Published articles under CC BY, written before 2022 | Polished, formal writing by editors and writers, the kind a client sends with a screenshot. |
| Produced by AI | 80 | ||
| Raw AI text | 60 | Written for the same prompts by three current chat assistants, versions and dates in the manifest | AI output used as is. A detector that misses this is not doing its job. |
| Human-edited AI text | 20 | Raw AI texts revised by an editor, about a third of the sentences rewritten by hand, edit log kept | AI output a person reworded before scoring. Closer to what a detector meets in real use. |
| Total | 180 | The same 180 for every detector in a run. | |
What we record for each sample
Every reading becomes one row in the run file: one sample, one detector, one result. Nothing is averaged before it is written down.
The same row is what you download from test runs, so any count on the site can be rebuilt from the file.
| Field | Example | What it holds |
|---|---|---|
| run_id | RUN-2026-11-A | The run this reading belongs to |
| sample_id | H-002 | Which of the 180 samples |
| subset | student_essay | One of the five subsets |
| words | 000 | Length of the sample as scored |
| detector | gptzero | The tool that read it |
| detector_version | 2026-11-04-base | Version or the date the tool was used |
| label | human | The tool's own verdict, as shown |
| score | 0.00 | The tool's number, as shown |
| flagged | false | Our flag rule applied to the reading |
| read_at | 2026-00-00 | Date of the reading |
How is a flag counted?
A sample is flagged when the detector labels it AI or mostly AI, or when it shows only a score and that score is at or above 50%.
A flag on a human sample is a false alarm. A flag on an AI sample is a catch. Mixed labels count as flagged on human samples and are also reported on their own.
The same rule applies to every detector in a run, and it is written into the run file next to each reading.
Metrics, as counts
Every metric is a count out of a fixed base, never a bare percentage, so you can always see how many samples it rests on.
False alarms on human writing
of 100human samplesHuman samples the detector flagged.
Written as: 00 of 100Detection on raw AI text
of 60raw AI samplesRaw AI samples the detector flagged.
Written as: 00 of 60Detection on edited AI text
of 20human-edited AI samplesEdited AI samples the detector flagged.
Written as: 00 of 20Access and price
of 8plan checksFree plan, limits, sign up and price, each checked on a stated date.
Written as: 0 of 0Scoring weights
Fixed for every detector and every page. Job pages change which samples count, never the weights.
| Factor | Weight | What it measures |
|---|---|---|
| False alarms on human writing | 40% | Human samples scored as AI, out of 100 |
| Detection on raw AI text | 30% | Unedited AI samples scored as AI, out of 60 |
| Detection on human-edited AI text | 15% | AI samples a person revised, scored as AI, out of 20 |
| Access and price | 15% | Plan checks passed, each with a date |
Run cadence and dating
A new run starts when a detector on the list ships a new model version, and every run carries its own ID and date. Earlier runs stay published.
Read the editorial policy for when a new run is started.
- Every run has an ID and a dateRun IDs look like RUN-2026-11-A. The date is the day the last reading was taken.
- Every page names its runThe chart header and the dates line on each page cite the run its numbers come from.
- Prices carry their own datePrices and plan limits are checked separately and show a "checked on" date next to them.
- Old runs stay upEarlier runs and their files stay on the test runs page, so a past citation still resolves.
What the sample is
The properties of the 180 samples as a set. Per sample details are in the manifest file below.
- Samples
- 180
- Human
- 100
- AI
- 80
- Language
- English
- Years written
- Before 2022 for human samples
- Length
- 300 to 900 words
- Human-edited AI
- 20 samples revised by a person
- AI generators
- Three current chat assistants, named with versions in the manifest
- Consent
- Human samples come from published corpora released for reuse, each credited in the manifest
Raw files
Download the files behind run RUN-2026-11-A. Every number on the site can be rebuilt from them.
- ReadingsOne row per sample per detector, with the fields aboveCSVDownload the readings
- Sample manifestThe 180 samples: ID, subset, length, source noteCSVDownload the manifest
- ScoresThe weighted scores per detector, overall and per jobCSVDownload the scores
- Plan checksPrice and plan limits with the date each was checkedCSVDownload the plan checks
Found an error?
Readers and detector companies use the same route.
Send it with the IDs
Use the contact page. Include the page, the run ID and the sample IDs, and what you saw.
We check it against the file
We rerun the reading or recheck the plan, and compare it with the row in the run file.
The outcome is logged
Every change, and every dispute we reject, goes on the corrections log with the date and the evidence.
Questions about the method
Why do false alarms carry the most weight?
A false alarm lands on a real person: a student, a writer, a client. Missing some AI text is a smaller harm than accusing someone of using it, so false alarms on human writing carry 40% of every score.
Why include essays by non-native English writers?
Because detectors flag them more. Liang and colleagues (2023) found seven detectors misclassified TOEFL essays far more often than essays by US eighth graders, so our set counts that subset on its own.
Why test AI text a person has edited?
Because that is how AI text usually arrives. In Weber-Wulff and colleagues (2023), accuracy fell from 74% on unedited AI text to 42% on AI text with human edits.
What counts as a flag?
A sample is flagged when the detector's own label says AI or mostly AI, or when it shows only a score and that score is 50% AI or more. Mixed labels count as flagged on human samples, because that is what a teacher sees, and are also reported separately.
Do you use each tool's paid plan?
Where the free plan cannot take all 180 samples, yes. The plan used for each detector is recorded in the run file next to its readings.
Do you test AI image detectors?
Yes, with a separate sample set of real photos, real artwork and AI images, scored with the same flag rule and weights: 40 real photos, 20 real artworks, 30 raw AI images and 10 AI images edited after generation. That run is in progress; the pick is on the best AI image detector page.
Can I check your numbers?
Yes. Every run publishes its readings, sample manifest, scores and plan checks as CSV files on the test runs page, and corrections are logged with their evidence.
Related reading
AI Detector Test Runs: Dated Results and Raw FilesEvery run, its samples and its files.
Best AI Detectors (2026): Picks Backed by Our RunsThe overall ranking.
Most Accurate AI Detector (2026): Accuracy RankedSorted only on false alarms and AI caught.
Best AI Detector for Teachers (2026): Classroom PicksThe pick for a stack of essays and one flag to check.