NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-03-12-01KKHZ943W4D8MF81HGD72ZS9N
Run Details
Model:
Grok 4.20 (Beta)
Test:
Bad Writing Habits
Scenario:
Romance: separated couple reunites
Duration:
18.7s
Cost:
$0.020736
Provider:
xAI
Evaluation summary
Score
Evaluator
Details Link
78.05%
Adverbs in dialogue tags
(details)
85.54%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
56.63%
AI-ism word frequency
(details)
100.00%
Cliché density
(details)
100.00%
Emotion telling (show vs. tell)
(details)
100.00%
Filter word density
(details)
100.00%
Gibberish response detection
(details)
100.00%
Markdown formatting overuse
(details)
100.00%
Missing dialogue indicators (quotation marks)
(details)
100.00%
Name drop frequency
(details)
100.00%
Narrator intent-glossing
(details)
100.00%
"Not X but Y" pattern overuse
(details)
100.00%
Overuse of "that" (subordinate clause padding)
(details)
100.00%
Paragraph length variance
(details)
100.00%
Passive voice overuse
(details)
100.00%
Past progressive (was/were + -ing) overuse
(details)
100.00%
Em-dash & semicolon overuse
(details)
93.87%
Purple prose (modifier overload)
(details)
100.00%
Repeated phrase echo
(details)
100.00%
Sentence length variance
(details)
49.94%
Sentence opener variety
(details)
100.00%
Adverb-first sentence starts
(details)
53.66%
Pronoun-first sentence starts
(details)
34.26%
Subject-first sentence starts
(details)
49.50%
Subordinate conjunction sentence starts
(details)
100.00%
Technical jargon density
(details)
60.90%
Useless dialogue additions
(details)
28.05%
Dialogue tag variety (said vs. fancy)
(details)
86.3467%
Overall
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
Messages
Meta
AI
The brass knocker on Eva's
flat door rattled once, twice. Aurora stood on the landing, one hand still raised, the other clutching the strap of her worn messenger bag.
Rain dripped from her black
hair onto the collar of her leather jacket.
Her heart hammered against her
ribs like it wanted out. Three deadbolts clicked in sequence on the other side. The door swung open.
Lucien Moreau filled the frame
in a charcoal suit that cost more than three months of her rent.
Platinum hair slicked back, one
amber eye and one black fixing on her with the precision of a blade.
The ivory-handled cane rested against
his thigh. For a single heartbeat, neither of them breathed. "Rory," he said. The word came out rough, like it scraped his throat on the way up.
Aurora's fingers tightened on her
bag strap.
The small crescent scar on
her left wrist itched beneath her sleeve. "Luc. Didn't expect to see you here." "Clearly."
His mismatched gaze flicked over
her damp clothes, the faint bruise still fading along her jaw from last week's delivery gone wrong. "You look like hell." "Charming as ever."
She tried for cool, for
the quick wit that usually kept her safe. It cracked halfway through. "Eva home?" "Out. Research."
He stepped back without turning
away, the movement fluid despite the cane. "Ptolemy has taken over the entire sofa. You might as well come in before the curry house steam ruins that jacket
completely
." She shouldn't.
Every rational part of her
brain screamed retreat. But her feet moved anyway, carrying her across the threshold into the cramped flat.
Books and scrolls covered every
surface.
The tabby cat lifted his
head from a pile of papers, yellow eyes blinking once before dismissing them both. The door shut behind her.
The three deadbolts slid home
with heavy finality. Lucien moved to the tiny kitchenette, his cane tapping
softly
against the worn floorboards.
He filled the kettle without
asking if she wanted tea. Aurora hovered near the doorway, unsure where to put her hands, her eyes, herself. The flat smelled of old paper, turmeric, and the faint brimstone edge that always clung to him. "You still live above Silas' bar,"
he said without looking at
her. "I hear the deliveries have become interesting." "Nothing you need to concern yourself with."
She shrugged out of her
wet jacket and hung it on the back of a chair. The motion pulled her sleeve up, exposing the scar.
His gaze caught on it
immediately. "Childhood accident,"
she muttered, tugging the fabric
down. "You remember." "I remember everything."
His voice dropped
. "Including how you left." The kettle clicked off. Lucien poured water into two mismatched mugs, added tea bags with precise movements. Aurora watched the flex of his fingers, the way his tailored jacket stretched across broad shoulders. Six months since Paris. Six months since she'd walked out of that hotel room with her bag half-packed and her chest in pieces. "I didn't leave,"
she said quietly
. "I ran." He turned then. The black eye
seemed to
swallow the dim lamplight. "Semantics." "You lied to me for three weeks, Luc. Three weeks of pretending you were just another fixer helping a girl with a stalker problem. Then I find out your father is literally from another realm and you've got demon blood running through your veins."
Her voice rose despite herself
. "You think I should have stayed for coffee after that?" "I think you should have let me explain."
He crossed the small space
between them, offering her a mug. Their fingers brushed. Heat shot up her arm that had nothing to do with the tea. "I think you should have trusted me enough to stay five more minutes." "Trust."
She laughed, the sound brittle
in the cluttered room. "That's rich coming from the man who concealed a sword in his cane during our first date." "Second date," he corrected. A ghost of his old smirk tugged at his mouth. "First date was the incident with the kelpie in Regent's Canal. You called it a disaster. I called it foreplay." Ptolemy
chose that moment
to leap from the sofa onto the table, scattering papers. Aurora reached out automatically to steady a teetering stack of scrolls. Her shoulder brushed Lucien's chest. The contact jolted them both. "Damn cat,"
she muttered, but her pulse
had
quickened
. "Damn cat has better timing than we ever did." Lucien set his mug down. His hand came up, hesitated, then brushed a strand of wet hair from her cheek. "You're shivering." "It's raining." "It's July." Her bright blue eyes met his heterochromatic ones. Up close, the contrast between amber and black was even more striking. She remembered staring into those eyes in a narrow Paris alley while he dispatched something with too many teeth. Remembered those same eyes softening in the hotel afterward as he'd
traced
her scar with careful fingers. "I missed you," she whispered. The admission slipped out before she could cage it. His fingers stilled against her jaw. "Then why did you vanish? I looked for you. Silas wouldn't talk. Eva threatened to hex my cane into a pogo stick." "Because looking at you hurt." She stepped back, needing air that didn't carry his scent of smoke and expensive cologne. "Because I wanted things I had no business wanting from someone who could hide an entire half of himself that well." Lucien followed, the cane left behind by the kettle. His hands settled on her hips, light enough that she could pull away. She didn't. "What things?" His voice had gone low, dangerous in the way that once made her knees weak. Still did. Aurora's back met the edge of the overcrowded bookshelf. A scroll poked her shoulder blade. "You know what things." "Say them." She gripped the front of his charcoal suit jacket. The fabric felt expensive under her delivery-roughened fingers. "I wanted to wake up next to you without wondering what else you weren't telling me. I wanted to trace every mark on your skin and know the stories behind them. I wanted..." Her voice cracked. "I wanted to matter enough that you'd risk telling me the truth from the start." "You matter." The words came out fierce. "More than my
carefully
constructed
reputation. More than the balance I maintain between two worlds. You walked into my life with your quick tongue and quicker mind and upended everything. I should have told you in that canal. Before the kelpie. Before I fell so
completely
that losing you carved out pieces I didn't know I had." Her fingers tightened on his lapels. The height difference meant she had to tilt her head back to maintain eye contact. Five foot six to his five eleven put her at the
perfect
angle to feel the heat radiating from his chest. "Prove it,"
she challenged, the words echoing their old arguments
. "No more half-truths. No more charming deflections in four languages." Lucien's hand slid up her side, under the hem of her damp t-shirt. His palm pressed against the small of her back, warm against
chilled
skin. "My father rules a minor court in Avaros. I was sent here as a child to prevent a succession crisis. The cane contains iron-forged steel because pure demon blood reacts poorly to it. I hate marmalade. I prefer my coffee black. And I have spent every night for six months remembering exactly how you sound when you—" She kissed him before he could finish. It wasn't gentle. Months of hurt and want collided between their mouths. Lucien made a sound low in his throat that
vibrated
against her lips. His hand pressed harder against her back, pulling her flush against him as the other tangled in her wet hair. Aurora tasted rain and tea and the unique spice that was purely him. She nipped at his bottom lip, the way she remembered he liked, and
felt the shudder
that ran through his frame. The bookshelf creaked behind her as he pressed closer. When they broke apart, both breathing hard, his forehead rested against hers. "Still running?" he asked against her mouth. "Still lying?"
she countered, but her fingers had already found the buttons of his waistcoat
. "Never again." The promise carried
weight
. His black eye
seemed to
flicker
with inner fire. "Not to you." She believed him. Maybe that made her foolish. Maybe it made her brave.
Either way, she pulled him
down into another kiss, this one slower, deeper. His tongue
traced
the seam of her lips and she opened for him, letting him explore like he
was mapping
territory he'd once known by heart. Lucien's fingers worked at the hem of her shirt. Cold air hit her
stomach
as he lifted it. She raised her arms, breaking the kiss only long enough for the fabric to clear her head. Her hair, still damp, fell in messy strands around her face. His gaze dropped to the simple black bra, to the constellation of faint freckles across her collarbones.
To the way her chest
rose and fell too
quickly
. "Beautiful," he murmured. Not a compliment. A statement of fact. Aurora reached for his jacket, pushing it off broad shoulders. It fell to the floor with a soft sound. The waistcoat followed. His shirt clung to his frame, revealing the lean muscle beneath. She worked the buttons with impatient fingers, revealing inch after inch of pale skin marked with
intricate
patterns that definitely hadn't been there in Paris. "New," she said,
tracing
one swirling mark just above his heart. "Old." His breath hitched as her nail scraped the sensitive skin. "Just hidden. Like much else." She pressed her lips to the mark. Then lower. Lucien's hand fisted in her hair, not directing, simply holding on. The flat's single bedroom seemed miles away. The sofa
was covered
in books. The kitchen table held too many scrolls. The floor would do. Aurora sank to her knees on the threadbare rug, hands working at his belt. Lucien's heterochromatic eyes never left her face. The amber one had gone molten. The black one
seemed to
contain galaxies. "Rory,"
he started, voice strained
. "Shut up, Luc." She freed him from his trousers, wrapping her hand around the hard length of him. "Unless you're using those four languages to tell me how much you want this." He switched to French, the words flowing like dark honey as she took him into her mouth. The sound he made was worth every complicated month apart. His hips jerked once before he regained control, letting her set the pace. Aurora had forgotten how much she loved reducing him to this. The impeccable fixer, information broker to London's supernatural underworld, reduced to curse words in multiple languages because of her tongue and hands. When she hummed around him, his grip in her hair tightened. "Enough," he growled, pulling her up with surprising strength for someone who favored a cane. "Not like this. Not the first time." He backed her toward the bedroom door, kicking scrolls out of their path. Ptolemy watched from atop a cabinet with clear disapproval. Aurora laughed, the sound bright in the cluttered space, and Lucien swallowed it with another kiss. They stumbled through the doorway together. The bedroom was even more
chaotic
than the main room. The bed, at least, was clear. Mostly. Lucien lifted her effortlessly, depositing her on the mattress. His hands made quick work of her jeans, peeling damp denim down her legs along with her underwear. She helped by toeing off her boots. When she reached back to unhook her bra, his hands covered hers. "Let me." The reverence in his touch as he removed the last piece of clothing undid her. He mapped her body with eyes and fingers, relearning every curve, every sensitive spot. When he found the small scar on her wrist, he kissed it
softly
. "Childhood accident," he
echoed
her earlier words. "I never asked what caused it." "Bicycle. Age seven. My father was furious about the medical bills." She arched as his mouth moved lower,
tracing
her ribs. "Luc—" "Brendan Carter. Irish barrister. Overprotective." His tongue circled her navel. "I know more than you think." "That's creepy." "That's preparation." His breath ghosted over her most sensitive skin. "I wanted to be worthy of you. Even when I was too cowardly to tell you why I needed to be." Any retort she might have made dissolved as his mouth found her center. Aurora's head fell back against the pillows, fingers tangling in his
perfectly
styled hair and ruining it
completely
. He worked her with devastating focus, one hand pressing her thigh wider while the other
traced
patterns on her hip that
felt like magic
. She came apart with his name on her lips, sharp and sweet. Lucien rose above her, shedding the last of his clothes. The full sight of him naked stole what little breath she had left. The marks continued across his torso and down one thigh. Beautiful. Dangerous. Hers, if she was brave enough to claim him. He settled between her thighs, the hard length of him pressing against her entrance but not pushing forward.
Instead, he braced himself on
his forearms, looking down at her with an expression she'd never seen on his face before. "I love you," he said simply. No French. No elegant deflections.
Just the raw truth in
his mismatched eyes. Aurora's heart stuttered. Her hands came up to frame his face, thumbs brushing over sharp cheekbones. "About damn time you admitted it." His laugh rumbled through both of them. Then he was inside her, slow and deep, and laughter became something else entirely. They moved together like they remembered every rhythm from Paris. Like six months apart had only sharpened the ache. Lucien's thrusts
were measured
at first, savoring, but Aurora's nails digging into his back urged him faster. The bed creaked beneath them. Somewhere in the other room, Ptolemy knocked something over with an indignant yowl. Neither of them cared. Aurora wrapped her legs around his waist, changing the angle. The new depth drew identical groans from both of them. Lucien's control
began to
fray. His strokes grew harder, less precise. She loved him like this, undone and real. "Look at me,"
he demanded, voice rough
. She did.
Bright blue meeting amber and
black. The connection went beyond physical, beyond the pleasure building between them again. It
felt like coming home to a place she'd
tried to
forget. When her second climax hit, his name tore from her throat. Lucien followed moments later, burying his face in her neck as he shuddered through his release. His teeth grazed her
pulse
point,
not quite biting, and she wondered what demon instincts he held back even now
. They stayed locked together, breathing hard. Aurora
traced
the marks on his shoulder with lazy fingers. "These glow sometimes?" "Only when I'm particularly..." He nipped her earlobe. "Affected." "Good to know." Lucien rolled them so she lay sprawled across his chest. His cane leaned against the bedside table, forgotten. The flat's single window showed the Brick Lane skyline darkening into evening. The curry house below sent savory scents through the floorboards. "We should talk," she said eventually, drawing circles on his skin. "Yes." His hand stroked
down her spine
. "But not yet." "Not yet," she agreed, pressing closer. The complications remained. Her job, his underworld dealings, the half-demon heritage she'd barely begun to understand. The hurt they'd caused each other. For now, though, in the chaos of Eva's flat with a disapproving tabby cat probably plotting revenge in the next room, Aurora allowed herself to simply be held by the man she'd run from and never quite escaped. Lucien's fingers found her wrist,
tracing
the crescent scar there. "Tell me about the bicycle accident." She smiled against his chest. "Only if you tell me about the time you set that ambassador's tie on fire in three languages." "Deal." The rain continued outside. Inside, two people who had parted on complicated terms began the slow work of untangling old hurts while discovering new ways to fit together. The conversation stretched long into the night, punctuated by touches that promised more than words ever could. By morning, the flat would still be cluttered with books and scrolls. Eva would return to find her research notes in disarray and her best friend curled up with the Frenchman she'd once threatened to curse into oblivion. But for now, in the quiet hours between midnight and dawn, Aurora Carter and Lucien Moreau rediscovered each other one honest revelation at a time.
created_at
"2026-03-12T21:29:41.761Z"
3/12/2026, 9:29:41 PM
model
"x-ai/grok-4.20-beta-20260309"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
453
moderation_latency
(null)
generation_time
18319
tokens_prompt
1034
tokens_completion
4223
native_tokens_prompt
1017
native_tokens_completion
3405
native_tokens_completion_images
0
native_tokens_reasoning
0
native_tokens_cached
960
num_media_prompt
(null)
num_input_audio_prompt
(null)
num_media_completion
0
num_search_results
(null)
origin
"https://ncbench.com/"
is_byok
false
finish_reason
"stop"
native_finish_reason
"completed"
usage
0.020736
router
(null)
provider_responses
0
endpoint_id
"33f49f24-a0de-4dcf-872d-ca514e83fbae"
id
"9cbba86c-26dc-aadd-3520-1a256d323ada"
is_byok
false
latency
416
model_permaslug
"x-ai/grok-4.20-beta-20260309"
provider_name
"xAI"
status
200
user_agent
"langchainjs-openai/1.0.0 ((node/v24.14.0; linux; x64))"
http_referer
(null)
api_type
"completions"
id
"gen-1773350981-AOvLJRF0icPP37BBeMlc"
upstream_id
"9cbba86c-26dc-aadd-3520-1a256d323ada"
total_cost
0.020736
cache_discount
0.001728
upstream_inference_cost
0
provider_name
"xAI"
Evaluation details
Result
Evaluator
Details
Meta Data
78.05%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
39
adverbTagCount
5
adverbTags
0
"He stepped back [back]"
1
"she said quietly [quietly]"
2
"She stepped back [back]"
3
"he said simply [simply]"
4
"she said eventually [eventually]"
dialogueSentences
82
tagDensity
0.476
leniency
0.951
rawRatio
0.128
effectiveRatio
0.122
85.54%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
2767
totalAiIsmAdverbs
8
found
0
adverb
"completely"
count
3
1
adverb
"softly"
count
2
2
adverb
"carefully"
count
1
3
adverb
"quickly"
count
1
4
adverb
"perfectly"
count
1
highlights
0
"completely"
1
"softly"
2
"carefully"
3
"quickly"
4
"perfectly"
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)
56.63%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
2767
totalAiIsms
24
found
0
word
"flicked"
count
1
1
word
"pulse"
count
2
2
word
"quickened"
count
1
3
word
"traced"
count
4
4
word
"constructed"
count
1
5
word
"perfect"
count
1
6
word
"echoing"
count
1
7
word
"chilled"
count
1
8
word
"vibrated"
count
1
9
word
"weight"
count
1
10
word
"flicker"
count
1
11
word
"stomach"
count
1
12
word
"intricate"
count
1
13
word
"tracing"
count
3
14
word
"chaotic"
count
1
15
word
"echoed"
count
1
16
word
"measured"
count
1
17
word
"down her spine"
count
1
highlights
0
"flicked"
1
"pulse"
2
"quickened"
3
"traced"
4
"constructed"
5
"perfect"
6
"echoing"
7
"chilled"
8
"vibrated"
9
"weight"
10
"flicker"
11
"stomach"
12
"intricate"
13
"tracing"
14
"chaotic"
15
"echoed"
16
"measured"
17
"down her spine"
100.00%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
0
maxInWindow
0
found
(empty)
highlights
(empty)
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
1
narrationSentences
215
matches
0
"felt the shudder"
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
0
hedgeCount
5
narrationSentences
215
filterMatches
(empty)
hedgeMatches
0
"seemed to"
1
"began to"
2
"tried to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
257
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
maxSentenceWordsSeen
58
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
2767
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
35
unquotedAttributions
0
matches
(empty)
100.00%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
57
wordCount
2163
uniqueNames
12
maxNameDensity
0.92
worstName
"Lucien"
maxWindowNameDensity
2
worstWindowName
"Lucien"
discoveredNames
Eva
3
Moreau
2
Paris
4
Lucien
20
French
2
London
1
Aurora
18
Ptolemy
3
Brick
1
Lane
1
Frenchman
1
Carter
1
persons
0
"Eva"
1
"Moreau"
2
"Lucien"
3
"Aurora"
4
"Ptolemy"
5
"Carter"
places
0
"Paris"
1
"French"
2
"London"
3
"Brick"
4
"Lane"
globalScore
1
windowScore
1
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
162
glossingSentenceCount
3
matches
0
"felt like magic"
1
"felt like coming home to a place she'd"
2
"not quite biting, and she wondered what demon instincts he held back even now"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
0
per1kWords
0
wordCount
2767
matches
(empty)
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
1
totalSentences
257
matches
0
"chose that moment"
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
97
mean
28.53
std
17.8
cv
0.624
sampleLengths
0
61
1
4
2
52
3
17
4
26
5
27
6
22
7
36
8
49
9
13
10
55
11
19
12
38
13
10
14
10
15
56
16
8
17
13
18
59
19
48
20
27
21
34
22
35
23
9
24
31
25
2
26
2
27
56
28
14
29
28
30
41
31
24
32
19
33
19
34
2
35
68
36
64
37
42
38
20
39
83
40
7
41
45
42
43
43
19
44
15
45
18
46
52
47
46
48
37
49
58
100.00%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
2
totalSentences
215
matches
0
"was covered"
1
"were measured"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
1
totalVerbs
366
matches
0
"was mapping"
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
0
semicolonCount
0
flaggedSentences
0
totalSentences
257
ratio
0
matches
(empty)
93.87%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
2167
adjectiveStacks
1
stackExamples
0
"warm against chilled skin."
adverbCount
87
adverbRatio
0.04014766958929396
lyAdverbCount
22
lyAdverbRatio
0.01015228426395939
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
257
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
257
mean
10.77
std
7.9
cv
0.734
sampleLengths
0
10
1
19
2
13
3
10
4
9
5
4
6
18
7
19
8
7
9
8
10
3
11
14
12
7
13
12
14
7
15
23
16
4
17
16
18
4
19
2
20
14
21
22
22
2
23
8
24
14
25
6
26
19
27
5
28
8
29
14
30
10
31
14
32
17
33
12
34
7
35
23
36
9
37
6
38
8
39
2
40
6
41
4
42
4
43
13
44
16
45
4
46
19
47
6
48
2
49
3
49.94%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
20
diversityRatio
0.3463035019455253
totalSentences
257
uniqueOpeners
89
100.00%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
7
totalSentences
202
matches
0
"Maybe that made her foolish."
1
"Maybe it made her brave."
2
"Instead, he braced himself on"
3
"Just the raw truth in"
4
"Then he was inside her,"
5
"Somewhere in the other room,"
6
"Bright blue meeting amber and"
ratio
0.035
53.66%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
84
totalSentences
202
matches
0
"Her heart hammered against her"
1
"His mismatched gaze flicked over"
2
"She tried for cool, for"
3
"It cracked halfway through."
4
"He stepped back without turning"
5
"He filled the kettle without"
6
"he said without looking at"
7
"She shrugged out of her"
8
"His gaze caught on it"
9
"she muttered, tugging the fabric"
10
"His voice dropped"
11
"she said quietly"
12
"He turned then."
13
"Her voice rose despite herself"
14
"He crossed the small space"
15
"Their fingers brushed."
16
"She laughed, the sound brittle"
17
"Her shoulder brushed Lucien's chest."
18
"she muttered, but her pulse"
19
"His hand came up, hesitated,"
ratio
0.416
34.26%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
172
totalSentences
202
matches
0
"The brass knocker on Eva's"
1
"Aurora stood on the landing,"
2
"Rain dripped from her black"
3
"Her heart hammered against her"
4
"The door swung open."
5
"Lucien Moreau filled the frame"
6
"Platinum hair slicked back, one"
7
"The ivory-handled cane rested against"
8
"The word came out rough,"
9
"Aurora's fingers tightened on her"
10
"The small crescent scar on"
11
"His mismatched gaze flicked over"
12
"She tried for cool, for"
13
"It cracked halfway through."
14
"He stepped back without turning"
15
"Every rational part of her"
16
"Books and scrolls covered every"
17
"The tabby cat lifted his"
18
"The door shut behind her."
19
"The three deadbolts slid home"
ratio
0.851
49.50%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
2
totalSentences
202
matches
0
"Either way, she pulled him"
1
"To the way her chest"
ratio
0.01
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
93
technicalSentenceCount
5
matches
0
"Lucien Moreau filled the frame in a charcoal suit that cost more than three months of her rent."
1
"He worked her with devastating focus, one hand pressing her thigh wider while the other traced patterns on her hip that felt like magic."
2
"Lucien's thrusts were measured at first, savoring, but Aurora's nails digging into his back urged him faster."
3
"Inside, two people who had parted on complicated terms began the slow work of untangling old hurts while discovering new ways to fit together."
4
"The conversation stretched long into the night, punctuated by touches that promised more than words ever could."
60.90%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
39
uselessAdditionCount
5
matches
0
"she muttered, but her pulse had quickened"
1
"she challenged, the words echoing their old arguments"
2
"she countered, but her fingers had already found the buttons of his waistcoat"
3
"he started, voice strained"
4
"he demanded, voice rough"
28.05%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
17
fancyCount
10
fancyTags
0
"she muttered (mutter)"
1
"She laughed (laugh)"
2
"he corrected (correct)"
3
"she muttered (mutter)"
4
"she whispered (whisper)"
5
"she challenged (challenge)"
6
"he murmured (murmur)"
7
"he growled (growl)"
8
"he demanded (demand)"
9
"she agreed (agree)"
dialogueSentences
82
tagDensity
0.207
leniency
0.415
rawRatio
0.588
effectiveRatio
0.244
86.3467%