// design
Brand Voice Definition
Use when the user wants to define or document their brand voice - write a voice guide, agree tone-of-voice rules, or work out why some copy sounds like them and some does not - from writing that already exists. Also use when the user mentions brand voice guide, tone of voice, voice and tone, style guide, "what does our voice actually sound like", or wants rules an AI or a new writer can follow. Measures on-brand samples for reading grade, sentence length, person, contractions, hedges and buzzwords, checks they agree with each other, contrasts them with off-brand writing, and emits a checkable profile for the brand-voice-governance engine.
npx skills add sarojkjha/aaj-marketing-skills --skill brand-voice-definitionClaude Code
/plugin marketplace add sarojkjha/aaj-marketing-skills/plugin install aaj-marketing-skills@aajOpenAI Codex
codex plugin marketplace add sarojkjha/aaj-marketing-skillscodex plugin add aaj-marketing-skills@aajClaude or ChatGPT — no install
Add this as a custom connector:
https://aaj-engines-mcp.sarojkjha10.workers.dev/mcp// when to use it
Use when the user wants to define or document their brand voice - write a voice guide, agree tone-of-voice rules, or work out why some copy sounds like them and some does not - from writing that already exists. Also use when the user mentions brand voice guide, tone of voice, voice and tone, style guide, "what does our voice actually sound like", or wants rules an AI or a new writer can follow. Measures on-brand samples for reading grade, sentence length, person, contractions, hedges and buzzwords, checks they agree with each other, contrasts them with off-brand writing, and emits a checkable profile for the brand-voice-governance engine.
// what you give
Three or more pieces of writing of 100+ words that the team agrees sound like the brand, optionally pieces that do not, and any words already known to be off-limits
// what you get
Per-sample measurements, the on-brand medians and whether the samples agree, the contrast with off-brand writing, the written rules for reading level, sentence length, person, contractions, exclamation marks, hedges and words to avoid, and a profile object - avoid, prefer, maxGrade - that brand-voice-governance checks new content against
Engine spec
// decision it supports
What are the measurable rules of our brand voice, taken from writing we already agree sounds like us?
// inputs
Three or more pieces of writing of 100+ words that the team agrees sound like the brand, optionally pieces that do not, and any words already known to be off-limits
// output
Per-sample measurements, the on-brand medians and whether the samples agree, the contrast with off-brand writing, the written rules for reading level, sentence length, person, contractions, exclamation marks, hedges and words to avoid, and a profile object - avoid, prefer, maxGrade - that brand-voice-governance checks new content against
// acts or analyzes
Analyzes onlyMakes no network calls, writes no files and changes nothing in your tools.
// where your information goes
| How you run it | Where your inputs go |
|---|---|
| Skill installed in your agent, or the local MCP server | The engine runs on your machine and AAJ receives nothing. Your AI agent still sends what you give it to its model provider (Anthropic, OpenAI and so on), under your own account's terms. |
| Hosted MCP server | Your agent's model provider, as above, plus AAJ's server on Cloudflare, which receives the engine inputs over HTTPS, runs them in memory and keeps no copy. Cloudflare keeps error logs (no inputs) for up to 7 days. |
No engine needs customer names, emails or other personal data; leave them out.
// limitations
- It applies rules to the text you paste: reading grade, sentence length, person, contractions, hedges and buzzwords. It can't capture character or tone, and can't see how readers respond.
- The rules are only as good as the samples. One writer's favourites, or off-brand pieces marked on-brand, give rules for the wrong voice. Samples under 100 words are not counted.
- The agreement limits (three grades, eight words of sentence length), the grade-plus-one ceiling and the house buzzword list are AAJ engine rules, not standards.
- A word the on-brand samples use is flagged, not banned, and someone has to decide. The passive-voice figure is an estimate.
// review before acting
// setup
npx skills add sarojkjha/aaj-marketing-skills --skill brand-voice-definitionhttps://aaj-engines-mcp.sarojkjha10.workers.dev/mcpAgents listed: Claude Code, Cursor, OpenAI Codex, Windsurf, Cline. Tested and recorded: Claude Code.
Brand Voice Definition
Most voice guides are a list of adjectives - "confident, warm, clear" - that describe every brand and constrain none. A writer cannot check a draft against "warm", and neither can an AI. What they can check is a reading level, a sentence length, whether the reader is "you", whether contractions are used, and which words never appear.
This skill gets those rules from the writing you already agree sounds right, rather than from a
workshop. Give it three or more on-brand pieces and it measures them, checks that they agree with
each other (if they do not, you do not have one voice yet), contrasts them with anything you mark
off-brand, and writes the measurable half of the guide. The output includes a profile the
brand-voice-governance engine checks new content against, so the guide is enforced from the day
it is written. The adjectives, the do/don't list and the examples are still yours to write; this
gives them a spine.
When to use
The user is writing a voice guide for the first time, rewriting one nobody uses, briefing an AI tool or an agency on how the brand sounds, or trying to explain why one piece of copy is "off".
Do not use it to check content; brand-voice-governance does that with the profile this produces.
Do not use it to decide what the brand stands for; positioning-statement and
brand-product-context come first.
Before you start
- Pick three to six pieces the team agrees sound like you, each 100 words or more: a homepage section, an email a customer replied to, an FAQ, a post the founder is proud of. Agreement matters more than volume.
- Pick one or two pieces you do not want to sound like, if you have them: the old press release, the agency draft that got rejected.
- List any words already off-limits. The engine adds AAJ's house list of buzzwords unless your on-brand writing uses them.
Method
Measure, do not describe. Per sample: Flesch-Kincaid grade, average and longest sentence, "you" / "we" / "I" per 100 words, contractions per 100 words, exclamation and question marks as a share of sentences, hedges per 100 words (very, really, just, perhaps...), buzzwords per 100 words, adverbs, and a passive-voice estimate. Samples under 100 words are shown but not counted.
Check the samples agree. On-brand samples more than three grades apart, or more than eight words apart in average sentence length, are not one voice (engine rules). The verdict is "not one voice" until you decide which end is the brand and drop the rest.
Write the rules from the medians. Reading level: the on-brand median grade plus one of headroom (an engine rule). Sentences: the median average, with the longest kept under twice it. Person: whichever of you / we / I the samples use most, if they use one at all. Contractions: used or not, from the rate. Exclamation marks: none if fewer than 2% of sentences. Hedges: at or below the on-brand rate. Passive voice is called out if it passes 15% of sentences.
Build the avoid list honestly. The house buzzwords and your candidates go on the list unless the on-brand samples use them; a word the brand uses is flagged for a decision, not banned behind your back. Buzzwords that appear only in off-brand samples are added.
Contrast with off-brand. The metrics where off-brand writing differs most are the rules worth writing down first. If it differs in none of them, what makes it off-brand is not measurable here, and belongs in the do/don't list in words.
Workflow
Step 1 - Collect. Three to six on-brand pieces, one or two off-brand, the off-limits words.
Step 2 - Run. If the verdict is "not one voice", argue about which samples stay, then re-run.
Step 3 - Write the guide. The rules go in as they come out; add the do/don't list, the adjectives and two example rewrites beside them. The Brand Voice Guide template has the structure.
Step 4 - Wire it in. Pass the profile to brand-voice-governance and check the next ten
pieces the team or an AI produces.
Step 5 - Re-derive yearly, or when the on-brand pile changes.
Run the tool
node resources/voice-derive.js --demo
run({ brand, samples, avoidCandidates }) returns each sample's measurements, the on-brand and
off-brand medians, the spread and whether it is consistent, the person, the written rules, the
profile object for governance, findings and a verdict.
Present the result
- The verdict: profile ready, not one voice, or too thin.
- The rules, as written, ready to paste into the guide.
- The contrast with off-brand writing in one line: where it differs most.
- The profile object, and the instruction to run the next drafts through governance.
Guardrails & common mistakes
- Never derive a voice from one writer's favourite piece. Three samples the team agrees on, minimum.
- Never ban a word the brand actually uses without deciding to. The engine flags it; you decide.
- Do not mistake the measurable rules for the whole guide. They are the spine; the do/don't list and the examples carry the character.
- Do not include off-brand samples as on-brand to "balance" the voice. That is how you get a grade-9 rule nobody follows.
- Reading grade is a ceiling, not a target. Simpler than the ceiling is always allowed.
Related AAJ resources
- Why the guide needs a spine, and how to write the rest: https://aajconsult.com/playbooks/brand-voice-playbook
- The guide template these rules paste into: https://aajconsult.com/resources/brand-voice-guide
- Check copy against the rules in a browser: https://aajconsult.com/tools/brand-voice-checker
- The problem this solves: https://aajconsult.com/blog/why-ai-content-doesnt-sound-like-you
Related skills
brand-voice-governance- checks content against the profile this producesbrand-product-context- where the voice section of the brief livesaaj-copywriting- writing inside the rulespositioning-statement- what the voice is in service of
// faq
// install
npx skills add sarojkjha/aaj-marketing-skills --skill brand-voice-definition// worked example
Get the worked example for Brand Voice Definition
One email. The filled-in config, the output, and how to read it.
// human in the loop
Need a human in the loop?
AAJ builds the strategies, tools, and playbooks these skills are made of — with engagements for growth-stage and enterprise teams.
