PromptMake
2026-06-27·17 min read

How to Write Prompts for AI That Produce Consistent Brand Voice

Voice Profile + Body of Work + few-shot transformation pairs for GPT-5.5, Claude Opus 4.8, and Gemini — reference-first prompts that keep every draft on-brand.

text-promptsguidechatgptclaudetips

Generate optimized prompts for ChatGPT, Claude & more

Free prompt generator — no account needed.

Try Prompt Generator →

Your team runs every blog draft, email, and social post through ChatGPT. Each piece sounds like a different person wrote it. One post is corporate stiff. The next is startup-bro casual. The third invents a tagline nobody approved. Brand voice drift is a prompt architecture problem, not a model problem. GPT-5.5, Claude Opus 4.8, and Gemini 3.1 Pro can match your voice reliably — if you give them a reference system instead of adjectives like "friendly but professional." This guide covers the Voice Profile block, Body of Work examples, few-shot transformation pairs, reference-first architecture, Custom GPT and Claude Project system prompts, a self-check step, before/after examples, and FAQ.

Why adjective lists fail

Weak prompt: Write a product announcement in our brand voice. Be friendly, professional, approachable, innovative, and trustworthy. The model has no anchor. "Friendly" spans Slack casual to bank brochure. Every generation samples a different point in that cloud. Strong prompt architecture: 1. Voice Profile — measurable rules (sentence length, vocabulary tier, banned phrases) 2. Body of Work — 3–5 approved samples of real copy 3. Few-shot transformation pairs — generic input → on-brand output 4. Self-check step — model scores its draft against the profile before finalizing Adjectives describe a mood. References define a distribution. Models imitate distributions.

The Voice Profile block

Compress your style guide into a scannable spec the model can audit against. Not a 40-page PDF — a 150–250 word operating document. Template: VOICE PROFILE — [Brand Name] Audience: [who reads this]

Register: [formal / conversational / technical]

Sentence rhythm: [avg 12–18 words; mix short punch lines with one longer explanatory sentence]

Vocabulary: [plain language tier; industry terms allowed/banned]

Pronouns: [we/you/I rules — e.g. we for company, you for reader, never I unless signed by named exec]

Humor: [none / dry / playful — with one example line]

Always: [3 concrete behaviors — e.g. lead with outcome, cite customer proof, end with single CTA]

Never: [3 banned patterns with replacements — e.g. never "synergy" → use "works together"]

Tone sliders don't work. Auditable rules work.

Body of Work — your reference corpus

Paste 3–5 approved pieces that represent your voice at its best. Label each with content type and why it was approved.

BODY OF WORK:

Sample 1 — [Blog intro, approved Q1]: [paste 150–300 words]

Sample 2 — [Product email, approved]: [paste]

Sample 3 — [Social post, high engagement]: [paste]

Sample 4 — [Support macro, approved tone]: [paste]

Instruction line: Match rhythm, vocabulary tier, and CTA style of these samples — not their specific facts.

More samples help up to ~5. Beyond that, diminishing returns and context cost rise. Curate best-in-class, not everything ever published.

Refresh Body of Work quarterly when brand evolves. Stale samples anchor old voice.

Few-shot transformation pairs

Show the model how to convert generic input into on-brand output. Two to three pairs beat ten adjectives.

Pair format:

GENERIC INPUT: We are excited to announce our new feature that helps teams collaborate better.

ON-BRAND OUTPUT: Your team stopped waiting on status updates. [Feature name] puts every decision in one thread — so you ship without the standup.

GENERIC INPUT: Our platform offers enterprise-grade security.

ON-BRAND OUTPUT: SOC 2 Type II, encryption at rest and in transit, and admin controls your CISO can actually audit — without a sales call.

Add instruction: Transform TASK INPUT the same way — preserve facts, change voice.

Claude Opus 4.8 and GPT-5.5 excel at style transfer when pairs are concrete. Gemini 3.1 Pro handles longer Body of Work in the same prompt.

Reference-first architecture

Order matters. Put references before the task — models weight early context heavily.

Prompt stack (top to bottom):

  1. Voice Profile
  2. Body of Work
  3. Transformation pairs
  4. Task (what to write + raw facts)
  5. Self-check instruction

Never bury the Voice Profile below a long product brief. Brief goes after references.

For multi-channel campaigns, one shared reference block + channel-specific FORMAT lines beats separate ad-hoc prompts per channel.

Master on-brand generation prompt

VOICE PROFILE:

[paste profile]

BODY OF WORK:

[paste 3–5 samples]

TRANSFORMATION EXAMPLES:

[paste 2–3 pairs]

TASK:

Content type: [blog intro / email / LinkedIn post]

Facts to include (do not invent): [bullet list]

Length: [word count]

OUTPUT: Draft only — no preamble.

SELF-CHECK (before finalizing):

Score draft 1–5 on: sentence rhythm match, banned phrase absence, vocabulary tier, CTA style.

If any score below 4, revise and show revised draft only.

Run on Claude Opus 4.8 for nuance; GPT-5.5 for structured multi-variant output.

Self-check step — why it works

Models optimize for plausible text on first pass. A forced audit pass catches drift before you see it.

Self-check prompt (standalone or inline):

Review DRAFT against VOICE PROFILE and BODY OF WORK.

List violations: [phrase | rule broken | suggested fix]

Revised draft with all violations fixed.

If zero violations, output: PASS and the draft.

Add: Do not introduce new facts during revision.

Two-pass (generate → self-check) often outperforms one mega-prompt on voice fidelity.

Custom GPT system prompt (ChatGPT)

For teams on ChatGPT Plus/Team, encode voice once in a Custom GPT system prompt:

You write on-brand copy for [Brand].

VOICE PROFILE: [full profile]

BODY OF WORK: [abbreviated 2–3 samples if token-limited]

RULES:

  • Match reference samples, not generic marketing tone
  • Never use: [banned list]
  • Facts come from user message only — do not invent stats or testimonials
  • End every response with self-check scores (1–5) for rhythm, vocabulary, banned phrases

User messages supply task + facts. System prompt holds voice.

See also: How to Write a System Prompt for ChatGPT That Actually Changes Behaviour (system-prompt-chatgpt-changes-behaviour) for system prompt structure and testing.

Claude Project system prompt

Claude Projects attach persistent context — ideal for Body of Work.

Project instructions:

Role: Brand copywriter for [Brand]

Voice: [Voice Profile pasted here]

References: [upload PDFs or paste Body of Work in project knowledge]

Every draft: (1) write, (2) audit against Voice Profile, (3) output revised version

Claude Opus 4.8 holds long Body of Work + pairs in project context with strong style adherence.

Split project knowledge: style guide PDF + 5 best-performing emails + banned word list.

Before vs after: generic vs on-brand

Weak:

Write a launch email for our new analytics dashboard. Keep it on brand.

Output: "We're thrilled to unveil a revolutionary dashboard that empowers data-driven decisions!" — exclamation-heavy, vague, no product specifics.

Strong:

VOICE PROFILE + BODY OF WORK + pairs pasted above.

TASK: Launch email. Facts: dashboard ships April 12, shows pipeline by rep, no setup beyond OAuth. 120 words max.

Output: Opens with rep pain (spreadsheet hunting), names April 12, one concrete capability, single CTA — matches sample email rhythm.

Before vs after: social post

Weak:

Tweet about our sustainability report.

Output: "🌍 We're committed to a greener future! #Sustainability #Innovation" — emoji spam, no data, hashtag noise.

Strong:

Same reference block. TASK: X post, 240 chars. Facts: 40% emissions cut since 2022, scope 1+2, link to report.

Output: One stat upfront, plain language, one relevant hashtag, no greenwashing adjectives.

Channel-specific format overlays

Shared voice block + per-channel FORMAT:

| Channel | Format overlay |

| Email | Subject line + preview text + body; single CTA button text |

| Blog | H2 structure; no rhetorical questions in intro |

| LinkedIn | Hook in first 210 chars; no hashtag stacks |

| X | 240 char hard limit; one link |

Add FORMAT line after TASK in every prompt.

Banned phrase enforcement

List bans explicitly — models ignore "don't sound salesy."

NEVER USE: revolutionary, game-changer, synergy, leverage (verb), best-in-class, thrilled to announce, cutting-edge

REPLACEMENTS: [map each to approved alternative]

Add: If TASK requires a banned word for legal/quote reasons, flag [QUOTE EXCEPTION].

Audit monthly: search outputs for bans that slipped through → add to NEVER list.

Voice drift detection checklist

  • Sentence length creep (avg words up 30%+ vs Body of Work?)
  • New superlatives not in approved claims
  • CTA style change (question vs imperative)
  • Pronoun shift (we → I without author context)
  • Humor appearing when profile says none

Run checklist on one random AI draft per week per channel.

Model routing for brand voice

Claude Opus 4.8: best style transfer, long Body of Work, subtle tone

GPT-5.5: Custom GPTs, batch variants, JSON metadata (channel, word count, scores)

Gemini 3.1 Pro: large reference corpus in one prompt; multi-doc style guides

Gemini 3.5 Flash: first-draft bulk — always run self-check pass on Opus or GPT-5.5 after

Do not expect Flash alone to hold nuanced voice across 10 transformation pairs.

Multi-writer team workflow

  1. Marketing owns Voice Profile + Body of Work (versioned in git or Notion)
  2. Prompt template lives in shared doc — nobody writes from scratch
  3. Self-check scores logged; scores below 4 trigger human edit
  4. Quarterly: replace oldest Body of Work sample with newest approved piece

PromptMake /text: paste Voice Profile + task facts → generate draft scaffold → human adds facts and runs self-check. Guest: 3 generations/day. Registered: 5/day.

Localization and voice

Voice Profile per locale — not machine translation of English profile.

Template: Same structure, locale-specific Never list (false cognates, inappropriate casualness), local Body of Work samples.

Prompt: Write in [language] matching VOICE PROFILE [locale]. Do not translate English samples literally — match rhythm in target language.

Common failures

Voice Profile only in system prompt, facts-only user message → model forgets bans on long threads

Body of Work samples from different eras (2019 formal + 2026 casual) → blended inconsistency

No self-check → drift visible only after publish

Transformation pairs too generic → model copies structure not voice

Ten adjectives, zero examples → lottery output

Using competitor copy as "inspiration" in Body of Work → legal and voice risk

PromptMake workflow

Save Voice Profile + transformation pairs as /text preset inputs.

Workflow: Profile + TASK facts → generate → paste into self-check prompt → ship or edit.

Registered users (5/day) can iterate variants; guests (3/day) should front-load reference block quality.

FAQ

How long should a Voice Profile be?

150–250 words of auditable rules. If longer, models treat it as prose to summarize, not constraints to obey.

How many Body of Work samples do I need?

Three minimum, five optimal. Mix content types your team produces most (email, blog, social).

Can I use AI to write my Voice Profile?

Use AI to draft from existing style guide, then human-edit every Never and Always line. Profile must be approved by brand owner.

Custom GPT vs paste-every-time prompt?

Custom GPT when same team runs 10+ drafts/week. Paste-every-time when freelancers rotate or voice updates frequently.

Which model best matches brand voice?

Claude Opus 4.8 for fidelity with long references. GPT-5.5 with Custom GPT for team consistency. Gemini 3.1 Pro when reference corpus is huge.

What if outputs still drift after self-check?

Add one more transformation pair showing the exact failure mode. Tighten Never list. Shorten task facts so model focuses on voice.

Should banned words be in system or user prompt?

System prompt (Custom GPT / Claude Project) for persistence. Repeat Never list at end of user prompt for one-off runs (lost-in-the-middle).

How do I onboard new writers to AI voice prompts?

Give them the template, not the tool. Mandatory: Profile + Body of Work + pairs + self-check. No freeform "write in our voice."

Does brand voice prompting work for regulated industries?

Yes, with stricter FACTS blocks and compliance review. Voice prompts control tone — not claim legality. Legal still approves.

Where does system prompt behaviour fit in?

Read system-prompt-chatgpt-changes-behaviour for Custom GPT setup, testing loops, and why system prompts fail without examples — complements this voice architecture.

Crisis communications voice overlay

Crisis copy breaks voice when writers panic-prompt. Add overlay to Voice Profile:

CRISIS OVERLAY: direct, no humor, no exclamation marks, acknowledge impact first, one factual CTA, no speculation.

TASK tag: [CRISIS] triggers overlay automatically in Custom GPT system prompt.

Transformation pair example:

GENERIC: We apologize for any inconvenience caused by the outage.

ON-BRAND CRISIS: [Service] was down from 2:14–4:50 AM ET. We restored access and are publishing a full timeline within 24 hours.

Executive byline ghostwriting

Bylines need tighter rhythm than marketing copy. Add to profile:

BYLINE MODE: first person I, max 16 words per sentence, one anecdote max, no corporate we.

Paste 2 approved exec op-eds in Body of Work. Self-check adds: sounds like named exec, not brand account.

Email nurture sequence consistency

Sequence drift happens when each email is a fresh prompt. Fix:

SHARED BLOCK: Voice Profile + pairs once.

Per email: Email [3 of 5] | prior subject lines: [list] | this email goal: [value prop] | FACTS: [bullets]

Rule: Opening hook style must match Email 1 sample in Body of Work.

GPT-5.5 batch: output all 5 with labels; human checks sequence arc.

Voice A/B testing with self-check scores

Generate 2 variants with same FACTS. Compare self-check scores (rhythm, bans, vocabulary).

Winner becomes new transformation pair. Loser analyzed for which Never rule it violated.

Track scores in spreadsheet — voice quality becomes measurable, not subjective.

Rebrand migration checklist

  • Update Voice Profile effective date
  • Retire pre-rebrand Body of Work samples
  • Regenerate transformation pairs from new approved copy
  • Re-test Custom GPT with 3 standard tasks before team rollout
  • Archive old system prompt version in git

Internal vs external voice split

Maintain INTERNAL PROFILE (Slack, all-hands) and EXTERNAL PROFILE (blog, ads).

Prompt header: PROFILE: external | task: customer email.

Never cross-contaminate samples — internal casualness leaks into customer copy.

Related articles

system-prompt-chatgpt-changes-behaviour — system prompt structure for ChatGPT

Structured output prompting — JSON drafts with voice scores metadata

Positive framing — banned phrase lists vs vague "don't" instructions

Bottom line

Consistent brand voice from AI requires references, not adjectives: Voice Profile, Body of Work, transformation pairs, self-check.

Reference-first architecture. Custom GPT or Claude Project for teams. Audit weekly. Opus or GPT-5.5 for final voice; Flash for drafts only.

Ready to generate your own prompts?

Free. No sign-up required. Works with all major AI models.

Related articles