| 5.56% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 34 | | adverbTagCount | 7 | | adverbTags | | 0 | "he agreed softly [softly]" | | 1 | "he said quietly [quietly]" | | 2 | "he said finally [finally]" | | 3 | "She stood abruptly [abruptly]" | | 4 | "she asked softly [softly]" | | 5 | "he said simply [simply]" | | 6 | "she said finally [finally]" |
| | dialogueSentences | 72 | | tagDensity | 0.472 | | leniency | 0.944 | | rawRatio | 0.206 | | effectiveRatio | 0.194 | |
| 55.75% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1582 | | totalAiIsmAdverbs | 14 | | found | | 0 | | | 1 | | adverb | "deliberately" | | count | 1 |
| | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | adverb | "barely above a whisper" | | count | 1 |
|
| | highlights | | 0 | "slowly" | | 1 | "deliberately" | | 2 | "slightly" | | 3 | "completely" | | 4 | "softly" | | 5 | "precisely" | | 6 | "really" | | 7 | "gently" | | 8 | "barely above a whisper" |
| |
| 100.00% | AI-ism character names | Target: 0 AI-default names (17 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 58.91% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1582 | | totalAiIsms | 13 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | word | "down her spine" | | count | 1 |
| | 10 | | | 11 | |
| | highlights | | 0 | "familiar" | | 1 | "navigate" | | 2 | "electric" | | 3 | "chaotic" | | 4 | "predator" | | 5 | "flickered" | | 6 | "perfect" | | 7 | "silence" | | 8 | "warmth" | | 9 | "down her spine" | | 10 | "whisper" | | 11 | "flicker" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "sent a shiver through" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 82 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 82 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 120 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 41 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1565 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 28 | | unquotedAttributions | 0 | | matches | (empty) | |
| 91.80% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 35 | | wordCount | 1031 | | uniqueNames | 14 | | maxNameDensity | 1.16 | | worstName | "Rory" | | maxWindowNameDensity | 2 | | worstWindowName | "Rory" | | discoveredNames | | Aurora | 1 | | Carter | 1 | | Golden | 1 | | Empress | 1 | | Eva | 6 | | Manchester | 1 | | Rory | 12 | | London | 2 | | Evan | 1 | | Moreau | 1 | | French | 1 | | British | 1 | | Lucien | 5 | | God | 1 |
| | persons | | 0 | "Aurora" | | 1 | "Carter" | | 2 | "Empress" | | 3 | "Eva" | | 4 | "Rory" | | 5 | "Evan" | | 6 | "Moreau" | | 7 | "British" | | 8 | "Lucien" |
| | places | | 0 | "Golden" | | 1 | "Manchester" | | 2 | "London" |
| | globalScore | 0.918 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 63 | | glossingSentenceCount | 1 | | matches | | 0 | "quite reach his mismatched eyes" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1565 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 120 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 63 | | mean | 24.84 | | std | 16.3 | | cv | 0.656 | | sampleLengths | | 0 | 74 | | 1 | 42 | | 2 | 54 | | 3 | 43 | | 4 | 58 | | 5 | 23 | | 6 | 12 | | 7 | 22 | | 8 | 12 | | 9 | 14 | | 10 | 63 | | 11 | 32 | | 12 | 34 | | 13 | 22 | | 14 | 24 | | 15 | 21 | | 16 | 7 | | 17 | 12 | | 18 | 27 | | 19 | 5 | | 20 | 21 | | 21 | 12 | | 22 | 25 | | 23 | 13 | | 24 | 17 | | 25 | 43 | | 26 | 18 | | 27 | 54 | | 28 | 9 | | 29 | 16 | | 30 | 19 | | 31 | 17 | | 32 | 18 | | 33 | 18 | | 34 | 14 | | 35 | 8 | | 36 | 17 | | 37 | 14 | | 38 | 52 | | 39 | 7 | | 40 | 30 | | 41 | 29 | | 42 | 10 | | 43 | 5 | | 44 | 25 | | 45 | 25 | | 46 | 37 | | 47 | 4 | | 48 | 54 | | 49 | 20 |
| |
| 96.71% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 82 | | matches | | 0 | "was slicked" | | 1 | "was gone" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 188 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 13 | | semicolonCount | 0 | | flaggedSentences | 9 | | totalSentences | 120 | | ratio | 0.075 | | matches | | 0 | "Still, something made her hesitate—a prickle at the back of her neck, the instinctual warning that had saved her more times than she cared to count since discovering London's supernatural underbelly." | | 1 | "When she finally pulled it open, the sight of him sent a jolt through her system—equal parts electric shock and cold dread." | | 2 | "But it was his eyes that always caught her off guard—one amber and one black, heterochromatic and impossible to forget." | | 3 | "As he limped past her, the faint scent of sandalwood and something metallic—something uniquely him—filled the small entryway." | | 4 | "His expression flickered—just for a moment—but she caught it." | | 5 | "She retrieved the first aid kit from beneath the sink—the one Eva kept stocked with more than just bandages and antiseptic." | | 6 | "When she turned back, he had done as she asked, and the sight of him—of the network of scars across his otherwise perfect skin—still had the power to steal her breath." | | 7 | "Rory concentrated on her task, on anything other than the proximity of him—the warmth of his skin under her fingers, the way his muscles tensed and relaxed beneath her touch." | | 8 | "She had missed him—God, how she had missed him—but the wounds he had left were deeper than the one she had just stitched." |
| |
| 78.44% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1047 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 60 | | adverbRatio | 0.05730659025787966 | | lyAdverbCount | 29 | | lyAdverbRatio | 0.027698185291308502 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 120 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 120 | | mean | 13.04 | | std | 8.38 | | cv | 0.643 | | sampleLengths | | 0 | 23 | | 1 | 20 | | 2 | 31 | | 3 | 17 | | 4 | 10 | | 5 | 3 | | 6 | 12 | | 7 | 5 | | 8 | 18 | | 9 | 31 | | 10 | 21 | | 11 | 22 | | 12 | 12 | | 13 | 26 | | 14 | 20 | | 15 | 19 | | 16 | 4 | | 17 | 6 | | 18 | 6 | | 19 | 13 | | 20 | 9 | | 21 | 12 | | 22 | 6 | | 23 | 8 | | 24 | 14 | | 25 | 18 | | 26 | 31 | | 27 | 23 | | 28 | 9 | | 29 | 15 | | 30 | 12 | | 31 | 7 | | 32 | 8 | | 33 | 14 | | 34 | 15 | | 35 | 9 | | 36 | 9 | | 37 | 2 | | 38 | 10 | | 39 | 5 | | 40 | 2 | | 41 | 11 | | 42 | 1 | | 43 | 13 | | 44 | 13 | | 45 | 1 | | 46 | 3 | | 47 | 2 | | 48 | 21 | | 49 | 12 |
| |
| 68.61% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 6 | | diversityRatio | 0.44166666666666665 | | totalSentences | 120 | | uniqueOpeners | 53 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 74 | | matches | (empty) | | ratio | 0 | |
| 9.19% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 39 | | totalSentences | 74 | | matches | | 0 | "Her part-time delivery shift at" | | 1 | "She unbolted the locks slowly," | | 2 | "His platinum blond hair was" | | 3 | "he said, his voice that" | | 4 | "Her fingers tightened on the" | | 5 | "He offered a small, knowing" | | 6 | "she countered, her voice sharper" | | 7 | "he agreed softly" | | 8 | "She watched him move through" | | 9 | "he finished, turning to face" | | 10 | "she said, crossing her arms" | | 11 | "His expression flickered—just for a" | | 12 | "she asked, her voice softer" | | 13 | "He set his cane against" | | 14 | "she demanded, stepping closer before" | | 15 | "he said, his amber eye" | | 16 | "She retrieved the first aid" | | 17 | "she instructed, turning to grab" | | 18 | "she asked, gently cleaning the" | | 19 | "he said through gritted teeth" |
| | ratio | 0.527 | |
| 47.84% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 61 | | totalSentences | 74 | | matches | | 0 | "The scent of turmeric and" | | 1 | "Her part-time delivery shift at" | | 2 | "The narrow hallway of Eva's" | | 3 | "Rory had just set down" | | 4 | "Eva's secret knock." | | 5 | "She unbolted the locks slowly," | | 6 | "Lucien Moreau stood in the" | | 7 | "His platinum blond hair was" | | 8 | "he said, his voice that" | | 9 | "Her fingers tightened on the" | | 10 | "He offered a small, knowing" | | 11 | "she countered, her voice sharper" | | 12 | "he agreed softly" | | 13 | "Rory stepped aside, gesturing for" | | 14 | "She watched him move through" | | 15 | "Lucien remarked, running his fingers" | | 16 | "Rory said, closing the door" | | 17 | "A small concession, but one" | | 18 | "he finished, turning to face" | | 19 | "she said, crossing her arms" |
| | ratio | 0.824 | |
| 67.57% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 74 | | matches | | 0 | "Before she could respond, he" |
| | ratio | 0.014 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 38 | | technicalSentenceCount | 8 | | matches | | 0 | "Her part-time delivery shift at Golden Empress had left her muscles aching and her mind buzzing with the day's frustrations." | | 1 | "The narrow hallway of Eva's flat was dimly lit, the familiar stacks of books and scrolls creating narrow pathways that only someone who knew the space well coul…" | | 2 | "Still, something made her hesitate—a prickle at the back of her neck, the instinctual warning that had saved her more times than she cared to count since discov…" | | 3 | "She unbolted the locks slowly, deliberately, her hand hovering near the kitchen knife she'd started keeping by the door since Evan." | | 4 | "His platinum blond hair was slicked back as always, and his tailored charcoal suit was immaculate, as though he hadn't just walked through London's unpredictabl…" | | 5 | "He offered a small, knowing smile that didn't quite reach his mismatched eyes." | | 6 | "The newest wound was a deep gash across his ribs, still oozing blood that looked too dark, too thick to be entirely human." | | 7 | "Rory sank into the chair he had just vacated, her head in her hands, wondering how she had ever thought she could keep him out of her heart when he had been liv…" |
| |
| 51.47% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 34 | | uselessAdditionCount | 5 | | matches | | 0 | "she countered, her voice sharper than intended" | | 1 | "he finished, turning to face her" | | 2 | "she asked, her voice softer now" | | 3 | "he said, but his jaw tightened as she began to stitch" | | 4 | "she said finally, her voice barely above a whisper" |
| |
| 11.11% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 24 | | fancyCount | 10 | | fancyTags | | 0 | "he agreed softly (agree)" | | 1 | "he acknowledged (acknowledge)" | | 2 | "she demanded (demand)" | | 3 | "she lied (lie)" | | 4 | "he retorted (retort)" | | 5 | "he admitted (admit)" | | 6 | "she whispered (whisper)" | | 7 | "he insisted (insist)" | | 8 | "he continued (continue)" | | 9 | "she admitted (admit)" |
| | dialogueSentences | 72 | | tagDensity | 0.333 | | leniency | 0.667 | | rawRatio | 0.417 | | effectiveRatio | 0.278 | |