NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-02-17-01KHMQXXFF86HEWRFAAJKYA3F9
Run Details
Model:
Gemini 2.5 Flash
Test:
Bad Writing Habits
Scenario:
Romance: separated couple reunites
Duration:
13.6s
Cost:
$0.006703
Provider:
Google AI Studio
Evaluation summary
Score
Evaluator
Details Link
33.33%
Adverbs in dialogue tags
(details)
70.19%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
10.57%
AI-ism word frequency
(details)
66.67%
Cliché density
(details)
100.00%
Emotion telling (show vs. tell)
(details)
100.00%
Filter word density
(details)
98.91%
Gibberish response detection
(details)
100.00%
Markdown formatting overuse
(details)
100.00%
Missing dialogue indicators (quotation marks)
(details)
83.33%
Name drop frequency
(details)
98.45%
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)
99.74%
Passive voice overuse
(details)
100.00%
Past progressive (was/were + -ing) overuse
(details)
86.47%
Em-dash & semicolon overuse
(details)
85.47%
Purple prose (modifier overload)
(details)
100.00%
Repeated phrase echo
(details)
100.00%
Sentence length variance
(details)
53.29%
Sentence opener variety
(details)
84.03%
Adverb-first sentence starts
(details)
0.00%
Pronoun-first sentence starts
(details)
23.03%
Subject-first sentence starts
(details)
0.00%
Subordinate conjunction sentence starts
(details)
66.87%
Technical jargon density
(details)
0.00%
Useless dialogue additions
(details)
12.07%
Dialogue tag variety (said vs. fancy)
(details)
72.4140%
Overall
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
Messages
Meta
AI
The sound of knocking tore
Rory from the
depths
of her research.
She blinked, her bright blue
eyes struggling to refocus on the dog-eared page of a treatise on ancient runic protection spells.
Ptolemy, Eva’s tabby, swatted at
a dangling bookmark, his tail a languid question mark. “I’ll get it,”
Rory mumbled, half to the
cat, half to herself.
Eva was out, chasing some
obscure lead on a missing grimoire, which meant the flat on Brick Lane was Rory’s domain until morning.
She stretched, her shoulders protesting
the hours spent hunched over books, then pushed herself up from the worn sofa.
The knocking came again, sharper
this time. Annoyed, Rory crossed the cramped living room,
carefully
sidestepping a stack of scrolls that threatened to topple. She peered through the peephole. Her breath hitched. Lucien.
His slicked-back platinum blond hair
gleamed under the dim stairwell light.
He was dressed in one
of his trademark charcoal suits,
perfectly
tailored, just as she remembered. One amber eye, the other black,
scanned
the hallway,
as if expecting danger from the shadows
. He looked unchanged. Ruthlessly elegant. Dangerously composed.
Rory’s heart hammered a frantic
rhythm against her ribs. Of all the people… Of all the times…
She hesitated, her hand hovering
over the three deadbolts.
A part of her, the
wounded, sensible part, screamed at her to pretend she wasn't home. But another part, a foolish, reckless part, yearned for answers. For <i>something</i>. Taking a deep breath, Rory unlatched the locks, one by one, the metallic clicks impossibly loud in the
silence
.
She pulled the door open
just enough to peer out, her black hair falling forward to partially obscure her face. “_Bonsoir_, Rory,”
Lucien said, his voice a
low, cultured murmur that
sent a shiver down
her spine. He leaned against the doorframe, his ivory-handled cane tapping
softly
against the linoleum. “‘_C’est un plaisir de vous revoir_.”
She ignored his French, her
jaw tightening. “Lucien. What are
you
doing here?”
Her voice, usually steady, wavered
. A corner of his mouth quirked, a ghost of a smile she knew all too well. “A mutual acquaintance mentioned
you
were… assisting with a certain matter.” Rory knew exactly which matter he meant. Eva had, in a moment of exasperation, called him for information on a particularly tricky demonic artefact. Rory had specifically asked her friend *
not
* to mention she was involved. Eva, bless her
chaotic
heart, clearly hadn't listened. “I’m just helping Eva out,” Rory said, opening the door wider, though
not
inviting him in. “It’s got nothing to do with
you
.” His heterochromatic eyes, one amber, one black, held hers. There was a
flicker
of something in them – amusement? Regret? She couldn't tell. “On the contrary, ma chérie. When it concerns the underworld of London, it inevitably concerns me.”
He paused, then added
, “And
you
.” The
unspoken
accusation
hung heavy in the air
. *You brought yourself back into this world, the one I
tried to
keep
you
from.* Rory
felt a flush
creep up her neck.
She remembered perfectly well how
she’d ended up back in this world. A frantic phone call from Eva, a desperate plea for help, and Rory, unable to refuse her oldest friend, had walked right back into the supernatural chaos Lucien had
tried to
shield her from. “I thought we agreed,”
she began, her voice low
, “that
you
and I… we were done.” He pushed off the doorframe, taking a step closer. The scent of his
familiar
cologne – expensive, subtle,
utterly
Lucien – enveloped her, stirring old memories. “Did we?”
he asked, his voice softer
now. “Or did
you
simply disappear, leaving me to wonder if
you
were alive or dead?” The words were a direct hit. Rory flinched. She hadn’t just disappeared; she’d fled. Fled London, fled the scene of a brutal confrontation, fled the
aftermath
of a broken alliance. Fled him. “I had my reasons,” she said defensively, clutching the doorframe. “And those reasons didn’t include a simple goodbye?” His voice was devoid of accusation, but the hurt was clear. It twisted in Rory’s gut. She looked away, sweeping her gaze over the cluttered hallway, taking in the faint smell of curry from the downstairs restaurant. Ptolemy rubbed against her ankles, purring, oblivious to the
simmering
tension
. “It… it was complicated, Lucien. Everything was complicated.” “Complicated,” he
echoed
, a dry note in his tone. “_C’est un euphémisme_.” He stepped fully into the flat, his presence immediately filling the small space. Rory instinctively moved back, putting
more
distance between them. Ptolemy, sensing the shift, darted between Lucien’s legs, winding around his ankles before settling on a stack of books, his tail twitching. “You can’t just come in here,”
Rory protested, though the words felt weak even to her
. Lucien ignored her, his eyes
scanning
the room. They lingered on the overflowing bookshelves, the scattered research notes, the half-empty teacup on the coffee table. His gaze finally settled back on her. “Eva is
not
here, I presume?” “No. She’s out.” “Good. That gives us time to discuss… certain matters.” “There’s nothing to discuss.” He raised a
perfectly
sculpted
eyebrow
. “Don’t be disingenuous, Rory. We both know there is.” He walked further into the living room, heading towards the window that overlooked the busy street below. He ran a finger along the spine of a leather-bound tome, then turned to face her. “Why did
you
leave, Rory? Why did
you
cut all ties?” The directness of the question, after so long, caught her off guard. She wanted to snap back, to remind him of his own role in their complicated past. But the words died in her throat. She remembered the fear, the exhaustion, the utter overwhelm of that period. Evan’s abusive grasp, the shadowy figures of the supernatural world closing in, and Lucien, always there, always protecting her, always *
more
*. More than she could handle.
More than she thought she
deserved. “It was… too much,”
she admitted, the words barely a whisper
. “Everything. The demons, the deals, the constant danger. After… after Evan, I just wanted to be normal again. To be out of it all.” She gestured vaguely at the stacks of books, the arcane symbols peeking from between pages. “This life, it isn’t for me.” Lucien’s gaze softened. “And yet, here
you
are. Back in the thick of it.” “I’m helping a friend. It’s different.” “Is it?” He took another step towards her, closing the distance she’d
tried to
maintain. “Or is it that
you
cannot escape who
you
truly
are, Rory? You are intelligent, resourceful, and impossibly brave. The mundane world would bore
you
to tears.” Rory scoffed, a brittle sound. “You don’t know anything about my mundane world.” “Perhaps
not
in detail,” he conceded. “But I know *
you
*. I know the fire that burns within
you
, the insatiable curiosity. It is
precisely
what drew me to
you
.” His words, intimate and
familiar
,
sent a jolt through
her. She remembered the nights they’d spent talking, endless discussions about magic, history, other realms. The way he’d looked at her then, as if she held all the answers to the universe. “Don’t,”
she warned, her voice tight
. “Don’t do that.” “Do what?” he asked, one corner of his mouth lifting in that infuriating, charming way. “Charm your way back into my good graces. It won’t work.” “Isn’t it simply being honest?” He was close now, close enough for her to feel the
warmth
radiating from him. Close enough to see the flecks of gold in his amber eye. “I missed
you
, Rory. Terribly.” The confession, uttered so simply, unravelled something tight inside her. She’d tried so hard to forget him, to erase him from her mind, but hearing those words, seeing the sincerity in his eyes… it was a blow. “You shouldn’t have,” she whispered, her own
treacherous
heart aching with a
familiar
longing. “Why
not
? Are
you
immune to such feelings, ma chérie? I remember a time when
you
were
not
.” His gaze dropped to her lips, and Rory swallowed hard. She remembered too. Remembered his kisses, the way his hands felt on her skin, the surprising
tenderness
beneath his sophisticated exterior. She remembered the
electric
pull between them, a dangerous current that had hummed beneath every interaction. The scar on her left wrist, a small crescent,
throbbed
faintly under her sleeve, a ghost of a childhood accident, but now, it felt like a
reminder
of a different kind of wound. “Things changed,”
she said, trying to inject some steel into her voice
. “We changed.” “Perhaps.” He reached out, his hand hovering inches from her face, then
gently
cupped her cheek. His thumb brushed over her skin, a feather-light touch that sent goosebumps down her arms. “But some things, Rory, are immutable. Like the pull of the moon to the tide.” Her breath hitched. She leaned into his touch for a fraction of a second, unable to resist the
familiar
comfort, the forbidden comfort, of his hand on her.
Then, with a surge of
renewed
resolve
, she pulled back, stepping away from him, breaking the spell. “You can’t just waltz back into my life, Lucien, after months of
silence
, and expect everything to be the same.” She felt a fresh wave of anger, fueled by hurt. “You have no right.” “And
you
think I haven't
carried the weight
of my mistakes, Rory?” His voice was lower, rougher. “You think I didn't search for
you
? That I didn't curse myself for letting
you
go?” “You couldn’t have stopped me!”
she retorted, her voice rising
. “It wasn’t your choice to make! I had to leave. I had to get away from… all of it. Even
you
.” The words were out before she could catch them, raw and stinging. Lucien flinched as if struck. The light in his heterochromatic eyes dimmed. The charming
facade
crumbled, revealing something wounded beneath. He looked older,
suddenly
, the lines around his eyes
more
pronounced. “Even me,” he repeated, the words flat. He dropped his hand, his posture hardening. “I understand.” He paused, his gaze sweeping over the books, the scrolls, the evidence of her continued immersion in the world she claimed to despise. “It seems,” he said, his voice now
carefully
neutral, “that we have both made our choices. Nevertheless, Eva requires assistance with the artefact, and I have information she needs. It might be wise for us to put our… personal history aside, for the moment.” Rory watched him, her chest tight. He
was erecting
walls again, just as she was. Retreating into the sophisticated,
unreadable
facade
of Lucien Moreau. It hurt, knowing she’d
put that look
on his face. “Fine,”
she said, her voice flat
. “What information do
you
have?” He nodded, a sharp, business-like movement. The intimacy, the crackle of attraction, the ghost of their past,
was gone
, replaced by a cold professionalism. It was a relief, and a
profound
disappointment, all at once. “It concerns a demon by the name of Malphora,” Lucien began, taking out a slim, leather-bound notebook and a fountain pen from his breast pocket. “A particularly virulent entity, with a fondness for… dramatic entrances.”
created_at
"2026-02-17T02:47:47.968722+00:00"
2/17/2026, 2:47:47 AM
model
"google/gemini-2.5-flash"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
263
moderation_latency
(null)
generation_time
13590
tokens_prompt
808
tokens_completion
2975
native_tokens_prompt
786
native_tokens_completion
2587
native_tokens_completion_images
0
native_tokens_reasoning
0
native_tokens_cached
0
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
"STOP"
usage
0.0067033
router
(null)
provider_responses
0
status
200
is_byok
false
latency
263
endpoint_id
"16c01e26-9b91-4d22-b487-ed35634b017d"
provider_name
"Google AI Studio"
model_permaslug
"google/gemini-2.5-flash"
api_type
"completions"
id
"gen-1771296454-nHU9GUptzppwYbs4keYN"
upstream_id
(null)
total_cost
0.0067033
cache_discount
(null)
upstream_inference_cost
0
provider_name
"Google AI Studio"
Evaluation details
Result
Evaluator
Details
Meta Data
33.33%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
30
adverbTagCount
5
adverbTags
0
"He paused then [then]"
1
"she said defensively [defensively]"
2
"He stepped fully [fully]"
3
"He walked further [further]"
4
"She gestured vaguely [vaguely]"
dialogueSentences
58
tagDensity
0.517
leniency
1
rawRatio
0.167
effectiveRatio
0.167
70.19%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
1845
totalAiIsmAdverbs
11
found
0
adverb
"carefully"
count
2
1
adverb
"perfectly"
count
3
2
adverb
"softly"
count
1
3
adverb
"utterly"
count
1
4
adverb
"truly"
count
1
5
adverb
"precisely"
count
1
6
adverb
"gently"
count
1
7
adverb
"suddenly"
count
1
highlights
0
"carefully"
1
"perfectly"
2
"softly"
3
"utterly"
4
"truly"
5
"precisely"
6
"gently"
7
"suddenly"
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)
10.57%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
1845
totalAiIsms
33
found
0
word
"depths"
count
1
1
word
"scanned"
count
1
2
word
"silence"
count
2
3
word
"down her spine"
count
1
4
word
"wavered"
count
1
5
word
"chaotic"
count
1
6
word
"flicker"
count
1
7
word
"unspoken"
count
1
8
word
"familiar"
count
4
9
word
"aftermath"
count
1
10
word
"simmering"
count
1
11
word
"tension"
count
1
12
word
"echoed"
count
1
13
word
"scanning"
count
1
14
word
"eyebrow"
count
1
15
word
"whisper"
count
1
16
word
"charm"
count
1
17
word
"warmth"
count
1
18
word
"treacherous"
count
1
19
word
"tenderness"
count
1
20
word
"electric"
count
1
21
word
"throbbed"
count
1
22
word
"reminder"
count
1
23
word
"resolve"
count
1
24
word
"carried the weight"
count
1
25
word
"facade"
count
2
26
word
"unreadable"
count
1
27
word
"profound"
count
1
highlights
0
"depths"
1
"scanned"
2
"silence"
3
"down her spine"
4
"wavered"
5
"chaotic"
6
"flicker"
7
"unspoken"
8
"familiar"
9
"aftermath"
10
"simmering"
11
"tension"
12
"echoed"
13
"scanning"
14
"eyebrow"
15
"whisper"
16
"charm"
17
"warmth"
18
"treacherous"
19
"tenderness"
20
"electric"
21
"throbbed"
22
"reminder"
23
"resolve"
24
"carried the weight"
25
"facade"
26
"unreadable"
27
"profound"
66.67%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
3
maxInWindow
2
found
0
label
"hung in the air"
count
1
1
label
"sent a shiver through"
count
2
highlights
0
"hung heavy in the air"
1
"sent a shiver down"
2
"sent a jolt through"
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
1
narrationSentences
127
matches
0
"felt a flush"
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
0
hedgeCount
3
narrationSentences
127
filterMatches
(empty)
hedgeMatches
0
"tried to"
98.91%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
152
gibberishSentences
1
adjustedGibberishSentences
1
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
maxSentenceWordsSeen
44
ratio
0.007
matches
0
"For <i>something</i>."
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
7
markdownWords
28
totalWords
1848
ratio
0.015
matches
0
"Bonsoir"
1
"C’est un plaisir de vous revoir"
2
"not"
3
"You brought yourself back into this world, the one I tried to keep you from."
4
"C’est un euphémisme"
5
"more"
6
"you"
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
22
unquotedAttributions
0
matches
(empty)
83.33%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
43
wordCount
1363
uniqueNames
10
maxNameDensity
1.32
worstName
"Rory"
maxWindowNameDensity
2.5
worstWindowName
"Rory"
discoveredNames
Rory
18
Eva
5
Brick
1
Lane
1
French
1
Lucien
11
London
1
Close
1
Moreau
1
Ptolemy
3
persons
0
"Rory"
1
"Eva"
2
"Lucien"
3
"Moreau"
4
"Ptolemy"
places
0
"Brick"
1
"Lane"
2
"London"
globalScore
0.84
windowScore
0.833
98.45%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
97
glossingSentenceCount
2
matches
0
"as if expecting danger from the shadows"
1
"felt like a reminder of a different kin"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
0
per1kWords
0
wordCount
1848
matches
(empty)
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
1
totalSentences
152
matches
0
"put that look"
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
57
mean
32.42
std
18.81
cv
0.58
sampleLengths
0
47
1
54
2
29
3
3
4
1
5
50
6
17
7
37
8
39
9
36
10
18
11
27
12
44
13
23
14
45
15
23
16
54
17
16
18
49
19
42
20
24
21
40
22
56
23
16
24
38
25
3
26
9
27
4
28
59
29
79
30
56
31
14
32
6
33
42
34
13
35
29
36
41
37
9
38
15
39
11
40
37
41
37
42
14
43
28
44
70
45
14
46
46
47
45
48
34
49
33
99.74%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
2
totalSentences
127
matches
0
"was dressed"
1
"was gone"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
1
totalVerbs
232
matches
0
"was erecting"
86.47%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
3
semicolonCount
1
flaggedSentences
3
totalSentences
152
ratio
0.02
matches
0
"There was a flicker of something in them – amusement?"
1
"The scent of his familiar cologne – expensive, subtle, utterly Lucien – enveloped her, stirring old memories."
2
"She hadn’t just disappeared; she’d fled."
85.47%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1367
adjectiveStacks
1
stackExamples
0
"slim, leather-bound notebook"
adverbCount
68
adverbRatio
0.04974396488661302
lyAdverbCount
27
lyAdverbRatio
0.019751280175566936
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
152
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
152
mean
12.16
std
7.85
cv
0.646
sampleLengths
0
12
1
21
2
14
3
12
4
23
5
19
6
7
7
17
8
5
9
3
10
1
11
11
12
16
13
16
14
3
15
2
16
2
17
9
18
4
19
4
20
9
21
16
22
10
23
2
24
19
25
20
26
17
27
13
28
6
29
7
30
11
31
16
32
11
33
7
34
17
35
12
36
8
37
16
38
7
39
9
40
10
41
1
42
3
43
22
44
8
45
15
46
8
47
12
48
34
49
16
53.29%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
9
diversityRatio
0.35526315789473684
totalSentences
152
uniqueOpeners
54
84.03%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
3
totalSentences
119
matches
0
"More than she could handle."
1
"More than she thought she"
2
"Then, with a surge of"
ratio
0.025
0.00%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
66
totalSentences
119
matches
0
"She blinked, her bright blue"
1
"She stretched, her shoulders protesting"
2
"She peered through the peephole."
3
"Her breath hitched."
4
"His slicked-back platinum blond hair"
5
"He was dressed in one"
6
"He looked unchanged."
7
"She hesitated, her hand hovering"
8
"She pulled the door open"
9
"He leaned against the doorframe,"
10
"She ignored his French, her"
11
"Her voice, usually steady, wavered"
12
"His heterochromatic eyes, one amber,"
13
"She couldn't tell."
14
"He paused, then added"
15
"*You brought yourself back into"
16
"She remembered perfectly well how"
17
"she began, her voice low"
18
"He pushed off the doorframe,"
19
"he asked, his voice softer"
ratio
0.555
23.03%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
104
totalSentences
119
matches
0
"The sound of knocking tore"
1
"She blinked, her bright blue"
2
"Ptolemy, Eva’s tabby, swatted at"
3
"Rory mumbled, half to the"
4
"Eva was out, chasing some"
5
"She stretched, her shoulders protesting"
6
"The knocking came again, sharper"
7
"She peered through the peephole."
8
"Her breath hitched."
9
"His slicked-back platinum blond hair"
10
"He was dressed in one"
11
"He looked unchanged."
12
"Rory’s heart hammered a frantic"
13
"She hesitated, her hand hovering"
14
"A part of her, the"
15
"She pulled the door open"
16
"Lucien said, his voice a"
17
"He leaned against the doorframe,"
18
"She ignored his French, her"
19
"Her voice, usually steady, wavered"
ratio
0.874
0.00%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
0
totalSentences
119
matches
(empty)
ratio
0
66.87%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
47
technicalSentenceCount
5
matches
0
"Eva was out, chasing some obscure lead on a missing grimoire, which meant the flat on Brick Lane was Rory’s domain until morning."
1
"Annoyed, Rory crossed the cramped living room, carefully sidestepping a stack of scrolls that threatened to topple."
2
"One amber eye, the other black, scanned the hallway, as if expecting danger from the shadows."
3
"Ptolemy, sensing the shift, darted between Lucien’s legs, winding around his ankles before settling on a stack of books, his tail twitching."
4
"His thumb brushed over her skin, a feather-light touch that sent goosebumps down her arms."
0.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
30
uselessAdditionCount
10
matches
0
"she began, her voice low,"
1
"he asked, his voice softer now"
2
"He stepped fully, his presence immediately filling the small space"
3
"Rory protested, though the words felt weak even to her"
4
"she admitted, the words barely a whisper"
5
"She gestured vaguely, the arcane symbols peeking from between pages"
6
"she warned, her voice tight"
7
"she said, trying to inject some steel into her voice"
8
"she retorted, her voice rising"
9
"she said, her voice flat"
12.07%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
16
fancyCount
8
fancyTags
0
"Rory mumbled (mumble)"
1
"Rory protested (protest)"
2
"she admitted (admit)"
3
"he conceded (concede)"
4
"she warned (warn)"
5
"she whispered (whisper)"
6
"she retorted (retort)"
7
"he repeated (repeat)"
dialogueSentences
58
tagDensity
0.276
leniency
0.552
rawRatio
0.5
effectiveRatio
0.276
72.4140%