Run: 2026-03-09-01KK9QD0E7DA2HYQEYB1HDP6MW

Run Details

Duration:
2m 37s
Cost:
$0.086572
Provider:
OpenAI

Model input

System
You are an expert fiction writer. Always keep the following rules in mind: - Write in past tense and use General English spelling, grammar, and colloquialisms/slang. - Write in active voice - Always follow the "show, don't tell" principle. - Avoid adverbs and cliches and overused/commonly used phrases. Aim for fresh and original descriptions. - Convey events and story through dialogue. - Mix short, punchy sentences with long, descriptive ones. Drop fill words to add variety. - Skip "he/she said said" dialogue tags and convey people's actions or face expressions through their speech - Avoid mushy dialog and descriptions, have dialogue always continue the action, never stall or add unnecessary fluff. Vary the descriptions to not repeat yourself. - Put dialogue on its own paragraph to separate scene and action. - Reduce indicators of uncertainty like "trying" or "maybe" When writing text: - NEVER conclude the scene on your own, follow the beat instructions very closely. - NEVER end with foreshadowing. - NEVER write further than what I prompt you with. - AVOID imagining possible endings, NEVER deviate from the instructions. - STOP EARLY if the continuation contains what was required in the instructions. You do not need to fill out the full amount of words possible.
User/Human
Take into account the following glossary of characters/locations/items/lore... when writing your response: <codex> <character id="4412" name="Aurora Carter" aliases="Rory, Laila, Aurora, Carter, Malphora" pronouns="she/her" species="Human" storyRole="Protagonist"> <eyeColor>bright blue</eyeColor> <hair>straight shoulder-length black</hair> <height>5'6"</height> <age>25</age> <scar>small crescent-shaped scar on her left wrist from a childhood accident</scar> <description>Aurora, referred to by her friends as Rory, is cool-headed, intelligent, and known for quick out-of-the-box thinking.</description> <backstory>Born in Cardiff to an Irish barrister father (Brendan Carter) and Welsh teacher mother (Jennifer Carter née Ellis), Rory reluctantly pursued Pre-Law at Cardiff University. She fled to London at the behest of her childhood friend Eva after leaving an abusive ex named Evan. By day, Rory works part-time as a delivery person for Yu-Fei Cheung's Golden Empress restaurant. She lives in a flat above Silas' bar.</backstory> </character> <character id="4415" name="Lucien Moreau" aliases="Lucien, Luc, the Frenchman" pronouns="he/him" species="Half-Demon" storyRole="Ally"> <eyeColor>heterochromatic — one amber, one black</eyeColor> <hair>slicked-back platinum blond</hair> <height>5'11"</height> <age>32</age> <cane>ivory-handled cane that conceals a thin blade</cane> <dress>tailored charcoal suits</dress> <description>An impeccably dressed fixer and information broker in London's supernatural underworld. He speaks four languages fluently.</description> <backstory>Born in Marseille to a human mother and a demon father from the realm of Avaros.</backstory> </character> <location id="858" name="Eva's Flat" aliases="Eva's place, the flat on Brick Lane" realm="Earth"> <cat>tabby cat named Ptolemy</cat> <security>three deadbolts on the front door</security> <description>A cramped one-bedroom flat above a curry house on Brick Lane, East London. Every surface is covered with books, scrolls, and research notes.</description> </location> </codex> Continue the story using the following instructions: <instructions> Write a fully fleshed out scene of at least 1000 words in the romance genre. Two people who parted on complicated terms are forced together again when one shows up unannounced at the other's flat. There's history between them — attraction, hurt, and things left unsaid. Write the scene from the moment the door opens. Use the codex entries above as your world reference for characters and setting. Only include the prose of the scene without any markdown or commentary. </instructions>

Model response

AI
The door opened on the chain first, a narrow slice of dim hallway and wet brick and Lucien Moreau standing under the flicker of the landing light as if the building ought to have dressed for him. Rain clung to his slicked-back hair. It darkened the shoulders of his charcoal suit and ran in thin lines from the ivory head of his cane to the cracked lino outside Eva’s door. One of his eyes caught the light, molten amber. The other drank it whole. Aurora kept the chain hooked. “You’d better have the wrong flat.” His mouth twitched, though the rest of him looked carved from something brittle. “You still opened.” “Three deadbolts and a chain. Don’t make it sound warm.” Below them, the curry house sent up cardamom and frying onions through the floorboards. Behind her, Ptolemy wound round her bare ankles and let out a rusty complaint at the draft. Lucien dipped his head, gaze sliding past her shoulder to the walls inside, papered with Eva’s notes and curling maps and books stacked two deep on every shelf. “Eva’s away, then.” “That was your first mistake.” His gloved hand tightened on the cane. Rain slid from his cuff. Something darker followed it. Aurora dropped her gaze to the smear on the back of his wrist. “You’ve got blood on the landing.” “Then let me in before your neighbours decide I’m entertainment.” She should have shut the door. She knew the exact weight of that choice. Six months sat inside it, sharp as glass. Six months since he’d stood in the blue dark outside Silas’ bar, pressed an envelope of cash into her hand like payment for a service, and watched her walk away with his jaw locked hard enough to crack a tooth. She looked at the blood again. “Take one step in and I throw you back out if you lie to me.” He lifted his chin. “That sounded almost fond.” She slid the chain free and pulled the door open. “That was a medical warning.” He crossed the threshold with a hitch he failed to hide, and that, more than the blood, set her teeth on edge. Lucien never showed damage unless he had no strength left to hide it. She shut the door fast and drove each deadbolt home. Metal knocked into place, one after the other. Behind her, he stood in the cramped hall, water gathering at his polished shoes, one hand braced against the wall between an umbrella stand and a leaning tower of occult journals. Ptolemy sat at his feet and stared up with open contempt. “You’re upsetting the cat.” “The cat hated me before we were introduced.” “He’s got good instincts.” Lucien looked at her then, straight and unblinking, and for one stupid beat she forgot the blood and the history and the wet trail on Eva’s floor. His face had lost none of its dangerous neatness. His cheekbones still looked cut with a blade. His mouth still carried that hard, deliberate shape that had haunted her at inconvenient hours. Then he swayed. Aurora caught his arm before he hit the wall. “Don’t you dare collapse in here. Eva will never let me hear the end of it.” “Comforting as ever.” His jacket felt soaked through. Warmth leaked under her fingers. Not rain. She shoved him towards the kitchen table, a scarred thing buried beneath books, loose papers, a cracked mortar and pestle, and three mugs with dried tea at the bottom. Lucien nudged a stack of notes aside with the tip of his cane and sat with care that cost him. Aurora swept research off one end of the table, dropped it on a chair, and went for the first-aid tin above the sink. “Who did it?” “A gentleman in Whitechapel with no ear for negotiation.” “You got stabbed over a disagreement.” “I’ve had worse over punctuation.” She snapped the tin open. “Take the jacket off.” His hand moved to his tie instead, slow from strain rather than vanity, and she saw the tremor he couldn’t smooth away. Irritation rose clean and bright. Better than anything softer. “For God’s sake.” She stepped in, slapped his hand aside, and yanked the tie loose. Silk hissed through the collar. He watched her with that unbearable attention of his, as if every breath she took had become part of a ledger. “You still smell of sesame oil.” “I came from work.” “At this hour?” “Some of us do jobs that involve lifting things ourselves.” His mouth almost curved. Blood had soaked through the waistcoat near his left ribs. Aurora met his eyes. “If you make one joke about my bedside manner, I’ll stitch you with fishing line.” “I’d never insult your craftsmanship.” She peeled the jacket from his shoulders. It came away heavy with rain and blood and expensive wool. When she tugged at the waistcoat, he sucked in a breath through his teeth. “There it is,” she muttered. “The famous charm.” “You missed me.” She cut the waistcoat strings of his smirk with a look. “You don’t get to arrive half-dead and flirt your way round the queue.” The white shirt beneath had gone red at the side. She fetched scissors from the drawer, jammed the blunt tips under the fabric, and split the shirt from hem to rib. His skin flashed pale under the kitchen light, then the wound showed itself: a thin, ugly slice under the left side, not deep enough to kill on the spot, deep enough to keep bleeding. “Knife?” “Blade.” “That narrows it beautifully.” She soaked gauze in disinfectant. Lucien glanced at the bottle. “Eva still buys the savage kind.” “She says if it hurts, it works.” “Your friend remains terrifying.” Aurora pressed the gauze to the cut. He went rigid. His fingers bit down on the edge of the table. A pulse jumped in his throat. “Hold still.” “I am holding very still.” “You’re vibrating with offence.” She cleaned the blood in careful strokes. The flat narrowed around them: the hum of the fridge, the scrape of rain against the window, the muffled clatter from the kitchen below, Ptolemy’s tail slashing the air from his place atop the microwave. Lucien’s knee brushed hers when she leaned in. The contact burned through two layers of clothing and six months of pride. She set the bloodied gauze aside. “This needed stitches an hour ago.” “I was occupied.” “With what, exactly? Picking the perfect moment to ruin my evening?” “With reaching your door.” That made her look up. He had gone pale beneath the fine-cut bones of his face. Not dramatic. Not pleading. Plain. It unsettled her more than any polished line he could have chosen. She reached for the suture kit Eva kept for less legal emergencies. “You’ve got other people.” “I came here.” “That wasn’t my question.” “No. It was the answer.” Aurora tore open the packet with more force than she needed. “Don’t do that.” “Do what?” “Walk in after half a year, bleed on Eva’s floor, and speak in riddles because you think it makes the room bend round you.” His gaze dropped to her hands. To the small crescent scar on her left wrist as she threaded the needle. “I think in straight lines when I’m losing blood.” “Then surprise me.” He exhaled once, rougher than his voice. “I didn’t trust anyone else to touch a blade wound.” She let out a short laugh. “Now I’m flattered.” “I trusted your hands.” The needle paused between her fingers. He saw it. Of course he did. Aurora set her jaw and moved in. “This will hurt.” “Everything worth remembering has done.” She pushed the needle through skin. He hissed and gripped the table harder. Ptolemy’s ears flattened in sympathy or judgement. Aurora tied the first stitch neat and small. “Save your poetry. It never suited you.” “It suited you well enough on the Embankment.” The memory struck with all the delicacy of a thrown brick. Wind off the Thames. His coat around her shoulders. His hand cupping the back of her neck before his mouth found hers, slow at first, then nothing slow about it. The city had gone soft and far away. Then morning had come, and with it the envelope. She set the second stitch. “You charged me for that night.” His eyes closed for a moment. When they opened, the amber one held heat. The black one held something harder to name. “I paid you for the information that kept you alive.” “You left the money on a table and vanished before I woke up.” “I left before I stayed.” She laughed without humour. “Spare me. Men have wrapped cowardice in nicer paper.” “Cowardice.” He tasted the word like it had weight. “Yes.” She tied another knot. “You wanted honesty. Here it is. You got under my skin fast enough to make me stupid. I didn’t trust what I’d do with that.” Aurora snorted. “So you solved it by treating me like a client.” “I solved it badly.” “That’s one way to put it.” He shifted, winced, then forced himself still again. “I had your ex’s name, your parents’ address in Cardiff, the route you walked home from Golden Empress, the key code for the back door above Silas’ bar. The people asking questions about you didn’t ask them out of idle interest.” Her hand stopped. That old cold touched the base of her spine. Evan’s face flashed up, then the uglier faces that had come after she slipped into Lucien’s world: creatures with human smiles and butcher’s appetites, men who wore civility like borrowed skin. “You could have told me.” “I should have.” “Instead you made the choice for me.” “Yes.” No twist. No excuse. Just that. The room held still around the word. Aurora looked down at the line of stitches. Her own breathing sounded too loud. Lucien watched her with a steadiness that stripped all his usual armour away. Blood had dried in a dark fan along his side. Rainwater still marked his hairline. He looked less like the underworld’s polished broker than a man who had reached a door and spent the last of himself on standing upright. She finished the final stitch and tied it off. “There.” She wiped the skin clean and taped fresh dressing over the wound. Her fingers moved with cool precision. Inside, everything knocked about. “Don’t rip it open.” “I’ll attempt restraint.” “That will be new.” He let that pass. His hand left the table and, slow enough for her to stop him, settled over her wrist. Not a grab. Not ownership. Just warmth around the scar. Aurora looked at his fingers, then at him. “You remember where to find me when you’re hurt.” “I remembered everything.” The curry house banged a pan below. A bus groaned past outside. Ptolemy jumped from the microwave to the windowsill and began washing one paw with deep concentration, as if the room had finally grown interesting. Aurora didn’t pull away. “You could have come before this.” “Yes.” “You didn’t.” “No.” “Why tonight?” He traced the edge of her wristbone with his thumb once, careful of the scar. “Because tonight I got tired of hearing my own reasons.” She swallowed. “That’s not much of an apology.” “It’s a start.” His voice had dropped. Not smooth now. Not designed. Bare. Aurora leaned back a fraction, enough to breathe without tasting him, and found the distance worse. His shirt hung open where she’d cut it, exposing pale skin, lean muscle, old scars in thin silver lines. She remembered her mouth on one of them. She remembered the way he had gone still, as if tenderness had shocked him more than pain ever managed. “You still assume I’ll take what you give.” His hand loosened at once. He started to draw it back. She caught his fingers before he could. Lucien went motionless. “I didn’t say let go.” Something changed in his face then. Not dramatic. Nothing theatrical. A fracture of control. Enough to show the hunger he’d kept banked, enough to answer every silent question that had sat between them and soured. Aurora stepped between his knees. The kitchen shrank to his breath, her pulse, the heat where their bodies almost touched. Lucien’s cane leaned forgotten against the table. The first-aid tin stood open beside a heap of bloodied gauze and Eva’s notes on infernal sigils. Somewhere in the flat a tap dripped once, then again. “You’re impossible.” His hand settled at her waist, light enough to refuse. “You’ve never sounded convinced.” “You looked me in the eye and made me feel bought.” “I know.” “That was cruel.” “I know.” She searched his face for the dodge, the sleek turn, the polished escape route. He gave her none. Aurora slid her palm up his chest to his throat. His pulse beat against her fingers, fast and hard. “If I kiss you, you don’t get to disappear in the morning.” Lucien’s breath caught. “If you kiss me, I won’t make it to the door.” “Good.” She kissed him before either of them could dress the moment in something safer. His mouth met hers with a restraint that lasted all of a heartbeat. Then his other hand came to her back, and the kiss deepened, hot and rough-edged and starved. The table knocked against the wall. A stack of Eva’s papers slithered to the floor in a white spill. Aurora’s fingers went into his damp hair and held him there. He made a low sound against her mouth that stripped the room clean. When they broke apart, both of them breathed hard. Lucien rested his forehead against hers, eyes shut, one hand still spread at her waist as if he had found something solid in a city built on bargains. Ptolemy let out a loud, offended yowl from the windowsill. Aurora laughed into the small space between them, and this time nothing in it tasted bitter.
created_at"2026-03-09T16:38:05.009Z" 3/9/2026, 4:38:05 PM
model"openai/gpt-5.4-20260305"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency71531
moderation_latency(null)
generation_time156731
tokens_prompt1034
tokens_completion4200
native_tokens_prompt927
native_tokens_completion5617
native_tokens_completion_images0
native_tokens_reasoning2670
native_tokens_cached0
num_media_prompt(null)
num_input_audio_prompt(null)
num_media_completion0
num_search_results(null)
origin"https://ncbench.com/"
is_byokfalse
finish_reason"stop"
native_finish_reason"completed"
usage0.0865725
router(null)
provider_responses
0
endpoint_id"9ff5625c-403f-4d7f-b895-58ac7295062c"
id"resp_0f15088fb3dfa1680169aef76d20408196923b2e7a5731672e"
is_byokfalse
latency198
model_permaslug"openai/gpt-5.4-20260305"
provider_name"OpenAI"
status200
user_agent"langchainjs-openai/1.0.0 ((node/v24.14.0; linux; x64))"
http_referer(null)
api_type"completions"
id"gen-1773074285-aMWYR9rM8PBRFmNoS3gQ"
upstream_id"resp_0f15088fb3dfa1680169aef76d20408196923b2e7a5731672e"
total_cost0.0865725
cache_discount(null)
upstream_inference_cost0
provider_name"OpenAI"

Evaluation details

Result Evaluator Details Meta Data
100.00% Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags2
adverbTagCount0
adverbTags(empty)
dialogueSentences101
tagDensity0.02
leniency0.04
rawRatio0
effectiveRatio0
97.85% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount2324
totalAiIsmAdverbs1
found
0
adverb"very"
count1
highlights
0"very"
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)
65.58% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount2324
totalAiIsms16
found
0
word"flicker"
count1
1
word"weight"
count2
2
word"comforting"
count1
3
word"warmth"
count2
4
word"silk"
count1
5
word"charm"
count1
6
word"pulse"
count3
7
word"perfect"
count1
8
word"unsettled"
count1
9
word"charged"
count1
10
word"traced"
count1
11
word"tenderness"
count1
highlights
0"flicker"
1"weight"
2"comforting"
3"warmth"
4"silk"
5"charm"
6"pulse"
7"perfect"
8"unsettled"
9"charged"
10"traced"
11"tenderness"
100.00% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches0
maxInWindow0
found(empty)
highlights(empty)
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells1
narrationSentences171
matches
0"d in sympathy"
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount1
hedgeCount1
narrationSentences171
filterMatches
0"look"
hedgeMatches
0"started to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences271
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen41
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords2324
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions12
unquotedAttributions0
matches(empty)
96.40% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions45
wordCount1679
uniqueNames6
maxNameDensity1.07
worstName"Aurora"
maxWindowNameDensity2
worstWindowName"Aurora"
discoveredNames
Lucien13
Moreau1
Eva6
Ptolemy6
Thames1
Aurora18
persons
0"Lucien"
1"Moreau"
2"Eva"
3"Ptolemy"
4"Aurora"
places
0"Thames"
globalScore0.964
windowScore1
100.00% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences115
glossingSentenceCount0
matches(empty)
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches0
per1kWords0
wordCount2324
matches(empty)
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount1
totalSentences271
matches
0"let that pass"
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs185
mean12.56
std15.04
cv1.198
sampleLengths
037
147
25
36
413
53
610
731
828
93
105
1116
1213
136
1410
1562
166
1715
184
194
2010
215
2253
2342
244
258
264
2759
283
299
3016
313
3212
3349
3423
353
369
376
385
395
404
4131
423
4338
446
454
463
4710
4814
494
100.00% Passive voice overuse
Target: ≤2% passive sentences
passiveCount0
totalSentences171
matches(empty)
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount0
totalVerbs267
matches(empty)
100.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount0
semicolonCount0
flaggedSentences0
totalSentences271
ratio0
matches(empty)
100.00% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1138
adjectiveStacks0
stackExamples(empty)
adverbCount34
adverbRatio0.029876977152899824
lyAdverbCount2
lyAdverbRatio0.0017574692442882249
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences271
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences271
mean8.58
std7.26
cv0.846
sampleLengths
037
16
227
39
45
55
66
713
83
910
1014
1117
1228
133
145
157
165
174
1813
196
2010
216
228
238
2440
256
2615
274
284
2910
305
3122
3213
3310
348
3531
3611
374
388
394
4027
419
428
4315
443
459
4616
473
485
495
45.57% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats12
diversityRatio0.26199261992619927
totalSentences271
uniqueOpeners71
100.00% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount6
totalSentences156
matches
0"Then he swayed."
1"Of course he did."
2"Then morning had come, and"
3"Just warmth around the scar."
4"Somewhere in the flat a"
5"Then his other hand came"
ratio0.038
40.51% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount70
totalSentences156
matches
0"It darkened the shoulders of"
1"His mouth twitched, though the"
2"His gloved hand tightened on"
3"She should have shut the"
4"She knew the exact weight"
5"She looked at the blood"
6"He lifted his chin."
7"She slid the chain free"
8"He crossed the threshold with"
9"She shut the door fast"
10"His face had lost none"
11"His cheekbones still looked cut"
12"His mouth still carried that"
13"His jacket felt soaked through."
14"She shoved him towards the"
15"She snapped the tin open."
16"His hand moved to his"
17"She stepped in, slapped his"
18"He watched her with that"
19"His mouth almost curved."
ratio0.449
30.51% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount134
totalSentences156
matches
0"The door opened on the"
1"Rain clung to his slicked-back"
2"It darkened the shoulders of"
3"The other drank it whole."
4"Aurora kept the chain hooked."
5"His mouth twitched, though the"
6"Lucien dipped his head, gaze"
7"His gloved hand tightened on"
8"Rain slid from his cuff."
9"Something darker followed it."
10"Aurora dropped her gaze to"
11"She should have shut the"
12"She knew the exact weight"
13"She looked at the blood"
14"He lifted his chin."
15"She slid the chain free"
16"He crossed the threshold with"
17"Lucien never showed damage unless"
18"She shut the door fast"
19"Metal knocked into place, one"
ratio0.859
32.05% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount1
totalSentences156
matches
0"To the small crescent scar"
ratio0.006
76.92% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences65
technicalSentenceCount6
matches
0"The door opened on the chain first, a narrow slice of dim hallway and wet brick and Lucien Moreau standing under the flicker of the landing light as if the buil…"
1"His mouth still carried that hard, deliberate shape that had haunted her at inconvenient hours."
2"Lucien nudged a stack of notes aside with the tip of his cane and sat with care that cost him."
3"Evan’s face flashed up, then the uglier faces that had come after she slipped into Lucien’s world: creatures with human smiles and butcher’s appetites, men who …"
4"Ptolemy jumped from the microwave to the windowsill and began washing one paw with deep concentration, as if the room had finally grown interesting."
5"Lucien rested his forehead against hers, eyes shut, one hand still spread at her waist as if he had found something solid in a city built on bargains."
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags2
uselessAdditionCount0
matches(empty)
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags1
fancyCount1
fancyTags
0"she muttered (mutter)"
dialogueSentences101
tagDensity0.01
leniency0.02
rawRatio1
effectiveRatio0.02
89.5131%