Prose habits report
Paste a draft and see the measurable habits that make writing read as generated — sentence-length uniformity, tell words, stock transitions, em-dash density, missing specifics — so you can edit them out.
Not a detector
This produces no probability that text was generated, because no honest deterministic measurement can. Detectors such as GPTZero score how predictable each word is and how much that varies, with a trained classifier on top; nothing here does anything of the kind. What you get is a list of habits and what to change about each one.
Nothing measured yet
Paste a draft above. Everything is computed in this tab; the text never leaves your browser.
What it measures, and why each one
Sentence-length variation
The strongest single signal. Generated drafts cluster around one length; human writing does not. The report gives the mean, the standard deviation, the coefficient of variation and a five-bucket histogram.
Paragraph shape
Uniform paragraph length is the same habit one level up. A draft where every paragraph has three sentences reads metronomic.
Tell words and phrases
Sixty-four words and forty-five phrases over-represented in post-2023 prose, counted and normalised per thousand words. "Delve" once is nothing; twelve tells per thousand words is a habit.
Rhythm and framing
Stock sentence-initial transitions, em-dash density, "it is not X, it is Y" contrast framing, and three-item lists. Each has a threshold below which nothing is said.
The absence of specifics
Numbers, proper nouns, contractions and first person. Generated text is generic by construction, so their absence is measurable where their presence would not be.
What this cannot tell you
- Whether a text was generated. There is no number here that answers that, deliberately.
- Whether a statistical watermark is present. SynthID-Text and similar schemes are embedded in word choice and are not detectable without the key.
- Whether a human edited a generated draft, or generated an outline and wrote the prose. Both are common and neither is visible here.
- Whether the writing is good. Some excellent prose is uniform; some terrible prose is bursty.
Questions about the prose report
Why is there no percentage or score?
Because it would be dishonest. A percentage implies a calibrated probability, and nothing measured here supports one — every habit in the report appears in human writing too. The report gives you the measurements and leaves the judgement where it belongs.
How is this different from an AI detector?
A detector scores how predictable each word is under a language model and how much that predictability varies, then runs a classifier on top. This counts habits in the text in front of you, deterministically, with the same result every time. It has no model and makes no claim about origin.
Is my draft uploaded?
No. The analysis runs in your browser tab. The site is a static export with no backend; there is nothing to upload to. Analytics, if you consented to it, records the word count and nothing else — never the text.
How much text does it need?
Some measurements need a minimum before they say anything: sentence-length observations need five sentences, vocabulary density needs eighty words, and the specificity checks need a hundred and fifty. Below those, the numbers are still shown and the observations are simply absent.
If I edit out everything it flags, will a detector pass my text?
Almost certainly not, and that is not the goal. Detectors score word predictability, which none of these edits changes much. Editing out these habits makes the writing better and more like yours; it does not fool a classifier.
Does it give the same answer as the command-line tool?
Yes, to the digit. This page is a port of style_report.py, and both are checked against the same fixtures in continuous integration — the same measurements, the same thresholds, the same wording in every observation.