Why "Sarcastic" and "Formal" Don't Actually Help You
Open almost any character bible and you'll find dialogue notes like "sarcastic, guarded" or "formal, precise." These are useful for thinking about a character's psychology. They are almost useless for generating consistent dialogue, because they describe attitude, not mechanism. Sarcasm can be delivered in short clipped sentences or in long elaborate ones. "Formal" tells you nothing about whether a character uses contractions, how long their sentences run, or whether they interrupt.
The result, in AI-assisted drafting especially, is a manuscript where every character sounds like a slightly different mood setting on the same underlying voice. The model has been told what each character feels but not how each character constructs a sentence, so it defaults to its own house style with a light coat of paint. Readers pick up on this even when they can't articulate it — dialogue starts to feel interchangeable, and writers respond by over-tagging speech ("he said sarcastically") to compensate for what the words themselves aren't doing.
The fix is to stop describing personality and start specifying idiolect — the actual structural and lexical fingerprint of how a particular person talks. Idiolect is a linguistics term for an individual's unique language pattern, distinct from dialect (regional) or sociolect (group-based). It's specific enough to generate from and specific enough to test against.
Building the Idiolect Sheet
An idiolect sheet has four core components, and all four need to be concrete enough that an AI model — or a human co-writer — could use them as a spec, not a vibe.
Syntax habits
This covers sentence length and shape: does the character speak in fragments, run-ons, or balanced clauses? Do they front-load the important information or bury it at the end? Do they interrupt themselves, trail off, or finish every thought cleanly? Do they ask questions to deflect, or state things as flat declaratives even when uncertain?
Vocabulary tier
This is driven by education, region, era, and profession, and it should be specific enough to generate word choices, not just "smart" or "simple." A surgeon and a mechanic might both use precise technical vocabulary, but from entirely different domains, and both might avoid emotional language for different reasons. Vocabulary tier also includes register-switching: does this character talk differently to a boss than to a sibling, and how?
Verbal tics
Specific, repeatable, low-frequency enough not to become a caricature. A tic can be a filler word, a habitual qualifier, a repeated structure ("Look —" as an opener), or a physical speech habit like unfinished comparisons. The key constraint: a tic used more than once every page or two stops reading as character and starts reading as a bit.
Avoidances and overuses
This is the most underused category. What does this character never say? Some people avoid profanity, some avoid direct emotional statements, some never apologize outright, some can't say no cleanly and instead pile up qualifications. Overuse is the mirror: a word or phrase they reach for constantly, often without noticing.
Here's a prompt that builds a full sheet for one character, designed to force specificity rather than accept adjectives:
Act as a dialogue linguist building a character idiolect sheet. Character: [name, age, background, one paragraph] Role in story: [protagonist/antagonist/etc., relationship to POV character] Build a speech profile with these sections. For each one, give concrete, usable specifications — not personality adjectives. 1. SYNTAX: Average sentence length (short/medium/long) and why. Does this character interrupt others, get interrupted, or hold the floor? Do they front-load key information or delay it? Give 3 example sentence structures (as templates, not full sentences) this character would naturally use. 2. VOCABULARY TIER: What domain(s) supply this character's default metaphors and comparisons (trades, sports, religion, academia, etc.)? List 8-10 words or phrases this character would use that another character in this story would NOT. Note any code-switching: how does their vocabulary shift with different listeners? 3. CONTRACTIONS AND FORMALITY: Does this character contract words consistently, inconsistently, or never? Does formality change under stress (more formal when upset, or less)? 4. VERBAL TICS: 1-2 specific, repeatable tics (an opener, a filler, a habitual qualifier, a way of ending sentences). Specify roughly how often they should appear (e.g., "once every 2-3 lines of dialogue, not every line"). 5. AVOIDANCES: What does this character never say or never say directly? (Never apologizes outright, never swears, never asks for help, never says "I love you," etc.) What emotional or topic territory do they route around? 6. OVERUSES: One word, phrase, or rhetorical move this character defaults to under pressure, without realizing it. Output as a labeled reference sheet I can reuse across an entire manuscript.
Run this once per major character, and you have something closer to a specification than a mood board — the kind of document you can hand to a model in each subsequent chapter as grounding.
The Contrast Matrix: Testing Characters Against Each Other
An idiolect sheet built in isolation can still collide with another character's sheet. Two characters can each have a "clipped, short-sentence" syntax profile and end up indistinguishable from each other even though each sheet looks fine on its own. The fix is a contrast matrix — a side-by-side comparison across the same categories, built specifically to surface overlap.
I have idiolect sheets for [2-3 character names]. Here they are: [paste sheets] Build a contrast matrix comparing them side-by-side across: sentence length, interruption behavior, vocabulary domain, formality/contractions, verbal tics, and avoidances. Then answer directly: - Which categories are these characters too similar in? Flag any overlap that would make their dialogue hard to tell apart with names removed. - Propose a specific adjustment to ONE character (not all of them) to increase contrast in the weakest category, while staying consistent with their background and psychology. - Give me a 6-line dialogue exchange between these characters on a neutral topic (ordering food, arguing about directions) that demonstrates the contrast is real on the page, not just on paper.
The instruction to adjust only one character matters — it prevents the model from smoothing both sheets toward some average "balanced" pair, which erases the contrast you're trying to build. You want asymmetry. If your ensemble has more than three major speaking characters, run this pairwise for the ones most likely to share scenes, rather than trying to force one matrix across everyone at once — it gets muddy past three or four columns.
Stress-Testing a Scene
The real test of an idiolect isn't the sheet — it's a scene under narrative pressure, where the temptation is always to let plot function override voice consistency. A useful discipline: write the same beat three times, swapping which character says which line, and see whether the "wrong" version is obviously wrong.
Here is a scene beat: [describe the plot function of the exchange — e.g., "Character A confronts Character B about a lie, B deflects, A presses, B eventually admits a partial truth."] Characters involved: [names], with idiolect sheets below. [paste sheets] Write this exchange three times: Version 1: as originally cast (A confronts, B deflects) Version 2: with the confrontational role given to B instead of A, keeping each character's idiolect intact Version 3: with all dialogue tags and character names stripped, formatted as an unlabeled transcript For version 3, do not tell me which line belongs to which character. I will guess, then you confirm. After all three versions, note explicitly: were there any lines in version 1 that could be swapped between A and B without changing their idiolect fit? List them.
The unlabeled transcript in version 3 is the actual diagnostic. If you can't correctly attribute lines back to characters using voice alone, the idiolects aren't distinct enough yet regardless of how good the sheets look. Version 2, forcing the "wrong" character into the confrontational role, checks whether the voice holds up independent of dramatic function — a good idiolect should survive a plot role swap, because voice and function are supposed to be separable.
Auditing an Existing Manuscript for Voice Bleed
Idiolect drift is easiest to build in from the start and hardest to fix retroactively, which is exactly why most writers encounter this problem mid-manuscript rather than before it. If you've already got chapters written — by hand, with AI, or some mix — you can audit them for voice bleed: places where a line could be reassigned to a different character without breaking anything.
Here is a chapter from my manuscript with character names attached to dialogue: [paste chapter or scene] Here are the idiolect sheets for the characters speaking in this scene: [paste sheets] Audit this chapter for voice bleed. Specifically: 1. Identify any line of dialogue that violates its speaker's idiolect sheet (wrong sentence length pattern, vocabulary that doesn't fit their tier, a tic used by the wrong character, an avoidance that's been broken). 2. Identify any line that could be swapped to a DIFFERENT character in this scene without requiring a rewrite — meaning it's generic enough that voice isn't doing any work in that line. 3. For each flagged line, suggest a minimal rewrite that pulls it back toward the speaker's idiolect sheet without changing the line's plot function or information content. 4. Give me a percentage estimate: roughly what portion of this scene's dialogue is idiolect-neutral (could belong to anyone) versus idiolect-specific (clearly belongs to this character)?
The percentage estimate at the end is worth taking seriously even though it's necessarily rough — a scene that comes back at 70% idiolect-neutral is telling you something real, even if you'd quibble with the exact number. Fully idiolect-specific dialogue in every line reads as mannered and exhausting, so the goal isn't 100% — plot-critical information often needs to be flat and clear regardless of who's saying it. But a chapter where most lines are swappable is a chapter where voice isn't carrying any of the characterization weight, and everything is resting on tags and context instead.
Keeping the Fingerprint Stable Over 200 Pages
The single biggest failure mode in long-manuscript work, AI-assisted or not, is drift: a character's idiolect sheet is followed faithfully in chapters one through six and then quietly abandoned by chapter twenty, usually because the sheet itself has stopped being part of the working context. Every new chapter drafted without the sheet in front of the writer or the model pulls voice back toward a generic default.
The practical solution is treating the idiolect sheets as living reference documents, not one-time worldbuilding exercises done at the outset and filed away. Paste the relevant sheets into context before drafting or revising any scene with that character, the same way you'd keep a style guide open while copyediting. When you finish a full draft, it's worth running the audit prompt above across several chapters spaced throughout the manuscript — one from the opening act, one from the midpoint, one near the end — specifically to check for drift rather than errors within a single scene. If the chapter twenty version of a character sounds meaningfully different from the chapter two version in ways the sheet doesn't predict, that's drift, not growth, unless the story has specifically earned a change in how that character speaks.
None of this replaces ear — the sheets are scaffolding, and eventually a writer internalizes a character's voice well enough to hear when a line is wrong without consulting a document. But scaffolding is exactly what makes that internalization possible at scale, across a manuscript too long to hold entirely in memory, and across drafting sessions where the temptation to let every character sound a little too much like the model's default voice is strongest.

No comments yet. Be the first to comment!