Vocabulary diversity analyser
By Jack Stovell · published 2026-09-24
Vocabulary diversity is a 0 to 1 reading of how varied a writer's word choice is: 0 means highly repetitive, 1 means maximally varied. In a ScriptGrain voice profile the extraction model estimates it from your samples; the free in-browser tools count it as a type-token ratio (distinct words divided by total words). It never moves your voice match score.
Analyse your vocabulary diversity free
Your free voice profile measures vocabulary diversity among all 45 attributes, from a sample of your own writing. No card needed.
Try the six-signal check first
At a glance
- API field: vocabulary_diversity_index
- How it is measured: Measured in code
- Group: Lexical (ScriptGrain voice profile, 45 attributes in 8 groups)
- Scale: 0 to 1 (0 highly repetitive, 1 maximally varied) (ScriptGrain attribute definitions)
- Voice match: Not scored (ScriptGrain voice-match engine (published method))
What vocabulary diversity measures
Vocabulary diversity measures how varied your word choice is: roughly, how many different words you use against how many words you use in total. That's the whole idea. Write "the dog ran" three times in a row and your ratio craters. Write "the dog sprinted," "the hound bolted," "the terrier shot off" and it climbs. The app's own definition is blunt about it: "How varied the word choice is: 0 means highly repetitive, 1 means maximally varied."
Here's the thing though: this number falls naturally as a piece gets longer. Write 200 words and you might hit a high ratio easily. Write 2,000 words on the same topic and you'll repeat function words, names, and topic-specific nouns just because you have to. Longer pieces need more repeated scaffolding. The drop is arithmetic, and says nothing bad about your writing.
ScriptGrain sits this attribute inside the Lexical group, alongside things like rare word rate and word length distribution. Together they build a picture of how a writer handles words, not just sentences. The lexical density and diversity glossary entry separates this idea from lexical density.
How vocabulary diversity is scored
Vocabulary diversity is read two ways depending on where you look, and neither reading touches a voice match score. In the free writing style analyser, code counts the type-token ratio directly: distinct words over total words, shown to two decimals as "Vocabulary diversity." The homepage brand check runs a related "Lexicon" signal too: distinct words as a percentage of all words, labelled "% distinct."
In a full voice profile, though, the number you see is an estimate. Claude Sonnet 5 reads each sample in pass one, then synthesises a single value across all your samples in pass two. There's no formula handed to the model, so the value is its judgement, sample by sample.
And when it comes to draft scoring: the voice-match engine has no comparator for this attribute. So it never moves a voice match score, and polish (the revision pass that works toward a voice match target) cannot target it either. If you want the mechanics of how voice match works generally, that's covered on the voice measurement framework page.
How to analyse vocabulary diversity in your own writing
Analysing vocabulary diversity in your own writing by hand takes a few minutes and no software. Here's how:
- Take a sample of your writing, at least a paragraph, ideally a few hundred words.
- Count the total number of words in the sample.
- Count the number of distinct words (each word counted once, however many times it appears).
- Divide distinct by total. That's your type-token ratio.
- Repeat with a longer sample and watch the number drop. That's expected, not a warning sign.
- Compare two pieces of your own writing rather than comparing yourself to someone else's number. Your own baseline matters more than any external one.
ScriptGrain's free voice profile reads this attribute from a writing sample, as one of all 45 attributes.
Examples of vocabulary diversity in real writing
Example 1: "The team met, the team discussed the plan, and the team left." Heavy repetition of "team," low diversity in a short space.
Example 2: "The team gathered, argued the plan through, and scattered by noon." Same event, no repeated content word, higher diversity.
Example 3: "She fixed the leak, patched the roof, and finally rested." Three actions, three distinct verbs, nothing recycled. That's the pattern that pushes the ratio up without sounding forced.
How to make AI use a wider vocabulary
Making AI use a wider vocabulary comes down to specific, checkable instructions rather than vague requests to "sound more varied." Try this:
- Ask for the specific verb for each action, in place of vague ones like make, get, and do. "Assembled" beats "made," every time, when it's accurate.
- Tell it not to repeat a content word within a paragraph, unless that word is a defined term it needs to keep stable.
- Give it a sample that shows the range you want, and ask it to match the range, not the words themselves.
When a ScriptGrain profile generates a draft, this attribute is sent as part of the full VOICE PROFILE JSON block in the system prompt, under an instruction to treat every attribute as a hard constraint. There's no attribute-specific rule bolted on for this one; it rides in with the rest. The profile reaches ChatGPT, Claude and other tools through the API and the MCP server, so the same value travels to wherever you draft.
How to make AI repeat key words the way you do
Making AI repeat key words the way you do means banning the instinct to swap synonyms in for variety. Models often rotate synonyms for polish, which is backwards for a writer who repeats key terms on purpose. Fix it like this:
- Name the three or four key terms that matter in your writing and tell the model to reuse them, rather than rotating in synonyms for polish.
- Ban elegant variation outright: once a thing has a name, it keeps that name for the rest of the piece.
- Prefer the plain, common word whenever it's just as accurate as the rarer one.
This is the flip side of wide vocabulary, and both live in the same profile. See preferred words for the sibling attribute that tracks which words a writer leans on repeatedly, and filler phrases for the small verbal habits that do similar work.
Questions
How is vocabulary diversity scored?
In the free tools, it's counted directly: distinct words divided by total words, the type-token ratio, shown to two decimals. In a full voice profile, it's the extraction model's estimate across your samples, not a formula. Either way, it never moves a voice match score; the voice-match engine has no comparator for this attribute, so polish can't target it either.
How do I score writing for vocabulary diversity?
Count your total words, then count distinct words (each counted once). Divide distinct by total for a type-token ratio. Do it on a few samples of different lengths, since the ratio naturally falls as a piece gets longer. Compare your own pieces against each other rather than chasing a number from someone else's writing.
What is a good type-token ratio?
There's no single "good" number; it depends heavily on length, since the ratio falls as word count rises. ScriptGrain's homepage brand check does use one anchor: above a ratio of 0.62, the copy reads "Wide vocabulary with little repetition"; at or below it, "Deliberate repetition." That's a labelling threshold, not a universal target.
How do I make ChatGPT vary its word choice?
Ask for the specific verb for each action instead of generic ones like make, get, or do. Tell it not to repeat a content word within a paragraph unless that word is a defined term. Give it a writing sample and ask it to match the range of vocabulary shown, not the exact words. These three instructions give it more to work with than a general "be more varied" request.
How do I make AI repeat my key words instead of rotating synonyms?
Name your three or four key terms explicitly and instruct the model to reuse them rather than swap in synonyms for variety. Ban elegant variation: once something's named, it keeps that name throughout. Prefer the plain, common word over the rarer one whenever accuracy is equal. Models often vary words for polish, so say it directly instead of hoping it notices your pattern.
Related
- Lexical attributes
- Preferred words
- Word length distribution
- Rare word rate
- Glossary: type-token ratio
- Glossary: lexical density vs diversity
- The lexical layer: which vocabulary metrics identify a writer
- Free in-browser analyser (counts it)