Get in Touch
AI content toolsfrom Opace

Measurement paper · 654 independent documents

“Write like a human”, measured

It is the most repeated piece of advice about defeating detectors, and against the model this project shipped in mid-2026 it worked. Against the model that ships now, on documents from a generation run it had no part in, the same instruction is worth two points on long-form prose — and it makes the single strongest interpretable signal stronger.

On this page
  1. The finding
  2. Three measurements, kept apart
  3. The independent measurement
  4. The length interaction
  5. Why the instruction backfires
  6. The version where it worked
  7. Why the held-out answer was not enough
  8. What this does not prove
Published
30 August 2026
Measured
Re-verified against source 30 August 2026
Method
Three strands at three operating points on two models. The current strand is at a single threshold of 0.984, which is not the shipped pair.
Corpus
654 machine-written long-form documents independent of every cycle-2 split; two retired corpora reported separately

01 / The finding

The most popular evasion instruction is worth about two points

On 654 machine-written documents that appear nowhere in the cycle-2 dataset, adding “write like a human” to the prompt moves detection from 96.6% to 94.6%. The two Wilson intervals overlap, and human-voice is not even the weakest of the three styles.

Measured at a single threshold of 0.984, fp32, maximum-over-sections. That is not the operating point this tool ships. Source: corpus-reconciliation-2026-08-29/analysis.txt §3.
Full-length documents, at 0.9842.0 points

The cost of the instruction against plain prompting, on 207 and 223 documents. Not thirty points, and not sixty.

The same documents, first 512 words10.5 points

The evasion axis is closed for long documents and open for short ones. That is a length interaction, not a style collapse.

Adjacent-sentence cohesion, AUROC0.791 → 0.879

Instructing a model not to sound repetitive makes it under-repeat harder, which is the behaviour that gives it away. A feature statistic on 1,365 and 1,455 documents.

Three things are true at once here and they are easy to blur. Against a retired model at retired flag points the instruction cut detection by 83% in relative terms. Against the model that ships now it does very little at full document length. And measured from a completely different direction, on feature statistics rather than detector outputs, it pushes the strongest readable signal in this project the wrong way for the person using it.

This page is a measurement of a popular instruction, not a guide to using it. Every strand is reported with the model it was run on, the flag point it was cut at, and the corpus it was measured over.

02 / Reading the figures

Three measurements, at three operating points, kept apart

The three prompt styles are constant across every strand. plain: write the article. house-brief: write the article to a house style guide. human-voice: write the article, and write like a human. Only the instruction changes; the topic prompts and registers are held fixed within each run.

The three measurement strands on this page, with their detector, operating point and corpus
StrandDetectorOperating pointCorpus
(a) historytier3-e5small-int8-perchannel.onnx, retired cycle 10.8533 and 0.857, both retired4,016 articles, 21 models, 106 topic prompts
(b) in-distributioncycle 2, held-out splita 2% false-positive budget734 held-out samples from the same generation run
(c) independenttier3-cycle2-e5small-fp32.onnx, fp32 Python onnxruntime0.984 single threshold — not the shipped pair654 machine-written documents appearing nowhere in the cycle-2 dataset

Strand (c) is the current answer and the one the headline is drawn from. Strand (a) describes a model that no longer runs, and it appears on this page only inside a section marked as history. Strand (b) sits between them: it is a real measurement, and it is in-distribution by construction, which is exactly why strand (c) had to be run.

None of the three strands is cut at the pair that decides verdicts today. Strand (c) is at a single threshold of 0.984, and the re-cut at the shipped minimum-evidence pair has not been run.

Until it is, every rate in strand (c) carries its threshold in the same sentence as the rate.

03 / Strand (c)

The measurement that had never been done

The independent set is the 654 machine-written long-form documents whose normalised text appears nowhere in the cycle-2 dataset: not in train, not in calibration, not in test. They carry a prompt style label from generation, they are balanced by construction at 207 / 224 / 223, and they span 13 models from 8 providers.

Measured at a rule that no longer ships

Corpus
654 machine-written long-form documents, independent of every cycle-2 split. 207 plain, 224 house-brief, 223 human-voice, across 13 models from 8 providers. Median length 1,611 words.
Retired flag point
0.984
Detector
tier3-cycle2-e5small-fp32.onnx, SHA-256 e313ab00de1fffd2…4d2788d
Runtime
Python onnxruntime, CPU, fp32, maximum-over-sections
Measured
30 August 2026
Also
A single threshold of 0.984, not the shipped minimum-evidence pair. The re-cut at the shipped pair is outstanding, so these three rates are not a description of the verdict this tool returns today.

The rule that ships today is 0.9855 / 0.9763. The figures under this stamp answer the same question at a flag point this tool no longer uses, and they are not a description of the tool as it runs now.

Figure 1 Detection by prompt style on 654 documents independent of every cycle-2 split 654 machine-written documents independent of every cycle-2 split. fp32, maximum-over-sections, threshold 0.984 — not the shipped pair. Wilson 95% intervals drawn; denominators printed under every column. The three intervals overlap, and house-brief rather than human-voice is the weakest style.
Detection rate by prompt style on 654 independent machine-written documents, at threshold 0.984 0% 20% 40% 60% 80% 100% Detected 96.6% plain “write the article” 200 / 207 93.3% house-brief “… to a house style guide” 209 / 224 94.6% human-voice “… and write like a human” 211 / 223
Detection by prompt style at threshold 0.984, fp32 server and int8 browser runtimes
Prompt stylenfp32 server, @0.984int8 browser, @0.984
plain207200 = 96.6% [93.2–98.4]201 = 97.1% [93.8–98.7]
house-brief224209 = 93.3% [89.2–95.9]209 = 93.3% [89.2–95.9]
human-voice223211 = 94.6% [90.8–96.9]211 = 94.6% [90.8–96.9]

corpus-reconciliation-2026-08-29/analysis.txt §3 and docs/measurements/CORPUS-RECONCILIATION-2026-08-29.md §3. Threshold 0.984, a retired single-threshold rule; the shipped rule is the minimum-evidence pair.

Instructing a current model to write like a human costs 2.0 points at threshold 0.984 on long-form prose. The three intervals overlap heavily. House-brief is the weakest of the three by 1.3 points against human-voice, and that difference is inside the noise as well.

Per model, the picture is the same and the denominators are much smaller. x-ai/grok-4.6, the model reported at 0 of 86 in the historical strand below, reads 27 of 28 on human-voice prompts here. The worst human-voice cell belongs to meta-llama/llama-4-maverick at 12 of 17. Those cells sit on denominators between 1 and 42, so they are printed as counts and no rate is computed from them.

04 / The catch

The instruction does something, and it is a length interaction

These are long documents, median 1,611 words. Truncate the same 654 documents to their first 512 words and the penalty comes back.

Figure 2 The same three prompt styles at full length and at the first 512 words The same 654 documents, scored twice: whole document against first 512 words. Denominators 207 / 224 / 223 throughout. fp32, maximum-over-sections, threshold 0.984 — not the shipped pair. The human-voice penalty against plain prompting widens from 2.0 points to 10.5.
Detection by prompt style on the full document against the first 512 words, at threshold 0.984 70% 77.5% 85% 92.5% 100% Full document · median 1,611 words First 512 words 96.6% (200/207) 90.3% (187/207) plain n = 207 93.3% (209/224) 83.5% (187/224) house-brief n = 224 94.6% (211/223) 79.8% (178/223) human-voice n = 223 Value axis starts at 70%, not zero
plain, n = 207 house-brief, n = 224 human-voice, n = 223
Detection by prompt style, full document against first 512 words, at threshold 0.984
Prompt stylenFull documentFirst 512 words
plain207200/207 = 96.6%187/207 = 90.3%
house-brief224209/224 = 93.3%187/224 = 83.5%
human-voice223211/223 = 94.6%178/223 = 79.8%

docs/measurements/CORPUS-RECONCILIATION-2026-08-29.md §3. Threshold 0.984, retired. Value axis starts at 70%, not zero.

At full length the human-voice penalty against plain prompting is 2.0 points. At 512 words it is 10.5. The evasion axis is closed for long documents and open for short ones, which is the honest description of what changed since the historical strand: the instruction did not stop working, it stopped working on documents long enough to give the model a lot of text to read.

05 / The mechanism

Why the instruction backfires

Measured from an entirely different direction, on feature statistics rather than detector outputs, the instruction moves two signals in opposite directions.

Figure 3 Two feature signals that move opposite ways under the same instruction AUROC by prompt style for adjacent-sentence cohesion and for the presence of any markdown. n = 1,365 plain, 1,421 house-brief, 1,455 human-voice. These are feature separations over thousands of documents, not detector outputs: no threshold, no model file and no operating point applies to any value here. Chance is 0.500.
AUROC of adjacent-sentence cohesion and markdown presence, by prompt style 0.45 0.55 0.65 0.75 0.85 0.95 plain n = 1,365 0.791 0.861 house-brief n = 1,421 0.789 0.868 human-voice n = 1,455 0.879 0.768 chance, 0.500 Value axis starts at 0.45, not zero
Adjacent-sentence cohesion Any markdown present
AUROC by prompt style for three feature statistics
Prompt stylenVocabulary varietyAdjacent-sentence cohesionAny markdown
plain1,3650.9040.7910.861
house-brief1,4210.9210.7890.868
human-voice1,4550.9160.8790.768

signal-science/SIGNAL-SCIENCE.md §2.5. Feature statistics over a corpus. Value axis starts at 0.45, not zero.

Measurement conditions

Corpus
Documents labelled by prompt style in the signal-science corpus: 1,365 plain, 1,421 house-brief, 1,455 human-voice.
Runtime
No model and no runtime. Every value in Figure 3 is a statistic computed over text.
Measured
30 August 2026
Also
AUROC only. These are feature separations, so no threshold and no operating point applies and none is printed.

Adjacent-sentence cohesion is the joint-strongest interpretable signal anywhere in this project, and telling a model to write like a human makes it stronger, from 0.791 to 0.879. Machine prose already repeats itself less than human prose does. A person introduces a term and keeps using it; a model reaches for a synonym, and a model told not to sound repetitive reaches harder.

The instruction does suppress the formatting signal, from 0.861 to 0.768. It works against a detector that reads layout. Against a detector that reads how much a text repeats itself, it points the wrong way.

06 / Strand (a), history

The version where it worked, and it is history

Everything in this section describes a retired model at retired flag points.

The detector is tier3-e5small-int8-perchannel.onnx, a first-training-cycle checkpoint that no longer runs. The thresholds are 0.8533 and 0.857, both retired, and that checkpoint’s scores span 0.1427 to 0.8582, so it could not clear any current flag point under any circumstances. These figures are published as the “before” and are not a claim about the tool as it runs now.

4,016 articles were generated across 21 models, with the same 106 topic prompts and the same registers on every model and only the instruction changing. They were scored with the model that shipped at the time.

Figure 4 The historical collapse: detection by prompt style on the retired cycle-1 detector 4,016 articles, 21 models, 106 topic prompts, scored with the retired cycle-1 detector tier3-e5small-int8-perchannel.onnx at the retired flag points 0.8533 and 0.857. Neither threshold nor that model ships. Denominators printed under every style. This figure is history and describes a checkpoint that no longer runs.
Detection by prompt style on the retired cycle-1 detector, at the two retired thresholds 0% 15% 30% 45% 60% plain n = 1,307 55.9% 21% house-brief n = 1,338 44.7% 13.1% human-voice n = 1,371 19.8% 3.5%
Retired threshold 0.8533 Retired threshold 0.857, shipped at the time
Detection by prompt style at the two retired cycle-1 thresholds
Prompt stylenDetected @ 0.8533, retiredDetected @ 0.857, retired
plain1,30755.9% (731/1,307)21% (275/1,307)
house-brief1,33844.7% (598/1,338)13.1% (175/1,338)
human-voice1,37119.8% (272/1,371)3.5% (48/1,371)

docs/MEASURED-FINDINGS.md §1 and services/local-engine/research/generated-corpus/GENERATED-CORPUS-EVAL.md. Retired model, retired thresholds. Rebuilt here from the published table rather than imported, so the retired labelling travels with the drawing.

Measured at a rule that no longer ships

Corpus
4,016 generated articles across 21 models, 106 topic prompts, same registers on every model, only the instruction changing.
Retired flag point
0.8533 and 0.857
Detector
tier3-e5small-int8-perchannel.onnx — the retired cycle-1 artefact, not the file that ships
Runtime
int8 per-channel, onnxruntime-web. No longer built and no longer shipped.
Measured
30 August 2026
Also
That checkpoint's scores span 0.1427 to 0.8582 and could not clear any current flag point.

The rule that ships today is 0.9855 / 0.9763. The figures under this stamp answer the same question at a flag point this tool no longer uses, and they are not a description of the tool as it runs now.

That is a 36.1-point fall at the comparison threshold and a 17.5-point fall at the one shipped at the time, an 83% relative drop. The house-style brief sits between the two and much closer to plain, so the damage was done by the explicit anti-detection instruction rather than by prompt sophistication in general.

Per model it went further. anthropic/claude-fable-5 fell from 70.5% (31/44) to 10.0% (5/50). x-ai/grok-4.6 fell from 29.3% (24/82) to 0 of 86. One model of the 21 stayed above 50% under an anti-detection prompt. Read against Figure 1, where the same grok model reads 27 of 28 on human-voice prompts, that is the distance between the two strands.

This strand cannot be updated in place. The corpus it was measured on is 94.8% present in the cycle-2 training data, so re-scoring it on the current model would measure memorisation rather than accuracy. It can only be labelled.

07 / Strand (b)

Why the held-out answer was not enough on its own

The cycle-2 model was trained with human-voice samples deliberately upweighted as hard negatives. On held-out samples at a 2% false-positive budget it reads almost flat across the three styles.

Detection by prompt style on the cycle-2 held-out split at a 2% false-positive budget
Prompt stylenSuperseded modelCycle 2, 2% false-positive budget
plain18428.3% (52/184)97.8% (180/184)
house-brief27614.5% (40/276)97.1% (268/276)
human-voice2745.8% (16/274)98.2% (269/274)

734 held-out samples from the same generation run, split group-aware by content hash. Source: cycle2-train/CYCLE2-REPORT.md.

That looks like a complete answer and it is not one. Those held-out documents come from the same generation run as the training data, and the model was trained to handle exactly that distribution. The evasion axis was closed on the distribution the model was trained against, and untested on one it was not. Strand (c) exists to answer the second question.

08 / Limits

What this does not prove

Strand (c) is at 0.984, not the shipped 0.9855 / 0.9763 pair.

It has never been re-cut at the pair that decides verdicts today. The re-cut is cheap and should be done before this measurement is quoted as a description of the shipped tool. Until it is, the three rates carry their threshold in the same sentence, on the chart, and in the table.

The 654-document subset is not “the corpus”. It is the independent subset defined by the contamination analysis: 268 of the 922 machine-written documents in the long-form corpus, 29.1%, appear in the cycle-2 dataset, 168 of them in the training split. The human half is effectively clean at 11 of 4,636. Using the independent subset is the correct call for this question, because a rate measured on documents the model was trained on would partly be measuring memorisation. For comparison, the same split on the contaminated subset reads 83/87, 82/86 and 92/95, all within a point and a half of each other.

The three styles are not evenly sized, at 207 / 224 / 223, and the differences between them are a few points. A two-point gap on those denominators must not be over-read, in either direction.

One generation run, three prompt styles, one detector. This does not measure a determined evader who iterates against the tool, a commercial humanising service, or paraphrase. Rewrites are this tool’s weakest case and are a separate question.

Strand (a) is not a claim about today, and strand (b) is in-distribution by construction and is reported for that reason. Neither can be promoted into a statement about current behaviour by dropping its label.

Provenance

Source file and section for every figure on this page
FigureFileSection
Strand (c): 200/207, 209/224, 211/223 at threshold 0.984, fp32 and int8, with Wilson intervalscorpus-reconciliation-2026-08-29/analysis.txt§3
Length interaction: 187/207, 187/224, 178/223 on the first 512 wordsdocs/measurements/CORPUS-RECONCILIATION-2026-08-29.md§3
Per-model cells, including 27 of 28 and 12 of 17corpus-reconciliation-2026-08-29/analysis.txt§3
Contamination: 268 of 922 machine documents, 168 in train; human 11 of 4,636corpus-reconciliation-2026-08-29/analysis.txt§2
Strand (a): 4,016 articles, both retired thresholds, per-model fallsdocs/MEASURED-FINDINGS.md, generated-corpus/GENERATED-CORPUS-EVAL.md§1
Strand (b): held-out split at a 2% false-positive budgetcycle2-train/CYCLE2-REPORT.mdwhole report
Feature AUROC by prompt style: cohesion, markdown, vocabulary varietysignal-science/SIGNAL-SCIENCE.md§2.5

Every file named above ships with the open measurement repository, so any figure on this page can be re-run rather than taken on trust.

Read on

The instruction moves one signal. The folk signals it is aimed at were measured separately.