| 12.50% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 23 | | adverbTagCount | 6 | | adverbTags | | 0 | "She knocked back [back]" | | 1 | "Aurora turned back [back]" | | 2 | "Eva said quietly [quietly]" | | 3 | "Eva's voice cracked slightly [slightly]" | | 4 | "Aurora turned back [back]" | | 5 | "Eva's hands clenched around [around]" |
| | dialogueSentences | 64 | | tagDensity | 0.359 | | leniency | 0.719 | | rawRatio | 0.261 | | effectiveRatio | 0.188 | |
| 96.07% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1272 | | totalAiIsmAdverbs | 1 | | found | | | highlights | | |
| 100.00% | AI-ism character names | Target: 0 AI-default names (16 tracked, −20% each) | | codexExemptions | | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 68.55% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1272 | | totalAiIsms | 8 | | found | | | highlights | | 0 | "methodical" | | 1 | "tension" | | 2 | "churning" | | 3 | "footsteps" | | 4 | "etched" | | 5 | "familiar" | | 6 | "silence" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 0 | | maxInWindow | 0 | | found | (empty) | | highlights | (empty) | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 68 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 68 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 109 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 45 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1259 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 13 | | unquotedAttributions | 0 | | matches | (empty) | |
| 0.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 66 | | wordCount | 840 | | uniqueNames | 12 | | maxNameDensity | 2.86 | | worstName | "Aurora" | | maxWindowNameDensity | 5 | | worstWindowName | "Eva" | | discoveredNames | | Raven | 2 | | Nest | 2 | | Silas | 9 | | Aurora | 24 | | Welsh | 1 | | Eva | 20 | | Louboutin | 1 | | Cardiff | 3 | | Dusty | 1 | | Springfield | 1 | | Ambitious | 1 | | London | 1 |
| | persons | | 0 | "Raven" | | 1 | "Nest" | | 2 | "Silas" | | 3 | "Aurora" | | 4 | "Eva" | | 5 | "Dusty" | | 6 | "Springfield" |
| | places | | | globalScore | 0.071 | | windowScore | 0 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 60 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1259 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 109 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 58 | | mean | 21.71 | | std | 14.16 | | cv | 0.652 | | sampleLengths | | 0 | 54 | | 1 | 18 | | 2 | 23 | | 3 | 27 | | 4 | 2 | | 5 | 25 | | 6 | 41 | | 7 | 7 | | 8 | 42 | | 9 | 10 | | 10 | 19 | | 11 | 38 | | 12 | 8 | | 13 | 19 | | 14 | 26 | | 15 | 16 | | 16 | 49 | | 17 | 13 | | 18 | 10 | | 19 | 17 | | 20 | 8 | | 21 | 31 | | 22 | 7 | | 23 | 5 | | 24 | 15 | | 25 | 21 | | 26 | 18 | | 27 | 4 | | 28 | 14 | | 29 | 32 | | 30 | 24 | | 31 | 12 | | 32 | 11 | | 33 | 44 | | 34 | 7 | | 35 | 13 | | 36 | 37 | | 37 | 2 | | 38 | 19 | | 39 | 26 | | 40 | 23 | | 41 | 4 | | 42 | 37 | | 43 | 19 | | 44 | 9 | | 45 | 16 | | 46 | 27 | | 47 | 45 | | 48 | 6 | | 49 | 10 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 68 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 151 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 7 | | semicolonCount | 0 | | flaggedSentences | 7 | | totalSentences | 109 | | ratio | 0.064 | | matches | | 0 | "The Raven's Nest hummed with its usual evening crowd—locals nursing pints, tourists snapping photos of the vintage maps, and Silas wiping down glasses behind the bar with methodical precision." | | 1 | "Aurora didn't turn—she'd learned not to look over her shoulder constantly anymore, though the habit died hard." | | 2 | "Everything about her screamed success—the tailored suit, the subtle highlights in her hair, the confidence that money and position brought." | | 3 | "Aurora recognized the lawyer in her now—the way she gathered information, filed it away, built her case." | | 4 | "But underneath it, something else—the hollow ache of a friendship that had once meant everything." | | 5 | "Eva's face softened, and for a moment, Aurora saw the girl she'd known—the one who'd snuck bottles of cheap wine into their dorm room, who'd held her hair back after too many shots, who'd been the first person she'd called when the bruises started." | | 6 | "Eva fidgeted with her engagement ring—a massive diamond Aurora hadn't noticed before." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 848 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 28 | | adverbRatio | 0.0330188679245283 | | lyAdverbCount | 6 | | lyAdverbRatio | 0.007075471698113208 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 109 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 109 | | mean | 11.55 | | std | 7.87 | | cv | 0.681 | | sampleLengths | | 0 | 29 | | 1 | 25 | | 2 | 9 | | 3 | 9 | | 4 | 19 | | 5 | 4 | | 6 | 14 | | 7 | 13 | | 8 | 2 | | 9 | 9 | | 10 | 16 | | 11 | 6 | | 12 | 17 | | 13 | 18 | | 14 | 7 | | 15 | 9 | | 16 | 11 | | 17 | 22 | | 18 | 9 | | 19 | 1 | | 20 | 17 | | 21 | 2 | | 22 | 8 | | 23 | 25 | | 24 | 5 | | 25 | 7 | | 26 | 1 | | 27 | 19 | | 28 | 14 | | 29 | 12 | | 30 | 12 | | 31 | 4 | | 32 | 13 | | 33 | 20 | | 34 | 16 | | 35 | 6 | | 36 | 7 | | 37 | 8 | | 38 | 2 | | 39 | 17 | | 40 | 8 | | 41 | 14 | | 42 | 17 | | 43 | 7 | | 44 | 5 | | 45 | 6 | | 46 | 9 | | 47 | 16 | | 48 | 5 | | 49 | 9 |
| |
| 77.37% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.48623853211009177 | | totalSentences | 109 | | uniqueOpeners | 53 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 65 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 9 | | totalSentences | 65 | | matches | | 0 | "He reached for a bottle" | | 1 | "She knocked back half the" | | 2 | "Her gaze swept over Aurora's" | | 3 | "She turned to face Eva" | | 4 | "They sat in silence, the" | | 5 | "She'd known leaving would hurt" | | 6 | "Her movements were sharp, controlled" | | 7 | "She pulled out a business" | | 8 | "They just left you standing" |
| | ratio | 0.138 | |
| 21.54% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 57 | | totalSentences | 65 | | matches | | 0 | "The Raven's Nest hummed with" | | 1 | "Aurora pushed through the heavy" | | 2 | "Silas called without looking up" | | 3 | "Aurora slid onto a barstool," | | 4 | "Silas glanced up, taking in" | | 5 | "He reached for a bottle" | | 6 | "She knocked back half the" | | 7 | "The burn felt good, something" | | 8 | "Aurora didn't turn—she'd learned not" | | 9 | "The Welsh accent hit her" | | 10 | "Aurora's fingers tightened on the" | | 11 | "the woman told Silas, then" | | 12 | "Aurora forced herself to turn," | | 13 | "Eva's hand flew to her" | | 14 | "Her gaze swept over Aurora's" | | 15 | "Aurora turned back to her" | | 16 | "Silas, with the instincts of" | | 17 | "Eva's voice carried that old" | | 18 | "Aurora's laugh came out harsh" | | 19 | "Eva shifted on her stool," |
| | ratio | 0.877 | |
| 76.92% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 65 | | matches | | 0 | "Either way, she sat in" |
| | ratio | 0.015 | |
| 73.73% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 31 | | technicalSentenceCount | 3 | | matches | | 0 | "Silas, with the instincts of someone who'd spent decades reading rooms, moved to the far end of the bar." | | 1 | "But underneath it, something else—the hollow ache of a friendship that had once meant everything." | | 2 | "Eva's face softened, and for a moment, Aurora saw the girl she'd known—the one who'd snuck bottles of cheap wine into their dorm room, who'd held her hair back …" |
| |
| 81.52% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 23 | | uselessAdditionCount | 2 | | matches | | 0 | "Aurora slid, water dripping from her black hair onto the worn wood" | | 1 | "Eva held out, the stone catching the light" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 64 | | tagDensity | 0.063 | | leniency | 0.125 | | rawRatio | 0 | | effectiveRatio | 0 | |