Dash frequency analyser
By Jack Stovell · published 2026-09-24
Dash frequency (dash_frequency) measures how often you reach for a dash, as dashes per 1,000 words. A ScriptGrain profile stores the extraction model's reading of your samples, and the free analyser counts dashes in code. It never moves the voice match score, and ScriptGrain's drafts carry no em or en dashes whatever the profile says.
Analyse your dash frequency free
Your free voice profile measures dash frequency 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: dash_frequency
- How it is measured: Measured in code
- Group: Syntax (ScriptGrain voice profile, 45 attributes in 8 groups)
- Unit: per 1,000 words (ScriptGrain attribute definitions)
- Voice match: Not scored (ScriptGrain voice-match engine (published method))
What dash frequency measures
Dash frequency is exactly what it sounds like: how often dashes turn up in your writing, scaled to a rate per 1,000 words so a short sample and a long one can be compared fairly. The app's own definition is blunt: "How often dashes are used." ScriptGrain's free writing style analysis counts em dashes, double hyphens (--) and spaced hyphens ( - ) together as one "Dashes" figure per 1,000 words. The AI cliché checker runs a separate "Em dashes" meter for em and en dashes, kept outside its general tell density. Draft scoring counts no dashes at all. Two tools, two different counts, same underlying habit. This attribute lives in the Syntax group alongside things like average sentence length and sentence complexity, because dash use is really a sentence-shaping choice as much as a punctuation one.
How dash frequency is scored
Dash frequency does not move your voice match score. Full stop. The voice-match engine, described on the voice match page, has no comparator built for this attribute, so however many dashes you use, it never counts for or against you when your draft is measured. That's worth knowing before you go hunting for the "right" dash rate: there isn't one that voice match cares about. Of the 45 attributes in a profile, 28 can shift the score; this isn't one of them, and polish passes can't target it either. Draft scoring does not even count dashes. For what does move the number, see the voice measurement framework: code counts sentence, punctuation, pronoun, article and word-length features, and Claude Haiku judges formality, humour, structure and rhythm.
How to analyse dash frequency in your own writing
You can do this by hand in about five minutes, no special tools required.
- Pick a sample of your writing, ideally a few hundred words at least.
- Count every em dash, en dash, double hyphen and spaced hyphen you find.
- Count the total words in the sample.
- Divide your dash count by the word count, then multiply by 1,000.
- That's your dash frequency, per 1,000 words.
Do this across two or three pieces and you'll see whether it's a habit or a one-off. ScriptGrain's free voice profile reads dash frequency from a writing sample among all 45 attributes.
Examples of dash frequency in real writing
Here's what dash use actually looks like on the page, in three short examples.
Example: "The meeting ran long - three hours - and we still hadn't decided anything."
Two spaced hyphens set off an aside; ScriptGrain's free analyser counts each as a dash.
Example: "She had one rule -- never apologise twice for the same mistake."
A double hyphen, the typewriter stand-in for an em dash, carries the pause before the payoff.
Example: "He'd promised to call, he didn't, and that was that."
No dash at all: commas handle a rhythm a dash could have handled too.
Dash frequency is how often shapes like the first two turn up per 1,000 words. The third carries a similar rhythm with none.
How to get AI to use dashes the way you do
Getting an AI assistant to match your dash habits starts with naming the habit, not just asking for "more dashes."
- Say which dash you actually use: spaced hyphen, en dash or em dash. They're not interchangeable.
- Say what you use it for: an aside, a pause before the payoff, or a range.
- Show examples from your own writing so the pattern is visible, not just described.
- Compare the dash count in what the AI gives back against your own samples; this is a habit that's easy to overdo once a model latches onto it.
These steps are for your own writing and for other tools. ScriptGrain's own drafts never contain em or en dashes, whatever your profile's dash_frequency says, so ScriptGrain does not reproduce a dash habit. The profile, dash_frequency included, still reaches ChatGPT, Claude and other tools as data through the API and MCP server.
How to make AI stop using em dashes
To make AI stop using em dashes, ban them outright and name the replacements.
- Tell the AI: no em dashes, full stop.
- Name what should replace it: a comma, a colon, a full stop, or brackets.
- Search your draft for the em dash and en dash characters before you publish anything.
- Use a generator that enforces the ban at the code level, not just in the prompt.
ScriptGrain is that kind of generator: it never writes em or en dashes in a draft, whatever your dash_frequency reads. Every generation prompt says it outright ("ABSOLUTELY NEVER use em dashes. Not a single one."), and if one slips through anyway, stripEmDashes swaps it for a comma. Spaced hyphens are not stripped. The markers of AI writing reference covers the other patterns.
Questions
Why does AI use so many em dashes?
ScriptGrain can't see inside the models, but it can count the habit. The em dash is a flexible way to add an aside or a pause, and a model with no instruction against it reaches for it often. In ScriptGrain's SGR-002 study, bare GPT-5 averaged 17.5 em dashes per draft; ScriptGrain's drafts had none, and GPT-5 given a written prompt that banned them had none either.
Are em dashes a sign of AI writing?
They can be one signal, never proof. Plenty of human writers use em dashes constantly and always have. In ScriptGrain's SGR-001 study, the bare model used ten em dashes on one banking brief and the profiled draft used none. ScriptGrain's AI cliché checker counts em and en dashes as a separate meter, outside its tell density. A count describes a habit; it cannot say who wrote the text.
How do I make ChatGPT stop using em dashes?
Tell it directly: no em dashes, and name what to use instead (a comma, colon, full stop or brackets). Then check the output yourself; an instruction is not a guarantee. Searching the text for the em dash and en dash characters before you publish catches anything that slipped through the instruction.
How is dash frequency scored?
It isn't, in the sense that matters for voice match: the scoring engine has no comparator for this attribute, and draft scoring does not count dashes, so it never moves your voice match score up or down. Your profile still stores it, as the extraction model's reading in dashes per 1,000 words, but polish cannot target it.
What counts as a dash frequency analyser?
At its simplest, it's anything that counts dashes in a sample and expresses the total per 1,000 words. ScriptGrain's free writing style analysis counts em dashes, double hyphens and spaced hyphens together; its AI cliché checker counts em and en dashes as a separate meter; and the free voice profile reads dash frequency among all 45 attributes. Draft scoring ignores dashes.
Related
- Syntax attributes
- Average sentence length
- Sentence length variance
- Sentence complexity
- Punctuation and formatting as a fingerprint: dashes, commas, list habits
- The syntactic layer: sentence-structure metrics that separate two writers
- The measurable markers of AI-generated text
- ai-cliche-checker