Stylometry

Measures how distinctive your vocabulary is — how often you reuse words, and whether your word frequencies look like natural prose. Helps you sound like yourself, not the model that helped you draft.

stylometry report card

What it measures

Three independent measures of your vocabulary's shape, plus a couple of derived tells that specifically catch AI-drafted or AI-touched prose.

Yule's K is a classical lexical richness measure. It's a single positive number where lower means more diverse vocabulary and higher means more repetitive. In the app it renders with a heuristic label — under 50 reads as "diverse", 50–150 as "rich", above 150 as "repetitive". Long books naturally trend toward higher K because you reuse function words at scale; the useful signal is not the absolute number but whether it's out of range for the length of the manuscript.

Zipf law fit is the correlation between your word frequency distribution and Zipf's law — the empirical observation that in natural language the second-most-common word appears about half as often as the most common, the third about a third as often, and so on. Real prose typically hits a correlation of 0.85–0.95. A correlation of 0.7 or above renders as "strong"; below that as "weak". AI-generated prose tends to be subtly flatter — the top words don't dominate as much as they do in human writing — so a low Zipf fit is one of the cleanest tells for machine text.

Hapax legomena ratio is the fraction of your vocabulary that appears exactly once. Higher ratios (roughly 40–60%) are normal for creative writing; very low ratios often mean you're leaning hard on a small vocabulary. It's rendered as a percentage with a purple fill bar. In combination with the two above, it gives a rough three-dimensional fingerprint of your prose's shape.

The card also surfaces a function-word to content-word ratio in the deeper data (roughly the ratio of "the/of/to/and/a" words to nouns and verbs). Human prose in English usually sits at 0.45–0.60; AI-generated prose is often a few percentage points off in either direction, and combined with a weak Zipf fit that pair is the strongest signal that a passage was drafted or heavily paraphrased by a model.

Why it's useful

If you've been leaning on AI templates, drafting with the Pad, or accepting a lot of AI-drafted paragraphs from the Wizard, the stylometric drift toward "generic AI prose" is easy to miss word-by-word but visible at the aggregate. This report is the check on whether your prose still reads like yours over the length of a chapter or book.

The typical scenario: you've drafted a full manuscript with a mix of your own writing and AI-generated passages you accepted through the wizard, and you want to know whether the whole thing still sounds like one voice. Run Stylometry. A green Yule's K, a green Zipf fit, and a moderate hapax ratio mean the prose reads as one human writer. Amber or red on Zipf specifically usually means several passages have a subtly-flatter frequency distribution than the rest — worth reading them side by side and rewriting the AI-drafted ones in your own hand.

Use this together with Voice fingerprint (the positive counterpart — teaches the AI to write in your voice so future drafts don't drift) and Provenance (the actual audit trail of AI-authored text so you know which paragraphs to check first). Stylometry is diagnostic; the other two are preventive and evidentiary.

How to read it

The card renders as a small metrics list, one row per measure. Each row has a label on the left, a horizontal fill bar in the middle colored by tone (green good, amber fair, red bad), and the numeric value plus a one-word hint on the right.

Yule's K is on top. A green bar with the hint "diverse" or "rich" means your vocabulary is in a healthy range for creative prose. An amber "rich" is fine for longer manuscripts; a red "repetitive" (Yule's K above roughly 150) usually means you're leaning on a small pool of words — worth running Lexical diversity alongside to see whether the repetition is concentrated in specific stretches.

Zipf law fit is next, showing the correlation as a decimal between 0.00 and 1.00 with a green "strong" or amber "weak" hint. A green bar here is the strongest positive signal you can get that the prose reads as human-written. A weak Zipf fit combined with an amber function-word ratio is the classic AI-drift pattern.

Hapax ratio is below that, a purple bar showing the fraction of words used only once. This one doesn't have a red state — it's descriptive rather than pass/fail. High values (50%+) mean varied vocabulary; low values (under 30%) mean a small, repeated word set.

The collapsed card summary in the reports rail shows Yule's K and the Zipf correlation side by side ("Yule's K 92.4 · Zipf r=0.91") so you can see the two headline numbers at a glance without expanding.

When to ignore it

Very short manuscripts — under about 5,000 words — don't have enough sample for the frequency distributions to be meaningful. Zipf's law is a statistical regularity that only emerges at scale; a 2,000-word short story can produce a "weak" Zipf fit purely because of low sample size, not because the prose is off. Wait until you're at chapter-count before treating this report as diagnostic of anything other than raw vocabulary size.

Genre also matters. Genre fiction that leans on a technical vocabulary (military thrillers, hard sci-fi, procedural mysteries) will naturally have a lower hapax ratio and a higher Yule's K because domain vocabulary repeats. That's not a problem — it's the shape of the genre. Literary fiction with wide-ranging vocabulary and lots of one-off images will trend the opposite way. The useful reference is a chapter of a book you consider stylistically close to what you're writing.

Prose written in a deliberately spare, minimalist voice — Carver, Beattie, early Hemingway — will produce a low hapax ratio and moderate Yule's K because minimalism by design reuses a small vocabulary of concrete words. Green bars aren't the goal there; matching the fingerprint of your reference author is. If your reference reads at K=180 and you're at K=175, you're in the neighborhood you meant to be in, regardless of the "repetitive" label.

How to run it

  1. Click Write in the left sidebar and open the document you want to analyze.
  2. Open the right-side rail: click the Reports button in the editor's top toolbar (the bar-chart icon).
  3. In the rail header, click the Reports tab.
  4. Scroll to the Stylometry card under the Stylistic heading.
  5. Click the card to expand it. First-time runs take 5–20 seconds; a spinner in the header shows while the LLM streams. Cached results render instantly. Re-run the card after any voice-heavy revision.
  6. The card renders a small metrics list — Type-token ratio, Zipf fit, Function ratio, Rare word % — each row with the measured value, target range, and a colored tone pill (green good / amber fair / red bad). A one-line verdict at the bottom (e.g. "Prose reads as human-written. No detectable AI drift."). The collapsed summary shows Yule's K and the Zipf correlation.
  • Voice fingerprint — the positive counterpart: teach the AI to write in your voice
  • Provenance — for the actual ledger of AI-authored text in your draft
  • Reports — back to the panel overview