NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-07-09-01KX410PDFE7TQ720N5D235AHY
Run Details
Model:
GPT-5.6 Sol
Test:
Bad Writing Habits
Scenario:
Romance: separated couple reunites
Duration:
58.2s
Cost:
$0.098865
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
89.53%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
83.24%
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)
54.67%
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)
100.00%
Purple prose (modifier overload)
(details)
100.00%
Repeated phrase echo
(details)
100.00%
Sentence length variance
(details)
44.48%
Sentence opener variety
(details)
100.00%
Adverb-first sentence starts
(details)
86.67%
Pronoun-first sentence starts
(details)
47.43%
Subject-first sentence starts
(details)
54.64%
Subordinate conjunction sentence starts
(details)
100.00%
Technical jargon density
(details)
100.00%
Useless dialogue additions
(details)
100.00%
Dialogue tag variety (said vs. fancy)
(details)
92.0222%
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 door opened as far
as the chain allowed, and Lucien Moreau looked through the gap. For one stupid second, Rory forgot why she had come.
He wore shirtsleeves instead of
one of his immaculate charcoal jackets. The white fabric
was rumpled
, the collar open, and a dark bruise climbed the left side of his throat.
His platinum hair, usually slicked
back with geometric precision, had fallen loose over his brow. One eye burned amber in the yellow hall light.
The other held the depthless
black of an extinguished star.
Neither softened when he saw
her. “Aurora.” Not Rory. Of course not.
She tightened her grip on
the canvas delivery bag slung across her chest.
It smelled of ginger, chilli
oil, and the beef noodles she had abandoned on the pavement when the note appeared in her bicycle basket. “Lucien.” His gaze swept over her: wet black hair sticking to her cheeks, Golden Empress jacket zipped to the chin, jeans spattered from the rain.
He lingered at her left
wrist, where her sleeve had ridden up to expose the pale crescent scar.
Then his attention shifted past
her, down the narrow stairwell. “Were you followed?” “Lovely to see you too.” “Answer me.” “No.” “Are you certain?” “I took two buses, cut through Spitalfields Market, went through the kitchen of a Turkish café, and doubled back along Fournier Street. If anyone followed me, they’ve earned the privilege.”
The corner of his mouth
almost moved.
It made the ache beneath
her ribs sharper. He closed the door.
Rory stared at flaking green
paint while the chain scraped free and three deadbolts turned in succession.
Eva had always said one
lock discouraged amateurs, two discouraged professionals, and three discouraged ex-boyfriends.
Rory had never asked which
category Lucien occupied. The door opened again. “You should not have come,” he said. “You sent for me.” “I did no such thing.”
She pulled the folded note
from her pocket and slapped it against his chest.
He caught it before it
fell, his fingers brushing hers.
Even through the cold damp
of her skin, the contact struck hot. Rory stepped back. Lucien unfolded the paper. His expression changed by degrees: first irritation, then recognition, then something colder. The message consisted of seven words in precise black ink. COME ALONE. EVA’S FLAT. MIDNIGHT. IT’S LUCIEN. “You didn’t write it,” Rory said. “No.” “Brilliant.” The stairwell light
flickered
. From below came the clatter of pans and the rich, warm fug of cumin drifting up from the curry house.
Somewhere on Brick Lane, a
car horn blared. Ordinary sounds. Safe sounds.
They only made Lucien’s stillness
more alarming.
He caught her by the
elbow and pulled her inside. Rory stumbled over a stack of books, twisted free, and nearly crushed a scroll under her trainer. “Hands off.” Lucien shut the door, reset the chain, and drove all three deadbolts home. Eva’s flat had always looked as if a library had exploded in it, but tonight the wreckage felt deliberate. Books lay open across the floor. Notes had
been torn
from the walls. A chair rested on its side near the kitchenette, one leg split. Rain ticked against the single grimy window. Ptolemy crouched atop the wardrobe, tail swollen to twice its usual size, staring down with the betrayed fury of a minor god. Rory looked from the cat to the room. “Where’s Eva?” “Not here.” “I can see that.” “She left this morning.” “For where?” “She did not tell me.” Rory swung back to him. “Eva tells me when she changes shampoo.” “Perhaps she has grown secretive.” “Perhaps she doesn’t trust you.” His face closed. A cheap shot. The sort Evan had trained into her: find the tender place, press hard, call it self-defence. Shame rose sour in her throat, but Lucien spared her the need to apologise by crossing the room.
He moved with a slight
hitch. Rory noticed it because she had spent months noticing everything about him. The exact tilt of his head when someone lied. The way he tapped his cane twice before threatening violence. The clean spice of his cologne. The controlled grace that never failed unless he was badly hurt.
His cane leaned against Eva’s
desk. The ivory handle
was streaked
with blood. “Whose?” Rory asked. Lucien followed her gaze. “Not yours.” “That wasn’t my question.” “It rarely is.”
He folded the false note
and slipped it into his trouser pocket. Rory blocked his path. “You’re bleeding.” “I am aware.” “Are you dying?” “Not at present.” “You always were a smug bastard.” “And you always did mistake concern for hostility.” Her laugh came out thin. “I learned from the best.” This time the hit landed.
His amber eye narrowed; the
black one revealed nothing. Three months ago, in an alley behind Silas’ bar, he had kissed her as if restraint were a garment he could finally tear off. One hand at her waist. One cupping her jaw. Rain on his mouth and demon blood on his cuff.
She had kissed him back
until every sensible thought burned away.
Then he had whispered, Forgive
me, and vanished before dawn. Two days later, a woman with silver teeth had come looking for “Moreau’s little human weakness.” Rory still had the knife scar in her coat to prove it. Lucien had sent no explanation.
Only a black car to
watch the bar and a message through Silas: Stay away from me. Rory had obeyed.
Mostly because she feared what
she would do if she saw him again.
Now, infuriatingly, she wanted to
shove him into the wall and kiss the bruise on his throat. She settled for pointing at a sagging armchair. “Sit down.” “I beg your pardon?” “You’re listing.” “I do not list.” “You’re doing it elegantly, but you’re doing it.” “I have work to do.” “You’ve been stabbed.” His brows rose. “There’s blood on your shirt, Lucien.” He glanced down as if the spreading stain beneath his ribs were a discourteous guest. “A superficial wound.” “Sit, or I’ll knock you down and pretend it was gravity.” For a moment they stood close enough that she could see the fine gold ring around the pupil of his amber eye. Close enough to feel the unnatural heat rolling off him. Lucien smelled of rain, smoke, and iron.
Then Ptolemy gave an outraged
yowl from the wardrobe. Lucien inclined his head. “Outvoted.” He sat. Rory shrugged off the delivery bag and dumped it on a mound of books. In Eva’s bathroom she found bandages, antiseptic, three jars of graveyard dirt, and a first-aid tin labelled FOR PEOPLE, NOT POSSESSED OBJECTS. She returned to find Lucien holding his folded jacket against his side. “Shirt off,” she said. His gaze lifted to hers. “Don’t flatter yourself.” “I would not dare.” “You’ve dared worse.” Silence settled between them. Lucien unfastened his cuffs, then the buttons of his shirt. His fingers remained steady until the last one. There they faltered. Rory hated herself for seeing it. She hated him for allowing her to. He peeled the shirt back. Bruises patterned his lean torso in purple and black. The wound beneath his right ribs was narrow but deep, its edges stained a strange grey. Black veins feathered outward under the skin. “That’s not superficial.” “It is a matter of perspective.” “From whose perspective? The undertaker’s?” She knelt between his knees and soaked gauze with antiseptic. When she touched the wound, his
stomach
tightened beneath her hand. “Sorry,” she murmured. “I have experienced worse.” “Yes, I remember. You mentioned it every time I complained.” “I was attempting to reassure you.” “You’re terrible at reassurance.” “So I have gathered.” She cleaned away the blood. His skin was hotter than fever, and the black tracery recoiled from the antiseptic with an oily shimmer. “What did this?” “A blade forged in Avaros.” The realm of his father. Rory pressed fresh gauze against the wound. “Someone came a long way to stab you.” “London has excellent transport links.” Despite herself, she snorted. Lucien looked down at her. Something unguarded crossed his face, so swift she might have imagined it. He lifted a hand, hesitated, then tucked a wet strand of hair behind her ear. Rory went still. His knuckles skimmed her cheek. The touch was careful. It hurt more than cruelty would have. “Don’t,” she said. His hand dropped. She secured the bandage harder than necessary. He did not flinch, which annoyed her further. “Why are you here?” she asked. “Eva asked me to examine a translation.” “Before she disappeared?” “Yes.” “And the room?” “Was in this condition when I arrived.” “And the stabbing?” “Occurred shortly thereafter.” Rory sat back on her heels. “You fought someone in Eva’s flat.” “Three someones.” “Show-off.” “Only one stabbed me.” “That’s practically disappointing.” “Your standards have become demanding.” The old rhythm slipped between them too easily. It had always been like this: blades hidden in banter,
affection
disguised as annoyance. She had once believed patience would coax honesty from him. She had been wrong. She closed the first-aid tin. “Why did you leave?” Lucien’s face became
utterly
still. “Don’t tell me now isn’t the time. Someone forged your handwriting to lure me here, Eva’s missing, and you’re leaking infernal poison onto her upholstery. I think the evening has already abandoned good timing.” “I left because remaining would have endangered you.” “You endangered me by leaving me ignorant.” “I arranged protection.” “The men in the black car?” “Yes.” “They were dreadful. One read the same newspaper upside down for four hours.” “I did not hire them for their literary gifts.” Rory rose too
quickly
. Her knee struck the edge of the table, sending a tower of books sliding. Lucien caught the top three before they fell. “You don’t get to joke about it,” she said. “A silver-toothed lunatic put a knife to my throat and called me your weakness. I didn’t know who she was. I didn’t know why you’d gone. I didn’t know if that kiss meant anything or if you were just—” “Do not.” “Just what? Bored?” “Do not say it meant nothing.” His voice cut low and sharp through the room. Rory’s breath caught. Lucien set the books aside. He stood, ignoring the fresh red blooming through the bandage. “That kiss,” he said, “was the most selfish thing I have done in years. And I deal professionally in betrayal.” “That’s not romantic.” “It was not meant to be.” “Then what was it meant to be?” “The truth.” The word landed
softly
. Rory folded her arms to stop herself reaching for him. “You kissed me, apologised, and disappeared.” “Because I had spent months convincing certain interested parties that you were merely a courier who occasionally carried messages for me. Then I kissed you in an alley where two of my father’s agents could see.” “You knew they were there?” “I suspected.” “And you did it anyway?” His jaw flexed. “Yes.” “Why?” “Because you were bleeding. Because I believed, for one intolerable moment, that you might die. Because you looked at me and said my name as though I were a man worth finding in the dark.” His mismatched gaze held hers. “Because I wanted to.” Heat pressed behind her eyes. She refused to blink. “You should have told me.” “Yes.” “You should have trusted me.” “Yes.” “You hurt me.” At that, his composure cracked. Not dramatically. Lucien did nothing dramatically unless he wanted witnesses. His shoulders lowered by a fraction. His mouth tightened. “I know.” Rory had prepared for excuses. She had rehearsed speeches in the delivery lift, in the bath, at three in the morning while the pipes above Silas’ bar clanged like ghosts in armour. She had imagined his arrogance and her anger. She had never prepared for two quiet words. From the wardrobe, Ptolemy sneezed. Rory wiped her palms on her jeans. “What was on Eva’s translation?” “A contract.” Lucien watched her
carefully
. “Between a demon of Avaros and a human bloodline. Eva believed the human name had been mistranslated.” “And had it?” “Yes.” A noise sounded in the stairwell. Both of them froze. Not
footsteps
. A faint metallic scrape against the door. Lucien reached his cane in a single smooth motion. He twisted the ivory handle and drew out the thin concealed blade. Rory snatched the heaviest object within reach: an annotated dictionary of medieval Welsh curses. The first deadbolt turned. No key entered the lock. The second
began to
slide. Lucien moved in front of her. Rory stepped around him. “Absolutely not.” “Aurora.” “I’ve had enough of men deciding where I stand for my own good.” The third deadbolt shuddered. Lucien looked at her, blade angled low. His black eye
seemed to
drink the room’s light; the amber one held something fiercer. “Very well,” he said. “On my left.” She took position there. The scraping stopped. A soft hiss came from the other side of the door. Black smoke threaded through the keyhole, curled along the paint, and formed five words. BRING US THE CARTER WOMAN. Rory’s
stomach
dropped. Lucien read the message. Every trace of
warmth
left his face. “You said the contract named a human bloodline,” Rory whispered. “Yes.” Outside, something dragged a claw down the door. “What name?” His hand found hers. His grip was hot and hard and, for once, entirely honest. “Carter.” The lights went out. Ptolemy launched from the wardrobe with a shriek. Rory heard books tumble, Lucien curse in French, and the front door groan in its frame. She tightened her fingers around his. “I suppose,” he said in the dark, “this is a poor moment to mention that I am still in love with you.” Her heart
seemed to
strike every rib at once. “You suppose correctly.” The door split down the middle. Lucien pulled her back as claws punched through the wood. Rory swung the dictionary with both hands. It connected with a wet crack, and whatever waited outside howled. Lucien laughed, breathless and astonished. Rory grinned into the dark. “If we survive this, you’re explaining everything.” “If we survive this, I will tell you anything you ask.” “No disappearing.” “No.” “No hired idiots with upside-down newspapers.” “Agreed.” “And you’re buying dinner.” The broken door burst inward. Lucien’s blade flashed. “Aurora, there is nothing I would like more.”
Then they met the dark
together.
created_at
"2026-07-09T18:07:38.934Z"
7/9/2026, 6:07:38 PM
model
"openai/gpt-5.6-sol-20260709"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
521
moderation_latency
(null)
generation_time
58095
tokens_prompt
808
tokens_completion
4136
native_tokens_prompt
753
native_tokens_completion
3170
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)
num_fetches
(null)
web_search_engine
(null)
origin
"https://ncbench.com/"
is_byok
false
finish_reason
"stop"
native_finish_reason
"completed"
service_tier
"default"
usage
0.098865
router
(null)
provider_responses
0
endpoint_id
"a54c5de0-89bf-4ad7-a212-cf977eed918a"
id
"resp_011f785493d22aa1016a4fe36afe548190a407663f52f567d2"
is_byok
false
latency
175
model_permaslug
"openai/gpt-5.6-sol-20260709"
provider_name
"OpenAI"
status
200
user_agent
"langchainjs-openai/1.0.0 ((node/v24.18.0; linux; x64))"
http_referer
(null)
request_id
"req-1783620458-1A3mKtqpSfcPNziUuF6R"
session_id
(null)
preset_id
(null)
api_type
"completions"
id
"gen-1783620458-4mHeBZaemZa1C8TyqCDR"
upstream_id
"resp_011f785493d22aa1016a4fe36afe548190a407663f52f567d2"
total_cost
0.098865
cache_discount
(null)
upstream_inference_cost
0
provider_name
"OpenAI"
response_cache_source_id
(null)
data_region
"global"
Evaluation details
Result
Evaluator
Details
Meta Data
100.00%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
16
adverbTagCount
0
adverbTags
(empty)
dialogueSentences
137
tagDensity
0.117
leniency
0.234
rawRatio
0
effectiveRatio
0
89.53%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
2387
totalAiIsmAdverbs
5
found
0
adverb
"utterly"
count
1
1
adverb
"quickly"
count
1
2
adverb
"softly"
count
1
3
adverb
"carefully"
count
1
4
adverb
"very"
count
1
highlights
0
"utterly"
1
"quickly"
2
"softly"
3
"carefully"
4
"very"
100.00%
AI-ism character names
Target: 0 AI-default names (17 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
100.00%
AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
83.24%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
2387
totalAiIsms
8
found
0
word
"flickered"
count
1
1
word
"silence"
count
1
2
word
"stomach"
count
2
3
word
"affection"
count
1
4
word
"footsteps"
count
1
5
word
"absolutely"
count
1
6
word
"warmth"
count
1
highlights
0
"flickered"
1
"silence"
2
"stomach"
3
"affection"
4
"footsteps"
5
"absolutely"
6
"warmth"
100.00%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
1
maxInWindow
1
found
0
label
"stomach dropped/sank"
count
1
highlights
0
"stomach dropped"
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
0
narrationSentences
204
matches
(empty)
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
0
hedgeCount
3
narrationSentences
204
filterMatches
(empty)
hedgeMatches
0
"began to"
1
"seemed to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
326
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
repeatedSegmentCount
0
maxSentenceWordsSeen
40
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
2387
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
26
unquotedAttributions
0
matches
(empty)
54.67%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
80
wordCount
1626
uniqueNames
17
maxNameDensity
1.91
worstName
"Rory"
maxWindowNameDensity
3
worstWindowName
"Lucien"
discoveredNames
Lucien
26
Moreau
1
Rory
31
Golden
1
Empress
1
Brick
1
Lane
1
Evan
1
Eva
4
One
3
Forgive
1
Silas
1
Stay
1
Ptolemy
4
Heat
1
Welsh
1
French
1
persons
0
"Lucien"
1
"Moreau"
2
"Rory"
3
"Evan"
4
"Eva"
5
"One"
6
"Silas"
7
"Stay"
8
"Ptolemy"
9
"Heat"
places
0
"Brick"
1
"Lane"
2
"French"
globalScore
0.547
windowScore
0.667
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
118
glossingSentenceCount
0
matches
(empty)
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
0
per1kWords
0
wordCount
2387
matches
(empty)
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
0
totalSentences
326
matches
(empty)
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
220
mean
10.85
std
12.72
cv
1.172
sampleLengths
0
16
1
10
2
64
3
6
4
1
5
5
6
37
7
1
8
52
9
3
10
5
11
2
12
1
13
3
14
30
15
15
16
4
17
40
18
4
19
7
20
4
21
5
22
36
23
3
24
16
25
10
26
7
27
6
28
1
29
1
30
43
31
10
32
19
33
13
34
73
35
10
36
2
37
4
38
4
39
2
40
5
41
12
42
5
43
5
44
3
45
37
46
6
47
48
48
13
49
3
100.00%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
3
totalSentences
204
matches
0
"was rumpled"
1
"been torn"
2
"was streaked"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
0
totalVerbs
291
matches
(empty)
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
0
semicolonCount
2
flaggedSentences
2
totalSentences
326
ratio
0.006
matches
0
"His amber eye narrowed; the black one revealed nothing."
1
"His black eye seemed to drink the room’s light; the amber one held something fiercer."
100.00%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1057
adjectiveStacks
0
stackExamples
(empty)
adverbCount
35
adverbRatio
0.033112582781456956
lyAdverbCount
10
lyAdverbRatio
0.00946073793755913
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
326
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
326
mean
7.32
std
6.2
cv
0.847
sampleLengths
0
16
1
10
2
11
3
19
4
15
5
9
6
10
7
6
8
1
9
2
10
3
11
13
12
24
13
1
14
24
15
18
16
10
17
3
18
5
19
2
20
1
21
3
22
30
23
7
24
8
25
4
26
17
27
15
28
8
29
4
30
7
31
4
32
5
33
14
34
10
35
12
36
3
37
4
38
12
39
10
40
2
41
2
42
1
43
2
44
6
45
1
46
1
47
4
48
20
49
8
44.48%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
18
diversityRatio
0.2791411042944785
totalSentences
326
uniqueOpeners
91
100.00%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
8
totalSentences
183
matches
0
"Of course not."
1
"Then his attention shifted past"
2
"Somewhere on Brick Lane, a"
3
"Then he had whispered, Forgive"
4
"Only a black car to"
5
"Mostly because she feared what"
6
"Then Ptolemy gave an outraged"
7
"Then they met the dark"
ratio
0.044
86.67%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
61
totalSentences
183
matches
0
"He wore shirtsleeves instead of"
1
"His platinum hair, usually slicked"
2
"She tightened her grip on"
3
"It smelled of ginger, chilli"
4
"His gaze swept over her:"
5
"He lingered at her left"
6
"It made the ache beneath"
7
"He closed the door."
8
"She pulled the folded note"
9
"He caught it before it"
10
"His expression changed by degrees:"
11
"They only made Lucien’s stillness"
12
"He caught her by the"
13
"His face closed."
14
"He moved with a slight"
15
"His cane leaned against Eva’s"
16
"He folded the false note"
17
"Her laugh came out thin."
18
"His amber eye narrowed; the"
19
"She had kissed him back"
ratio
0.333
47.43%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
151
totalSentences
183
matches
0
"The door opened as far"
1
"He wore shirtsleeves instead of"
2
"The white fabric was rumpled,"
3
"His platinum hair, usually slicked"
4
"The other held the depthless"
5
"Neither softened when he saw"
6
"She tightened her grip on"
7
"It smelled of ginger, chilli"
8
"His gaze swept over her:"
9
"He lingered at her left"
10
"The corner of his mouth"
11
"It made the ache beneath"
12
"He closed the door."
13
"Rory stared at flaking green"
14
"Eva had always said one"
15
"Rory had never asked which"
16
"The door opened again."
17
"She pulled the folded note"
18
"He caught it before it"
19
"Rory stepped back."
ratio
0.825
54.64%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
2
totalSentences
183
matches
0
"Even through the cold damp"
1
"Now, infuriatingly, she wanted to"
ratio
0.011
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
64
technicalSentenceCount
1
matches
0
"He glanced down as if the spreading stain beneath his ribs were a discourteous guest."
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
16
uselessAdditionCount
0
matches
(empty)
100.00%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
12
fancyCount
2
fancyTags
0
"she murmured (murmur)"
1
"Rory whispered (whisper)"
dialogueSentences
137
tagDensity
0.088
leniency
0.175
rawRatio
0.167
effectiveRatio
0.029
92.0222%