Run: 2026-09-25-01M3CKHX5C1R7AXAT4N8XFNYAF

Run Details

Duration:
24.8s
Cost:
$0.022663
Provider:
Mistral

Model input

System
You are an expert novelist with a gift for vivid, immersive prose. You write in tight third-person limited point of view with a strong narrative voice. Your prose is clean, precise, and engaging — you favor strong verbs, concrete details, and natural-sounding dialogue. You will be given a story bible (codex) containing canonical details about characters, locations, items, and lore. Use these details to ground your writing in the established world. Stay consistent with the codex. Write only the prose of the scene. Do not include titles, chapter headings, markdown formatting, or any commentary before or after the scene.
User/Human
<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> 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.

Model response

AI
The first knock came just as Rory was wiping flour from her hands, the scent of cardamom and sugar still clinging to her fingers. She froze, the dish towel suspended mid-air. No one ever knocked on Eva’s door without calling first—especially not at this hour, with the streetlights below just beginning to flicker on. Ptolemy, the tabby cat, lifted his head from his perch on the windowsill, ears twitching. The second knock was firmer, deliberate. Rory set the towel down, her pulse quickening. She wasn’t expecting anyone. Eva was still at the library, and Silas would’ve texted if he needed something from the flat. She padded across the cluttered floor, sidestepping a stack of books that had spilled from the coffee table. The three deadbolts gleamed under the dim hallway light as she reached for them, her fingers hesitating on the cold metal. “Who is it?” she called, voice steady despite the unease coiling in her stomach. A beat of silence. Then, smooth and unmistakable: “It’s Lucien.” Her breath hitched. Of all the names she’d expected to hear, his wasn’t one of them. Not after the way they’d left things. Not after the months of radio silence. She unlatched the first bolt, then the second, her movements slow, as if delaying the inevitable. The third lock clicked open, and she pulled the door inward just enough to see him. Lucien Moreau stood in the hallway, impeccable as ever in a charcoal suit that seemed to drink in the dim light. His platinum hair was slicked back, not a strand out of place, and his heterochromatic eyes—one amber, one black—fixed on her with an intensity that made her skin prickle. He leaned slightly on his ivory-handled cane, the picture of effortless elegance, even here, in the shabby corridor of a building that smelled faintly of curry and old paper. “Rory,” he said, as if her name were a secret he’d been keeping. She should’ve slammed the door. Should’ve told him to leave, to call first, to never show up unannounced like this. But the words stuck in her throat. Instead, she stepped back, pressing a hand to the door to keep it open. “You’re here,” she said, stupidly. A faint smirk tugged at the corner of his mouth. “Observant as ever.” She exhaled through her nose, gripping the edge of the door. “What do you want?” His smirk faded, replaced by something more unreadable. “Can I come in?” Rory hesitated. The last time she’d seen him, they’d been in a dimly lit bar in Soho, his voice low and urgent as he’d warned her about the dangers of digging into certain corners of London’s underworld. She’d been reckless then, fueled by anger and the need to prove something—to him, to herself. And he’d walked away when she refused to listen. Now, here he was, as if no time had passed at all. She stepped aside, gesturing him in with a sharp wave of her hand. “Five minutes.” Lucien inclined his head, stepping over the threshold with the grace of a man who knew exactly how much space he took up. Ptolemy, ever the judge of character, hissed from his perch and slunk into the shadows of the bedroom. Lucien ignored the cat, his gaze sweeping over the flat—the books piled on every surface, the half-baked tray of pastries cooling on the counter, the faint smear of flour on Rory’s cheek. “You’ve been baking,” he observed. “And you’ve been missing,” she shot back, crossing her arms. He didn’t flinch. “I had business to attend to.” “In Marseille?” “Among other places.” Rory clenched her jaw. Typical. Vague, evasive, infuriating. She turned away from him, marching into the tiny kitchen to busy her hands with something—anything—to keep from looking at him. “Well, your business must be very important if it kept you from so much as a text.” “You know how it is.” “No,” she said, spinning back to face him. “I don’t. Because I don’t disappear for months without a word.” Lucien’s expression darkened, just for a second, before smoothing back into neutrality. “I’m here now.” “Yes,” she said, voice dripping with sarcasm. “And I’m supposed to be grateful?” He sighed, shifting his weight onto his cane. “I didn’t come here to fight, Rory.” “Then why *did* you come?” She threw her hands up, flour dusting the air between them. “Because it’s been *months*, Luc. Months. And now you just—what, decided to drop by for old times’ sake?” His jaw tightened. “I came because I heard about Evan.” The name hit her like a physical blow. She staggered back a step, her fingers gripping the edge of the counter. “What about him?” Lucien’s gaze was unrelenting. “He’s in London.” Rory’s stomach twisted. Evan. Her ex. The man who’d made her life a living hell for the better part of a year before she’d finally found the strength to leave. The man she’d fled Cardiff to escape. She swallowed hard, forcing her voice steady. “How do you know this?” “I have my sources.” “Of course you do.” She turned away again, her fingers digging into the countertop. “And what, you thought you’d come warn me? Play the hero?” “I thought you’d want to know.” She whirled back to face him, her pulse hammering in her ears. “Or maybe you just wanted an excuse to see me.” Lucien’s eyes flashed, the black one seeming to darken further. “This isn’t a game, Rory.” “No,” she snapped. “It’s not. So why now? Why warn me *now* when you couldn’t be bothered to check in for months?” He was silent for a long moment, the air between them thick with everything unsaid. Then, quietly: “I was giving you space.” “Space?” She let out a bitter laugh. “That’s rich. You don’t get to decide when I need space, Luc. You don’t get to disappear and then waltz back in here like nothing happened.” “I know.” The words were simple, but they cut through her anger like a blade. She faltered, her chest heaving as she stared at him. He looked the same—impeccable, untouchable—but there was something in his eyes now, a flicker of something raw. Regret, maybe. Or guilt. She hated that it affected her. “You know,” she repeated, voice softer now, the fight draining out of her. “Do you? Do you have any idea what it was like, Luc? To have you just—gone? After everything?” His grip tightened on the cane. “I thought it was what you wanted.” “You *thought*?” She shook her head, a hollow laugh escaping her. “Since when do you assume what I want instead of asking?” Lucien’s free hand flexed at his side, as if he wanted to reach for her but thought better of it. “I made a mistake.” The admission hung between them, heavy and fragile. Rory’s throat tightened. She wanted to stay angry, to hold onto the bitterness that had festered in his absence. But the way he was looking at her now—like she was the only thing in the room worth seeing—made it hard to remember why she’d been so furious in the first place. She exhaled sharply, rubbing her temples. “You’re impossible.” “And yet, here you are, still talking to me.” She groaned, but there was no real heat in it. “Fine. You’re here. You’ve warned me. Now what?” Lucien took a step closer, his polished shoes silent on the worn floorboards. “Now, I make sure you’re safe.” Rory’s breath caught. “I can take care of myself.” “I know.” Another step. “But you don’t have to.” She should’ve told him to leave. Should’ve reminded him that she didn’t need his protection, that she’d been doing just fine without him. But the truth was, she *hadn’t* been fine. Not really. Not when the nights were long and the flat felt too quiet, not when she jumped at shadows that reminded her of Evan’s lingering presence in her life. And now, with Lucien standing here, close enough that she could see the faint stubble shadowing his jaw, close enough that she could catch the scent of his cologne—something dark and spiced, like cloves and old leather—she realized how much she’d missed him. “Luc,” she whispered, her voice barely audible. He reached out then, his fingers brushing against her wrist, just above the crescent-shaped scar there. The touch was light, almost hesitant, but it sent a jolt through her all the same. “I shouldn’t have stayed away.” Her skin burned where he touched her. She wanted to pull away, to put distance between them before she did something stupid. But she didn’t. She stood there, frozen, as his thumb traced the old scar, his touch featherlight. “Why now?” she asked again, softer this time. His gaze lifted to meet hers, and for the first time, she saw the cracks in his composure. The half-demon, the fixer, the man who always had a plan—he looked lost. “Because I couldn’t stay away any longer.” The words hung between them, thick with promise. Rory’s heart pounded so loudly she was sure he could hear it. She should’ve pushed him away. Should’ve told him it was too late, that he’d had his chance. But the truth was, she didn’t want to. Not when his hand was warm against her skin, not when his eyes were searching hers like she was the answer to a question he’d been asking for years. She swallowed hard. “And what if I don’t want you here?” Lucien’s lips quirked, just slightly. “Then I’ll leave.” She knew he wouldn’t. Not really. Not unless she made him. Rory closed her eyes, her breath shaky. She could lie. Could tell him to go, to leave her alone. But the words wouldn’t come. Instead, she found herself leaning into his touch, just a fraction. “You’re an idiot.” His chuckle was low, rough. “So I’ve been told.” She opened her eyes, meeting his gaze. “Evan’s not your problem.” “No,” he agreed. “But *you* are.” The air between them crackled, charged with something electric. Rory’s pulse raced, her body hyper-aware of his proximity. She could see the flecks of gold in his amber eye, the way his dark eye seemed to pull her in, endless. She could feel the heat radiating off him, the solid presence of him so close. She should’ve stepped back. Should’ve put an end to this before it went any further. But she didn’t. Instead, she reached up, her fingers curling into the lapel of his suit. “Luc,” she breathed, her voice barely a whisper. He didn’t move, didn’t speak. Just watched her, his breath shallow, as if he were afraid to break the moment. Rory’s heart hammered against her ribs. She could feel the weight of the past between them—the arguments, the silence, the things they’d never said. But beneath it all, there was something else. Something that had always been there, no matter how hard she’d tried to ignore it. She tugged him closer, her voice steady despite the storm inside her. “If you’re here, then be here. No more disappearing. No more secrets.” Lucien’s hand slid from her wrist to her waist, his grip firm, possessive. “No more disappearing,” he echoed. And then, finally, he kissed her. It wasn’t gentle. wasn’t hesitant. It was the kind of kiss that felt like a promise, like a vow. His lips were warm against hers, demanding, and she met him just as fiercely, her fingers tangling in the fabric of his suit as she pulled him closer. The cane clattered to the floor, forgotten, and his arms wrapped around her, lifting her as if she weighed nothing. Rory’s back hit the wall, the impact knocking the breath from her lungs. Lucien’s body pressed against hers, his hands cradling her face as the kiss deepened. She could taste the faint bitterness of coffee on his tongue, could feel the heat of him seeping through her clothes. It was overwhelming, intoxicating—the way he kissed her like she was the only thing that mattered. When they finally broke apart, their foreheads rested together, their breaths mingling. Lucien’s thumb traced her bottom lip, his voice rough. “I’ve missed you.” Rory’s eyes burned. She wanted to be angry, wanted to hold onto the hurt. But how could she, when he was looking at her like this? Like she was his whole world. She swallowed hard, her voice barely a whisper. “Don’t leave again.” He pressed his lips to her forehead, his breath warm against her skin. “Never.” And for the first time in months, Rory believed him.
created_at"2026-09-25T15:39:43.669Z" 9/25/2026, 3:39:43 PM
model"mistralai/mistral-medium-3.5-20260430"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency460
moderation_latency(null)
generation_time24739
tokens_prompt788
tokens_completion3217
native_tokens_prompt784
native_tokens_completion2865
native_tokens_completion_images(null)
native_tokens_reasoning0
native_tokens_cached0
num_media_prompt(null)
num_input_audio_prompt(null)
num_media_completion0
num_search_results(null)
num_fetches(null)
web_search_engine(null)
origin"https://ncbench.com/"
is_byokfalse
finish_reason"stop"
native_finish_reason"stop"
service_tier"default"
usage0.0226635
router(null)
user_agent"langchainjs-openai/1.0.0 ((node/v24.21.0; linux; x64))"
http_referer(null)
request_id"req-1790350783-C78D8Q3Y94xRUt9swwzO"
session_id(null)
preset_id(null)
api_type"completions"
id"gen-1790350783-iioV0ULiyusWhNX2esWi"
upstream_id"f4ba242ff6584ccab01861873b24ae4b"
provider_responses
0
endpoint_id"d21d316f-d540-4718-b36e-3beff85d0cf9"
id"f4ba242ff6584ccab01861873b24ae4b"
is_byokfalse
latency459
model_permaslug"mistralai/mistral-medium-3.5-20260430"
provider_name"Mistral"
status200
total_cost0.0226635
cache_discount(null)
upstream_inference_cost0
provider_name"Mistral"
response_cache_source_id(null)
data_region"global"
workspace_id"97e315e5-d303-487d-83c1-83180e8a13d4"

Evaluation details

Result Evaluator Details Meta Data
100.00% Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags18
adverbTagCount2
adverbTags
0"She turned away [away]"
1"she asked again [again]"
dialogueSentences69
tagDensity0.261
leniency0.522
rawRatio0.111
effectiveRatio0.058
85.75% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount2106
totalAiIsmAdverbs6
found
0
adverb"slightly"
count2
1
adverb"very"
count1
2
adverb"sharply"
count1
3
adverb"really"
count2
highlights
0"slightly"
1"very"
2"sharply"
3"really"
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)
38.27% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount2106
totalAiIsms26
found
0
word"flicker"
count2
1
word"pulse"
count3
2
word"stomach"
count2
3
word"silence"
count3
4
word"intensity"
count1
5
word"effortless"
count1
6
word"unreadable"
count1
7
word"weight"
count2
8
word"traced"
count2
9
word"charged"
count1
10
word"electric"
count1
11
word"raced"
count1
12
word"could feel"
count3
13
word"whisper"
count2
14
word"echoed"
count1
highlights
0"flicker"
1"pulse"
2"stomach"
3"silence"
4"intensity"
5"effortless"
6"unreadable"
7"weight"
8"traced"
9"charged"
10"electric"
11"raced"
12"could feel"
13"whisper"
14"echoed"
66.67% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches2
maxInWindow2
found
0
label"clenched jaw/fists"
count1
1
label"sent a shiver through"
count1
highlights
0"clenched her jaw"
1"sent a jolt through"
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells0
narrationSentences160
matches(empty)
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount0
hedgeCount3
narrationSentences160
filterMatches(empty)
hedgeMatches
0"seemed to"
1"tried to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences208
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
repeatedSegmentCount0
maxSentenceWordsSeen45
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans6
markdownWords6
totalWords2089
ratio0.003
matches
0"did"
1"months"
2"now"
3"thought"
4"hadn’t"
5"you"
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions26
unquotedAttributions0
matches(empty)
100.00% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions41
wordCount1718
uniqueNames10
maxNameDensity0.87
worstName"Rory"
maxWindowNameDensity2
worstWindowName"Lucien"
discoveredNames
Rory15
Eva2
Silas1
Moreau1
Soho1
London1
Lucien13
Cardiff1
Evan2
Should4
persons
0"Rory"
1"Eva"
2"Silas"
3"Moreau"
4"Lucien"
5"Evan"
6"Should"
places
0"Soho"
1"London"
2"Cardiff"
globalScore1
windowScore1
85.90% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences117
glossingSentenceCount3
matches
0"as if delaying the inevitable"
1"suit that seemed to drink in the dim light"
2"felt like a promise, like a vow"
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches0
per1kWords0
wordCount2089
matches(empty)
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount1
totalSentences208
matches
0"hated that it"
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs81
mean25.79
std22.49
cv0.872
sampleLengths
069
174
214
310
462
579
613
746
813
915
1012
1174
1215
1373
145
1510
169
172
183
1946
205
2119
2215
2313
2415
2534
2610
2724
287
2949
304
3125
326
3322
3415
3522
3622
3733
382
3944
406
4131
4213
4322
4424
4559
468
479
4818
4919
100.00% Passive voice overuse
Target: ≤2% passive sentences
passiveCount1
totalSentences160
matches
0"was slicked"
93.16% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount5
totalVerbs312
matches
0"was wiping"
1"wasn’t expecting"
2"was looking"
3"were searching"
4"was looking"
0.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount16
semicolonCount0
flaggedSentences11
totalSentences208
ratio0.053
matches
0"No one ever knocked on Eva’s door without calling first—especially not at this hour, with the streetlights below just beginning to flicker on."
1"His platinum hair was slicked back, not a strand out of place, and his heterochromatic eyes—one amber, one black—fixed on her with an intensity that made her skin prickle."
2"She’d been reckless then, fueled by anger and the need to prove something—to him, to herself."
3"Lucien ignored the cat, his gaze sweeping over the flat—the books piled on every surface, the half-baked tray of pastries cooling on the counter, the faint smear of flour on Rory’s cheek."
4"She turned away from him, marching into the tiny kitchen to busy her hands with something—anything—to keep from looking at him."
5"He looked the same—impeccable, untouchable—but there was something in his eyes now, a flicker of something raw."
6"But the way he was looking at her now—like she was the only thing in the room worth seeing—made it hard to remember why she’d been so furious in the first place."
7"And now, with Lucien standing here, close enough that she could see the faint stubble shadowing his jaw, close enough that she could catch the scent of his cologne—something dark and spiced, like cloves and old leather—she realized how much she’d missed him."
8"The half-demon, the fixer, the man who always had a plan—he looked lost."
9"She could feel the weight of the past between them—the arguments, the silence, the things they’d never said."
10"It was overwhelming, intoxicating—the way he kissed her like she was the only thing that mattered."
95.75% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1739
adjectiveStacks0
stackExamples(empty)
adverbCount78
adverbRatio0.044853364002300174
lyAdverbCount21
lyAdverbRatio0.012075905692926969
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences208
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences208
mean10.04
std7.29
cv0.726
sampleLengths
024
17
223
315
46
58
64
717
818
921
1014
114
126
133
1413
157
167
1716
1816
1921
2029
2129
2213
235
2415
257
2614
275
2810
293
3011
314
328
334
342
3535
3616
379
3812
3913
402
4123
4218
4332
445
4510
463
476
482
493
46.63% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats7
diversityRatio0.2692307692307692
totalSentences208
uniqueOpeners56
100.00% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount5
totalSentences145
matches
0"Then, smooth and unmistakable:"
1"Instead, she stepped back, pressing"
2"Instead, she found herself leaning"
3"Instead, she reached up, her"
4"Just watched her, his breath"
ratio0.034
35.17% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount67
totalSentences145
matches
0"She froze, the dish towel"
1"She wasn’t expecting anyone."
2"She padded across the cluttered"
3"she called, voice steady despite"
4"Her breath hitched."
5"She unlatched the first bolt,"
6"His platinum hair was slicked"
7"He leaned slightly on his"
8"he said, as if her"
9"She should’ve slammed the door."
10"she said, stupidly"
11"She exhaled through her nose,"
12"His smirk faded, replaced by"
13"She’d been reckless then, fueled"
14"She stepped aside, gesturing him"
15"she shot back, crossing her"
16"He didn’t flinch."
17"She turned away from him,"
18"she said, spinning back to"
19"she said, voice dripping with"
ratio0.462
77.24% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount111
totalSentences145
matches
0"The first knock came just"
1"She froze, the dish towel"
2"Ptolemy, the tabby cat, lifted"
3"The second knock was firmer,"
4"Rory set the towel down,"
5"She wasn’t expecting anyone."
6"Eva was still at the"
7"She padded across the cluttered"
8"The three deadbolts gleamed under"
9"she called, voice steady despite"
10"A beat of silence."
11"Her breath hitched."
12"She unlatched the first bolt,"
13"The third lock clicked open,"
14"Lucien Moreau stood in the"
15"His platinum hair was slicked"
16"He leaned slightly on his"
17"he said, as if her"
18"She should’ve slammed the door."
19"she said, stupidly"
ratio0.766
34.48% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount1
totalSentences145
matches
0"Now, here he was, as"
ratio0.007
100.00% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences73
technicalSentenceCount4
matches
0"She padded across the cluttered floor, sidestepping a stack of books that had spilled from the coffee table."
1"She unlatched the first bolt, then the second, her movements slow, as if delaying the inevitable."
2"His platinum hair was slicked back, not a strand out of place, and his heterochromatic eyes—one amber, one black—fixed on her with an intensity that made her sk…"
3"Not when the nights were long and the flat felt too quiet, not when she jumped at shadows that reminded her of Evan’s lingering presence in her life."
0.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags18
uselessAdditionCount10
matches
0"she called, voice steady despite the unease coiling in her stomach"
1"he said, as if her name were a secret he’d been keeping"
2"she said, stupidly"
3"she said, voice dripping with sarcasm"
4"She threw, flour dusting the air between them"
5"She turned away, her fingers digging into the countertop"
6"she repeated, voice softer now, the fight draining out of her"
7"She shook, a hollow laugh escaping her"
8"she whispered, her voice barely audible"
9"she breathed, her voice barely a whisper"
63.04% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags12
fancyCount6
fancyTags
0"he observed (observe)"
1"she snapped (snap)"
2"she repeated (repeat)"
3"she whispered (whisper)"
4"he agreed (agree)"
5"she breathed (breathe)"
dialogueSentences69
tagDensity0.174
leniency0.348
rawRatio0.5
effectiveRatio0.174
80.7360%