Run: 2026-03-12-01KKHYTCH2WGDA31YCMX74CG3V

Run Details

Duration:
18.5s
Cost:
$0.022241
Provider:
xAI

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 deadbolts clacked one after another. Aurora stood in the narrow hallway, her delivery bag still slung over one shoulder, the scent of lukewarm Singapore noodles clinging to her jacket. She had expected Eva, maybe a terse complaint about the extra chilli oil. Instead the door swung inward and Lucien Moreau filled the frame. He looked exactly as she remembered, which made her stomach twist. Charcoal suit immaculate, platinum hair swept back from his forehead, that ridiculous ivory-handled cane hooked over two fingers. His mismatched eyes—one amber, one black—widened a fraction before the mask of cool amusement slid back into place. “Rory,” he said, voice low and accented, the way it always curled around her name like smoke. “You’re not Eva.” “No shit.” She kept her tone flat, but her pulse hammered against the small crescent scar on her wrist. “What the hell are you doing here?” Lucien stepped aside without invitation, revealing the chaos of Eva’s flat behind him. Ptolemy the tabby cat wound between his polished shoes, purring like a traitor. Books and scrolls covered every surface, some pinned to the walls with colourful thumbtacks. The air smelled of old paper, incense, and the faint brimstone that always clung to Lucien no matter how much cologne he wore. “Eva required certain documents,” he said, gesturing vaguely toward the kitchen table buried under parchment. “She failed to mention you might be delivering dinner.” Aurora pushed past him, shoulder brushing the lapel of his suit. The contact sent an unwelcome spark down her arm. She dropped the takeaway bag on the only clear corner of the counter and turned to face him. “Eva’s not here. She’s at the archive until nine. You can leave the papers and go.” Lucien closed the door with a soft click. The three deadbolts sounded louder this time, each one a small prison lock. He didn’t move toward the exit. Instead he leaned his cane against the wall, rolled his shoulders in a way that made the tailored fabric pull across his chest, and regarded her with that damn half-smile. “Six months,” he murmured. “You look well. London agrees with you.” “Don’t.” The word came out sharper than she intended. Aurora shoved her hands into her jacket pockets to hide the tremor. “Don’t do the charming Frenchman routine. Not here. Not after what you pulled.” His expression didn’t change, but the black eye darkened, pupils swallowing the iris until only a thin ring of obsidian remained. “I told you the truth that night. The whole truth. You chose to walk away.” “You told me half a truth wrapped in pretty lies.” She yanked the delivery bag open, pulling out containers with more force than necessary. Plastic lids cracked. “You conveniently forgot to mention the part where your demon daddy’s debt collectors were using me as leverage. Or that you’d been watching me for weeks before we even met.” Lucien crossed the small room in three strides. He stopped just short of touching her, close enough that she could see the faint scar that bisected his left eyebrow. She hadn’t noticed that before. Hadn’t been given the chance. “I kept you safe,” he said quietly. The accent thickened when he was angry, the Marseilles streets bleeding through the polished vowels. “Every time Evan came looking, every time those things from Avaros sniffed too close to your flat above Silas’ bar. I handled it. Quietly.” Aurora laughed, but the sound held no humour. “You handled it by fucking me and then vanishing every time I asked real questions. That’s not protection, Luc. That’s control.” The nickname slipped out before she could catch it. His nostrils flared. For a moment the air between them crackled, the way it used to in her tiny bedroom when he’d press her against the wall and kiss her like the world was ending. Ptolemy jumped onto the table, knocking over a stack of scrolls. Neither of them looked. “You think I enjoyed lying to you?” Lucien’s hand rose, hovered near her cheek, then dropped. “Every time I touched you I broke another rule. My kind doesn’t get to keep humans, Rory. Not without consequences.” She could feel the heat radiating from him. Half-demon. The thought used to terrify her. Now it only made her furious and something else she refused to name. Aurora stepped back until her hips met the counter. The movement put necessary distance between them, but his scent followed—sandalwood, smoke, and something electric. “Then why are you here?” she demanded. “Really. Eva could’ve met you anywhere. Why her flat? Why tonight?” Lucien’s jaw tightened. He reached inside his suit jacket and withdrew a folded piece of paper, edges singed black. When he opened it, she recognized her own handwriting. The note she’d left on his pillow six months ago, the one that simply read *Don’t follow me.* “I kept this,” he said. “Carried it like a fool. Then Eva called yesterday saying your name had surfaced in certain circles again. Evan’s been asking questions in the wrong places. Places that attract attention from Avaros.” The floor seemed to tilt. Aurora gripped the counter edge, knuckles whitening. “Evan’s in prison.” “Was.” Lucien’s voice had gone flat, dangerous. “Released two weeks ago on a technicality. Someone pulled strings. Not me.” She searched his face for deception, the way she’d learned to do during their brief, explosive time together. The heterochromatic eyes held steady. No flicker. No tell. “Why tell me this now?” Her voice came out smaller than she wanted. “Why not just handle it like you always do?” “Because you deserve to know.” He moved closer again, slowly, giving her time to retreat. She didn’t. “And because I’m tired of pretending I don’t think about you every damn night. The way you’d fall asleep with your head on my chest. The way you’d trace this scar—” His fingers brushed her left wrist, feather-light over the crescent mark. She shivered. “—and ask me to tell you stories about Marseille.” Aurora’s breath hitched. His touch burned, but she couldn’t pull away. Six months of carefully constructed walls crumbled under the weight of his gaze. She remembered the last night they’d spent together, how he’d kissed her like a man drowning, how she’d woken to an empty bed and the realisation that everything between them had been built on half-truths. “I hated you,” she whispered. “I know.” “I still do, a little.” His lips curved, not quite a smile. “Also fair.” The flat felt smaller than ever. Ptolemy watched them from the table, yellow eyes unblinking. Outside, Brick Lane hummed with evening traffic and the distant calls of curry house touts. Inside, the air grew thick with everything they hadn’t said. Lucien’s hand slid from her wrist to her fingers, intertwining them. The contrast of his pale skin against her warmer tones made her chest ache. “Give me one hour,” he said. “Let me show you the parts I couldn’t before. No secrets. Then if you want me to leave, I’ll go. For good.” Aurora studied their joined hands. His knuckles bore faint scars she didn’t recognize. New stories. New pain. The part of her that had fled Cardiff, that had run from Evan and then from Lucien, screamed at her to throw him out. The other part—the one that had stayed up too many nights replaying his laugh, his accent wrapping around filthy French phrases in the dark—pulled her closer. She tugged him toward the battered sofa buried under research notes. Scrolls scattered to the floor. “One hour,” she agreed, voice rough. “But if you lie to me again, I swear I’ll let Eva hex you into next week.” Lucien’s laugh was soft, relieved. He followed her down onto the cushions, cane abandoned by the door, suit jacket already being pushed from his shoulders. “Fair enough, mon coeur.” The first kiss tasted like six months of regret and want. Aurora grabbed fistfuls of his shirt, yanking him closer as his mouth moved against hers with devastating familiarity. He still kissed like he was trying to memorize her, like tomorrow might steal her away again. She bit his lower lip in retaliation and felt him smile against her mouth. When they broke apart, both breathing hard, Lucien rested his forehead against hers. His platinum hair had fallen forward, brushing her cheek. “I missed this,” he murmured. “Missed you swearing at me in that lovely Welsh accent you pretend not to have.” “Shut up.” But the words lacked heat. Her fingers worked at his tie, loosening the silk until it hung crooked. “You talk too much for a fixer.” “Only with you.” His hands found her waist, sliding under her jacket to the warm skin beneath her shirt. The touch sent sparks racing across her nerves. “Everyone else gets the polished version. You get the mess.” Aurora pushed him back until he lay sprawled beneath her, heterochromatic eyes gleaming in the lamplight. She straddled his hips, feeling the hard line of him through their clothes, and something fierce and possessive bloomed in her chest. This dangerous, beautiful man had come back. Had chosen honesty over easy disappearance. She traced the line of his jaw, feeling the slight stubble there. “Show me, then. All of it.” Lucien’s hands tightened on her hips. His black eye swirled with something that looked like fire. “Everything,” he promised, voice dropping to that register that always made her toes curl. “Starting with how I never stopped loving you, even when you hated me.” The words landed like a strike to her ribs. Aurora froze, searching his face. No deception. Just raw, unguarded truth. “Luc...” He surged up, capturing her mouth again, one hand tangling in her straight black hair. The kiss turned hungry, desperate. She rocked against him, drawing a groan from deep in his throat that vibrated through her bones. Clothes became an inconvenience. His suit jacket hit the floor. Her delivery jacket followed. Buttons scattered as she yanked his shirt open, revealing the lean muscle beneath, the strange markings across his collarbone that glowed faintly amber when he was aroused. Aurora ran her fingers over them, fascinated as always by the otherness of him. Lucien’s breath stuttered. “Sensitive,” he managed, hips jerking up involuntarily. “Good.” She leaned down, pressing her lips to the marks. His resulting curse in rapid French made her smile against his skin. They moved together with the ease of remembered lovers and the urgency of new beginnings. Lucien sat up, taking her with him, mouth finding the spot beneath her ear that always made her gasp. His hands worked her shirt up and off, revealing the simple black bra beneath. He traced the line of her scar again, reverent. “Beautiful,” he whispered against her throat. “Every mark. Every story.” Aurora arched into his touch, fingers digging into his shoulders. The flat had grown warmer, the air thick with the scent of them. Ptolemy had wisely retreated to the bedroom, leaving them to their complicated reunion. She pushed him back down, grinding slowly against the growing hardness beneath her. Lucien’s head fell back against the sofa cushions, exposing the strong column of his throat. The sight made something primal uncoil inside her. “Tell me what you want,” she said, echoing words he’d once used on her in the dark of her flat above Silas’ bar. His mismatched eyes opened, locking onto hers with an intensity that stole her breath. “You,” he answered simply. “However you’ll have me. For as long as you’ll keep me.” The honesty in his voice cracked the last of her defences. Aurora leaned down, kissing him soft and slow this time, pouring six months of hurt and longing into the press of lips and tongue. When she pulled back, her bright blue eyes were wet. “Don’t disappear again,” she whispered. A demand and a plea all at once. “Never.” His hands smoothed up her bare back, unhooking her bra with practiced ease. “Not even if you try to run. I’ll just follow. Slower this time. With better explanations.” She laughed, the sound watery but genuine. “You’re still an asshole.” “Your asshole.” The words rumbled against her skin as he kissed his way down her neck, across her collarbone. “If you’ll have me.” Aurora threaded her fingers through his platinum hair, tugging until he looked at her again. The vulnerability in his expression nearly undid her. This man who commanded respect in London’s supernatural underworld, who spoke four languages and carried a sword in his cane, was looking at her like she held his entire world in her hands. “I’m still angry,” she warned. “I know.” “We’re going to fight about this. A lot.” “Probably.” She rolled her hips again, drawing another groan from him. “But I missed you too. More than I wanted to admit.” Lucien’s hands slid down to cup her arse, pulling her tighter against him. “Then show me, mon amour. Show me how much.” The hour stretched. They took their time, rediscovering every inch of each other with new honesty layered over old passion. Lucien told her about the nights he’d watched her deliveries from the shadows, making sure Evan never got close. She confessed how many times she’d almost called him, standing in the rain outside Silas’ bar with her phone in her hand. Between words came touches, kisses, the slide of skin on skin. The sofa proved too small for what they wanted, so they moved to the floor, cushioned by scattered scrolls and Eva’s forgotten research. Lucien’s cane lay forgotten by the door. His tailored trousers joined the growing pile of clothes. When he finally entered her, slow and deep, Aurora’s back arched off the threadbare rug. She clutched at his shoulders, nails digging crescents into his skin to match the one on her wrist. Their eyes locked—bright blue and mismatched amber-black—as they moved together in a rhythm that felt both brand new and achingly familiar. “Rory,” he breathed against her mouth. Not a question. Just her name, like a prayer. She wrapped her legs around his waist, taking him deeper. The flat filled with the sounds of them—the soft gasps, the whispered French curses, the way his name broke from her lips when pleasure crested sharp and sudden. After, they lay tangled together on the floor, her head on his chest, his fingers tracing lazy patterns along her spine. Ptolemy returned, curling up against Lucien’s side with a contented chirp. The cat’s purring vibrated through both of them. Aurora listened to the steady beat of his heart, wondering which part was demon and which was human. It didn’t matter anymore. Not really. “The documents,” she said eventually, breaking the comfortable silence. “For Eva. What are they?” Lucien’s fingers stilled, then resumed their gentle exploration. “Wards. Strong ones. To keep things from Avaros away from you. I was going to leave them here, let Eva explain. But now...” “Now you can explain them yourself.” She propped her chin on his chest, looking up at him. His hair was thoroughly mussed, lips swollen from her kisses. He looked devastatingly human in that moment. “Oui.” His smile was small but real. “Starting with the ones that require my blood to activate. A permanent connection. If you’ll allow it.” Aurora traced the line of his jaw. “No more secrets.” “None.” She kissed him again, soft and lingering. The takeaway containers had gone cold on the counter. Eva would be home soon. Questions would need answers. But for now, in the cluttered sanctuary of her friend’s flat, Aurora Carter let herself believe in second chances with the half-demon who had once broken her heart. Lucien’s arms tightened around her, his cane’s ivory handle glinting in the lamplight. Outside, London continued its chaotic dance. Inside, two complicated people began the slow work of stitching their history back together, one honest touch at a time. The deadbolts on Eva’s door remained unlocked, waiting for whatever came next.
created_at"2026-03-12T21:21:38.854Z" 3/12/2026, 9:21:38 PM
model"x-ai/grok-4.20-beta-20260309"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency501
moderation_latency(null)
generation_time18391
tokens_prompt1034
tokens_completion4260
native_tokens_prompt1017
native_tokens_completion3387
native_tokens_completion_images0
native_tokens_reasoning0
native_tokens_cached64
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.0222408
router(null)
provider_responses
0
endpoint_id"33f49f24-a0de-4dcf-872d-ca514e83fbae"
id"eb38f713-f53b-a77b-f336-c6cdd74975fb"
is_byokfalse
latency501
model_permaslug"x-ai/grok-4.20-beta-20260309"
provider_name"xAI"
status200
user_agent"langchainjs-openai/1.0.0 ((node/v24.14.0; linux; x64))"
http_referer(null)
api_type"completions"
id"gen-1773350498-3Fqoct6yQfgKa9ByeS1h"
upstream_id"eb38f713-f53b-a77b-f336-c6cdd74975fb"
total_cost0.0222408
cache_discount0.0001152
upstream_inference_cost0
provider_name"xAI"

Evaluation details

Result Evaluator Details Meta Data
100.00% Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags34
adverbTagCount3
adverbTags
0"he said quietly [quietly]"
1"he answered simply [simply]"
2"she said eventually [eventually]"
dialogueSentences78
tagDensity0.436
leniency0.872
rawRatio0.088
effectiveRatio0.077
90.62% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount2664
totalAiIsmAdverbs5
found
0
adverb"really"
count2
1
adverb"slowly"
count2
2
adverb"carefully"
count1
highlights
0"really"
1"slowly"
2"carefully"
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)
49.32% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount2664
totalAiIsms27
found
0
word"stomach"
count1
1
word"pulse"
count1
2
word"eyebrow"
count1
3
word"could feel"
count1
4
word"electric"
count1
5
word"flicker"
count1
6
word"constructed"
count1
7
word"weight"
count1
8
word"silk"
count1
9
word"racing"
count1
10
word"gleaming"
count1
11
word"traced"
count3
12
word"vibrated"
count2
13
word"echoing"
count1
14
word"intensity"
count1
15
word"practiced ease"
count1
16
word"familiar"
count1
17
word"tracing"
count1
18
word"comfortable"
count1
19
word"silence"
count1
20
word"sanctuary"
count1
21
word"glinting"
count1
22
word"chaotic"
count1
23
word"dance"
count1
highlights
0"stomach"
1"pulse"
2"eyebrow"
3"could feel"
4"electric"
5"flicker"
6"constructed"
7"weight"
8"silk"
9"racing"
10"gleaming"
11"traced"
12"vibrated"
13"echoing"
14"intensity"
15"practiced ease"
16"familiar"
17"tracing"
18"comfortable"
19"silence"
20"sanctuary"
21"glinting"
22"chaotic"
23"dance"
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
narrationSentences189
matches
0"was angry"
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount0
hedgeCount1
narrationSentences189
filterMatches(empty)
hedgeMatches
0"seemed to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences233
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen43
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans1
markdownWords3
totalWords2657
ratio0.001
matches
0"Don’t follow me."
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions44
unquotedAttributions1
matches
0"Outside, London continued its chaotic dance."
96.50% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions66
wordCount2056
uniqueNames15
maxNameDensity1.07
worstName"Lucien"
maxWindowNameDensity2
worstWindowName"Lucien"
discoveredNames
Singapore1
Eva5
Lucien22
Moreau1
Aurora19
Plastic1
Marseilles1
Brick1
Lane1
Cardiff1
Evan2
French3
London2
Carter1
Ptolemy5
persons
0"Eva"
1"Lucien"
2"Moreau"
3"Aurora"
4"Evan"
5"French"
6"Carter"
7"Ptolemy"
places
0"Singapore"
1"Brick"
2"Lane"
3"Cardiff"
4"London"
globalScore0.965
windowScore1
97.55% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences143
glossingSentenceCount3
matches
0"not quite a smile"
1"tasted like six months of regret and want"
2"looked like fire"
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches0
per1kWords0
wordCount2657
matches(empty)
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount0
totalSentences233
matches(empty)
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs84
mean31.63
std18.9
cv0.598
sampleLengths
054
147
220
326
463
524
638
716
857
911
1034
1136
1257
1339
1446
1529
1659
1736
1852
1918
2046
2137
2215
2319
2427
2522
2670
2759
285
292
305
319
3240
3353
3467
3539
3629
3760
3842
3927
4037
4151
4218
4343
4420
451
4678
4717
487
4922
97.84% Passive voice overuse
Target: ≤2% passive sentences
passiveCount4
totalSentences189
matches
0"been given"
1"been built"
2"being pushed"
3"was aroused"
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount3
totalVerbs370
matches
0"was ending"
1"was trying"
2"was looking"
81.55% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount7
semicolonCount0
flaggedSentences5
totalSentences233
ratio0.021
matches
0"His mismatched eyes—one amber, one black—widened a fraction before the mask of cool amusement slid back into place."
1"The movement put necessary distance between them, but his scent followed—sandalwood, smoke, and something electric."
2"The other part—the one that had stayed up too many nights replaying his laugh, his accent wrapping around filthy French phrases in the dark—pulled her closer."
3"Their eyes locked—bright blue and mismatched amber-black—as they moved together in a rhythm that felt both brand new and achingly familiar."
4"The flat filled with the sounds of them—the soft gasps, the whispered French curses, the way his name broke from her lips when pleasure crested sharp and sudden."
94.00% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1538
adjectiveStacks1
stackExamples
0"ridiculous ivory-handled cane"
adverbCount60
adverbRatio0.03901170351105332
lyAdverbCount13
lyAdverbRatio0.008452535760728219
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences233
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences233
mean11.4
std7.34
cv0.643
sampleLengths
06
124
213
311
411
518
618
717
83
919
107
1113
1213
1314
1423
1515
169
1711
189
1918
2016
218
2213
236
2430
254
267
279
2812
2913
3021
3115
3224
333
3430
358
3621
375
385
397
4015
4124
428
4321
449
453
4632
4711
484
4916
54.22% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats7
diversityRatio0.34334763948497854
totalSentences233
uniqueOpeners80
77.52% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount4
totalSentences172
matches
0"Instead the door swung inward"
1"Instead he leaned his cane"
2"Just raw, unguarded truth."
3"Just her name, like a"
ratio0.023
61.86% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount68
totalSentences172
matches
0"She had expected Eva, maybe"
1"He looked exactly as she"
2"His mismatched eyes—one amber, one"
3"he said, voice low and"
4"She kept her tone flat,"
5"he said, gesturing vaguely toward"
6"She dropped the takeaway bag"
7"He didn’t move toward the"
8"His expression didn’t change, but"
9"She yanked the delivery bag"
10"He stopped just short of"
11"She hadn’t noticed that before."
12"he said quietly"
13"His nostrils flared."
14"She could feel the heat"
15"He reached inside his suit"
16"She searched his face for"
17"Her voice came out smaller"
18"He moved closer again, slowly,"
19"His fingers brushed her left"
ratio0.395
26.86% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount149
totalSentences172
matches
0"The deadbolts clacked one after"
1"Aurora stood in the narrow"
2"She had expected Eva, maybe"
3"He looked exactly as she"
4"Charcoal suit immaculate, platinum hair"
5"His mismatched eyes—one amber, one"
6"he said, voice low and"
7"She kept her tone flat,"
8"Lucien stepped aside without invitation,"
9"Ptolemy the tabby cat wound"
10"Books and scrolls covered every"
11"The air smelled of old"
12"he said, gesturing vaguely toward"
13"Aurora pushed past him, shoulder"
14"The contact sent an unwelcome"
15"She dropped the takeaway bag"
16"Lucien closed the door with"
17"The three deadbolts sounded louder"
18"He didn’t move toward the"
19"The word came out sharper"
ratio0.866
29.07% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount1
totalSentences172
matches
0"Now it only made her"
ratio0.006
91.22% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences83
technicalSentenceCount6
matches
0"Instead he leaned his cane against the wall, rolled his shoulders in a way that made the tailored fabric pull across his chest, and regarded her with that damn …"
1"Buttons scattered as she yanked his shirt open, revealing the lean muscle beneath, the strange markings across his collarbone that glowed faintly amber when he …"
2"His mismatched eyes opened, locking onto hers with an intensity that stole her breath."
3"This man who commanded respect in London’s supernatural underworld, who spoke four languages and carried a sword in his cane, was looking at her like she held h…"
4"Their eyes locked—bright blue and mismatched amber-black—as they moved together in a rhythm that felt both brand new and achingly familiar."
5"But for now, in the cluttered sanctuary of her friend’s flat, Aurora Carter let herself believe in second chances with the half-demon who had once broken her he…"
66.18% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags34
uselessAdditionCount4
matches
0"She kept, but her pulse hammered against the small crescent scar on her wrist"
1"Lucien’s voice had, dangerous"
2"she agreed, voice rough"
3"he managed, hips jerking up involuntarily"
8.97% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags19
fancyCount11
fancyTags
0"he murmured (murmur)"
1"she demanded (demand)"
2"she whispered (whisper)"
3"she agreed (agree)"
4"he murmured (murmur)"
5"he promised (promise)"
6"he whispered (whisper)"
7"she whispered (whisper)"
8"she warned (warn)"
9"She confessed (confess)"
10"he breathed (breathe)"
dialogueSentences78
tagDensity0.244
leniency0.487
rawRatio0.579
effectiveRatio0.282
84.1092%