NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-07-09-01KX40B7EY7DPWG3ZXQ9ERJSPY
Run Details
Model:
GPT-5.6 Sol (Reasoning)
Test:
Bad Writing Habits
Scenario:
Horror: alone in an eerie place at night
Duration:
1m 4s
Cost:
$0.104000
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
90.34%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
55.58%
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)
50.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)
84.89%
Em-dash & semicolon overuse
(details)
90.72%
Purple prose (modifier overload)
(details)
100.00%
Repeated phrase echo
(details)
100.00%
Sentence length variance
(details)
42.17%
Sentence opener variety
(details)
100.00%
Adverb-first sentence starts
(details)
100.00%
Pronoun-first sentence starts
(details)
83.73%
Subject-first sentence starts
(details)
67.80%
Subordinate conjunction sentence starts
(details)
100.00%
Technical jargon density
(details)
100.00%
Useless dialogue additions
(details)
7.14%
Dialogue tag variety (said vs. fancy)
(details)
89.0793%
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> <location id="861" name="The Fae Grove" aliases="Isolde's grove, Richmond grove, the Grove" realm="Earth (Fae-touched)"> <parkLocation>Richmond Park</parkLocation> <standingStones>ancient oak standing stones mark the boundary</standingStones> <timeBehavior>time moves differently — an hour inside can be minutes or days outside</timeBehavior> <flora>wildflowers bloom year-round</flora> <description>A hidden clearing that exists in a pocket between Earth and the Fae realm.</description> </location> <item id="2001" name="Heartstone Pendant" aliases="the pendant, Heartstone" type="Artifact" origin="Dymas"> <gemstoneColor>deep crimson</gemstoneColor> <chainMaterial>silver chain</chainMaterial> <size>roughly the size of a thumbnail</size> <behavior>pulses faintly with warmth when near a Hel portal</behavior> <glow>faint inner glow</glow> <description>Given to Aurora by an unknown benefactor.</description> </item> </codex> Write a fully fleshed out scene of at least 1000 words in the horror genre. A character is alone in a strange, isolated place at night. They came here for a reason, but something feels off from the moment they arrive. The wrongness builds slowly — sounds that shouldn't be there, things that move at the edge of vision, a growing certainty that they are not alone. Build tension through restraint, not through gore. Use the codex entries above as your world reference for the character and setting. Only include the prose of the scene without any markdown or commentary.
Model response
Messages
Meta
AI
By the time Aurora found
the first oak stone, the moon had vanished.
It had been there when
she left the path: a thin white hook caught above Richmond Park, bright enough to silver the wet grass.
Now the sky hung black
and depthless between the trees. No clouds had moved in. No mist softened the air. The moon was simply gone, as if she had crossed behind something too large to see.
Rory stopped with one boot
sunk in mud.
The standing stone leaned ahead
of her, waist-high and furred with moss.
At least, she had always
thought they were stones. Up close, its surface showed the whorls and deep vertical scars of ancient oak, petrified to a dark mineral hardness. Rain glimmered in the grooves, though it had not rained that evening. She took out her phone. 11:43 p.m. No signal. Predictable.
The message was still open
on the screen.
IF YOU WANT TO KNOW
WHO GAVE YOU THE HEARTSTONE, COME TO THE GROVE ALONE. MIDNIGHT. ENTER BY THE WESTERN BOUNDARY. No name. No number.
Just a blank sender field
and those three clipped sentences.
Every sensible instinct told her
to turn around.
Rory had spent the walk
from the road listing the reasons why this was idiotic, beginning with anonymous midnight summons and ending with the word alone.
Eva would have called it
bait.
Silas would have used more
colourful language, then locked the door and hidden her boots. But the pendant had reacted when the message arrived. It reacted now. Beneath her coat, the Heartstone gave a faint
throb
of
warmth
against her breastbone.
Rory slipped the phone away
and touched the gemstone through her jumper.
Its pulse answered her fingers—not
quite a heartbeat, but near enough to make her skin crawl. “All right,” she murmured. “You win.”
Her voice fell dead at
her feet.
That was the first thing
truly
wrong with the grove. Not the missing moon. Not the wet oak or the impossible message. The
silence
. Richmond Park was never silent.
Even at this hour there
should have been traffic breathing beyond the trees, aircraft muttering overhead, foxes barking like murdered women.
There should have been wind
in the branches. The scrape of beetles. Her own breath. She
could feel
herself breathing, but she could barely hear it. Rory stepped past the marker. Sound returned all at once. Leaves whispered high above. Water dripped somewhere to her left. Far off in the darkness, a bird gave a low, liquid call. Three notes. A pause. Three notes again. The path beyond the boundary was too narrow to be a path, only a dark seam through waist-high grass. Wildflowers crowded it in bright, impossible colour. Bluebells, poppies, primroses, foxgloves—flowers that had no business blooming together, much less in November.
Their petals remained open to
the night. They all inclined toward her. Not enough to call movement. Only a slight communal tilt, as though a breeze touched them and nothing else. Rory stared until her eyes watered. Then she took another step, and the flowers nearest her turned a fraction more. She nearly backed out. The Heartstone warmed again.
It was not only heat
now. A faint crimson glow seeped through the weave of her jumper, dim as banked coal.
She pulled the chain free
and held the pendant in her palm. The gemstone was roughly the size of her thumbnail, smooth around its silver setting.
Its inner light strengthened toward
the heart of the grove. Near a Hel portal. That was what the
warmth
meant. The thought landed cold in her
stomach
. “Of course it does,” she whispered. The bird called again. Three notes, but closer. Rory closed her fingers around the pendant and continued. The path bent between the trunks.
She counted the turns without
meaning to: left, right, right, left. A habit from years of delivering food into estates designed by architects with grudges. She kept track of slopes, landmarks, any peculiarity that might guide her back. A forked birch. A fallen tree split by lightning. A patch of white mushrooms shaped like little ears. At the fifth turn, she passed the forked birch again. Rory stopped. The strip of pale bark hung from the left branch exactly as before. Beneath it, the same knot resembled a closed eye. She glanced behind her. The path ran straight for ten yards and then curved out of sight.
She had not walked in
a circle. She was certain of that. The wet ground showed no footprints. Not hers. Not anything else’s.
She lifted one boot and
examined the sole. Mud clogged the tread. Yet the grass behind her stood unbent, jewelled with
perfect
beads of moisture. The bird gave its three-note call from directly overhead. Rory looked up. There was no bird. The branches knitted together against the black sky, their leaves trembling though the air below remained still. Something pale shifted behind the canopy. Too broad for wings. Too smooth for bark.
She dropped her gaze before
she could decide what she had seen. “Keep moving,” she told herself. The words sounded clearer now. Too clear. They travelled ahead of her in a thin
whisper
, threading between the trees. Keep moving. Moving. Moving. The last repetition did not sound like her. Rory stood
very
still. The grove listened with her. A drop of cold water struck the back of her neck. She flinched and wiped it away. Her fingers came back clean. Then
footsteps
began behind her. Soft. Unhurried. One after another in the grass. Rory did not turn. Every childhood warning she had ever heard—Welsh, Irish, Christian, older than any of them—
seemed to
rise at once in her memory. Don’t answer when the dark calls your name. Don’t follow lights into the trees. Don’t look behind you when you
know
what waits there cannot be human. The
footsteps
stopped when she stopped. She walked again. They followed. Not matching her pace. That would have been easier. They came just after each of her steps, delayed by half a second, as though something
were learning
the rhythm. Left. A step behind. Right. A step behind. Rory tightened her grip around the Heartstone until the silver setting bit her palm. She
tried to
judge the distance by sound. Six feet. Perhaps eight. Close enough that she should hear breathing. There was none. She reached the white mushrooms. They covered the ground on both sides of the path now, hundreds of cupped shapes turned toward her. Ears, she thought again, and wished she had not. Her phone
vibrated
in her pocket. The
footsteps
ceased. Rory snatched out the phone. The screen showed an incoming call. No number. No name. She declined it. It rang again instantly. She declined it again, thumb shaking once despite herself. The third time, the screen displayed a name. RORY. Her own contact photograph
appeared beneath it, one Eva had taken in the kitchen above
Silas’ bar. Rory
was laughing
, head turned away from the camera, black hair tucked behind one ear. The call continued to
pulse
. She pressed the side button until the screen went dark. From behind her, in her own voice, someone said, “Answer it.” Rory ran. The path bucked beneath her feet. Branches snatched at her coat and caught in her hair. The flowers streamed away on either side, blurred streaks of white and red. She kept the pendant clenched in one hand, the other raised to shield her face. Something followed without haste. She could hear it walking while she sprinted. Step. Step. Step. Always the same distance behind. The path split around a vast oak. Rory veered left, then changed her mind and cut right at the last instant. Quick, thoughtless, the sort of decision that had saved her from bicycles, fists, and London traffic. The
footsteps
went left. For one breath, triumph flashed hot through her. Then the oak spoke. “Aurora.” Her father’s voice. She struck the trunk shoulder-first and reeled away. The bark was wet and warm. A seam opened down its centre, too narrow and deep to be a natural crack. Air sighed from it, carrying the smell of old paper and the aftershave Brendan Carter had worn to court. “Aurora, love,” the tree said. “Wait.” She fled before it could say anything else. The grove opened abruptly. Rory stumbled into the clearing and almost fell. Wildflowers carpeted the ground beneath a sky full of stars. The moon hung low and round now,
no longer a crescent but
bloated white, bright enough to cast her shadow before her. At the centre of the clearing stood a ring of ancient oak markers. Within that ring, the earth sloped inward like the rim of a shallow bowl. Someone waited on the far side. A woman, Rory thought. Tall and motionless, dressed in something pale that hung to the grass. Long hair concealed her face. Rory’s lungs burned. She forced herself not to bend over, not to show weakness to whatever watched from beneath that veil of hair. “You sent the message?” The figure did not answer. The Heartstone blazed in Rory’s fist. Heat lanced through her palm. She opened her hand with a hiss. Crimson light ran between her fingers and painted the underside of her chin. The pendant tugged on its chain, straining toward the hollow at the centre of the stones. Not toward the woman. Toward the ground. Rory looked down. The flowers around her boots had closed. Every bloom in the clearing
was folding
inward, petals drawing tight one after another in widening circles. The motion
raced
away from her until the entire meadow lay bristling with shut buds. Except within the ring. There, the flowers remained open. They were colourless beneath the moon, their centres dark and
glistening
. The woman lifted her head. Rory’s body locked. The hair fell aside, but there was no face behind it. Not darkness, not a wound, not blank skin. There was simply nothing her eyes could hold. Her gaze slid from the pale curve of a forehead to the white column of a throat without crossing anything between. Each time she
tried to
focus, she found herself looking at the trees beyond. The faceless woman raised one arm and pointed behind Rory. No. Rory did not turn. The thing on the path had stopped at the edge of the clearing. She knew it without looking. She felt its attention settle between her shoulder blades, intimate as a fingertip. The woman pointed again. A voice behind Rory said, “She wants you to see.” It was Evan’s voice this time. Not angry. He had rarely begun angry. He had begun soft, reasonable, almost wounded by the trouble she caused him. That gentleness had kept her still more effectively than shouting ever could. “Turn around, Laila.” The old name entered her like a sliver of ice. Rory’s fear changed shape. It remained fear, but anger hardened around it. The thing had reached into her and chosen a weapon. That meant it wanted a reaction. It needed something from her—her attention, perhaps, or recognition. She stared at the faceless woman. “You’re not who asked me here.” The woman’s head tilted. Behind Rory, Evan’s voice said, “You never were as clever as you thought.” The words were
perfect
. The little sigh before them was
perfect
. Rory dug her thumbnail into the crescent-shaped scar on her left wrist. The
familiar
ridge steadied her. This was not a Cardiff flat with the door locked and her phone smashed. She was twenty-five. She
was standing
in a Fae-touched grove with an artifact burning in her hand, and whatever spoke behind her had made a mistake. Evan had never called her Rory. The Heartstone pulled toward the hollow again. Rory studied the ring. The ancient markers were evenly spaced except for one gap near the faceless woman. A boundary with an opening. A doorway. Or a trap made to resemble one. The pendant’s heat rose until pain sharpened her thoughts. Near a Hel portal. Not inside one. Near. She
scanned
the clearing for differences. Moonlit flowers. Standing stones. The woman. Her own shadow stretching ahead— Her shadow moved. Only an inch. A subtle ripple through the shoulders, as though it had drawn breath. Rory held still. The shadow lifted its head. Her own did not. She looked at the moon. It hung behind her, so her shadow should indeed fall forward. But the faceless woman cast none. Neither did the stones.
Only Rory’s black silhouette reached
across the closed flowers, long and narrow, its hand clenched around a shape that glowed red.
Then a second shadow joined
it. This one stretched from behind her. Tall. Jointed wrongly. Its arms hung below its knees. “Turn around,” said her own voice at her ear. Rory hurled the pendant. Not away. Into the centre of the ring. The chain flashed silver through the air. The crimson stone struck the hollow and vanished with a sound like glass dropped into deep water. The earth opened. There was no cracking, no violence. One instant the flowers filled the ring; the next, a circular gulf yawned beneath them, blacker than the sky. Heat rolled from it carrying the dry smell of stone cellars, burnt metal, and something old enough to have forgotten daylight. The faceless woman recoiled. The thing behind Rory screamed without sound. Pressure clamped over the clearing. Rory’s teeth jarred together. The flowers flattened. Trees bowed inward, branches clawing at the stars. Her shadow tore free of her feet and slid shrieking across the grass toward the pit, though the noise came from inside Rory’s skull. The second shadow went with it. For a heartbeat, the shape behind her resisted. Its long arms thrashed across the ground. Faces
flickered
through its darkness—her father, her mother, Eva, Evan, Rory herself—each mouth open in voiceless appeal. Rory still did not turn. The shadow vanished over the rim. The pit snapped shut. Darkness swallowed the clearing. Rory dropped to one knee, palms in the wet flowers. Ordinary night sounds crashed back around her: wind, leaves, the distant yelp of a fox. Somewhere an aircraft passed overhead. Her phone chimed. 12:01 a.m. She looked up. The clearing was empty. No woman. No ring of oak markers.
Only a shallow patch of
grass beneath a thin crescent moon. The Heartstone lay inches from her hand, its glow faint again. She snatched it up and fastened the chain around her neck with clumsy fingers. A path waited between the trees. Beyond it stood the western boundary marker. Too easy. Rory rose
slowly
. Mud streaked her knees. Her shoulder ached where she had struck the oak, and a red line crossed her palm from the pendant’s setting. She could see the park beyond the marker. A distant lamp. The pale ribbon of the path. Safety, or something wearing its shape. Rory stepped toward it. The wildflowers did not turn to follow her. The trees made no voices. Nothing moved at the edge of her sight. At the boundary, she paused. Her footprints led out of the grove ahead of her. Fresh impressions darkened the mud, one after another, beginning at her feet and continuing into Richmond Park. They were the same size as her boots. In the distance, beyond the ancient oak marker, a woman with straight black hair walked away beneath the moon. Rory watched herself reach the path. The other woman stopped.
Very slowly, without turning, she
raised one hand. Rory’s phone
began to
ring.
created_at
"2026-07-09T17:55:55.496Z"
7/9/2026, 5:55:55 PM
model
"openai/gpt-5.6-sol-20260709"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
1501
moderation_latency
(null)
generation_time
63740
tokens_prompt
812
tokens_completion
4241
native_tokens_prompt
742
native_tokens_completion
3343
native_tokens_completion_images
0
native_tokens_reasoning
51
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.104
router
(null)
provider_responses
0
endpoint_id
"a54c5de0-89bf-4ad7-a212-cf977eed918a"
id
"resp_0df5f3016ff44c25016a4fe0ab949c819492ec5a6dc4df95ee"
is_byok
false
latency
204
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-1783619755-knbags1Us4z3UxGIbJbv"
session_id
(null)
preset_id
(null)
api_type
"completions"
id
"gen-1783619755-W2pEGn8jIrhyj44SZRYg"
upstream_id
"resp_0df5f3016ff44c25016a4fe0ab949c819492ec5a6dc4df95ee"
total_cost
0.104
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
8
adverbTagCount
0
adverbTags
(empty)
dialogueSentences
14
tagDensity
0.571
leniency
1
rawRatio
0
effectiveRatio
0
90.34%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
2589
totalAiIsmAdverbs
5
found
0
adverb
"truly"
count
1
1
adverb
"very"
count
2
2
adverb
"slowly"
count
2
highlights
0
"truly"
1
"very"
2
"slowly"
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)
55.58%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
2589
totalAiIsms
23
found
0
word
"predictable"
count
1
1
word
"throb"
count
1
2
word
"warmth"
count
2
3
word
"pulse"
count
2
4
word
"silence"
count
1
5
word
"could feel"
count
1
6
word
"stomach"
count
1
7
word
"perfect"
count
3
8
word
"whisper"
count
1
9
word
"footsteps"
count
4
10
word
"vibrated"
count
1
11
word
"raced"
count
1
12
word
"glistening"
count
1
13
word
"familiar"
count
1
14
word
"scanned"
count
1
15
word
"flickered"
count
1
highlights
0
"predictable"
1
"throb"
2
"warmth"
3
"pulse"
4
"silence"
5
"could feel"
6
"stomach"
7
"perfect"
8
"whisper"
9
"footsteps"
10
"vibrated"
11
"raced"
12
"glistening"
13
"familiar"
14
"scanned"
15
"flickered"
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
0
narrationSentences
339
matches
(empty)
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
1
hedgeCount
4
narrationSentences
339
filterMatches
0
"know"
hedgeMatches
0
"seemed to"
1
"tried to"
2
"began to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
345
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
repeatedSegmentCount
0
maxSentenceWordsSeen
26
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
2582
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
11
unquotedAttributions
0
matches
(empty)
50.00%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
82
wordCount
2536
uniqueNames
20
maxNameDensity
1.66
worstName
"Rory"
maxWindowNameDensity
3.5
worstWindowName
"Rory"
discoveredNames
Aurora
1
Richmond
3
Park
3
Heartstone
6
November
1
Hel
2
Welsh
1
Irish
1
Christian
1
Eva
3
Rory
42
London
1
Brendan
1
Carter
1
Evan
4
Cardiff
1
Fae-touched
1
Three
3
Don
3
Step
3
persons
0
"Aurora"
1
"Heartstone"
2
"Eva"
3
"Rory"
4
"Brendan"
5
"Carter"
6
"Evan"
7
"Three"
places
0
"Richmond"
1
"Park"
2
"November"
3
"Hel"
4
"London"
5
"Cardiff"
6
"Fae-touched"
globalScore
0.672
windowScore
0.5
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
183
glossingSentenceCount
2
matches
0
"not quite a heartbeat, but near enough to make her skin crawl"
1
"appeared beneath it, one Eva had taken in the kitchen above"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
2
per1kWords
0.775
wordCount
2582
matches
0
"not quite a heartbeat, but near enough to make her skin crawl"
1
"no longer a crescent but"
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
0
totalSentences
345
matches
(empty)
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
196
mean
13.17
std
14.37
cv
1.091
sampleLengths
0
13
1
60
2
8
3
53
4
5
5
2
6
3
7
8
8
21
9
14
10
55
11
9
12
3
13
14
14
28
15
6
16
7
17
24
18
41
19
11
20
5
21
5
22
22
23
2
24
2
25
3
26
47
27
5
28
19
29
20
30
4
31
4
32
57
33
4
34
6
35
7
36
6
37
4
38
4
39
9
40
62
41
10
42
2
43
22
44
29
45
6
46
5
47
25
48
9
49
3
100.00%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
0
totalSentences
339
matches
(empty)
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
4
totalVerbs
420
matches
0
"were learning"
1
"was laughing"
2
"was folding"
3
"was standing"
84.89%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
8
semicolonCount
1
flaggedSentences
7
totalSentences
345
ratio
0.02
matches
0
"Its pulse answered her fingers—not quite a heartbeat, but near enough to make her skin crawl."
1
"Bluebells, poppies, primroses, foxgloves—flowers that had no business blooming together, much less in November."
2
"Every childhood warning she had ever heard—Welsh, Irish, Christian, older than any of them—seemed to rise at once in her memory."
3
"It needed something from her—her attention, perhaps, or recognition."
4
"Her own shadow stretching ahead—"
5
"One instant the flowers filled the ring; the next, a circular gulf yawned beneath them, blacker than the sky."
6
"Faces flickered through its darkness—her father, her mother, Eva, Evan, Rory herself—each mouth open in voiceless appeal."
90.72%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1166
adjectiveStacks
0
stackExamples
(empty)
adverbCount
59
adverbRatio
0.05060034305317324
lyAdverbCount
11
lyAdverbRatio
0.009433962264150943
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
345
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
345
mean
7.48
std
5.17
cv
0.691
sampleLengths
0
13
1
24
2
10
3
5
4
5
5
16
6
8
7
12
8
9
9
20
10
12
11
5
12
2
13
2
14
1
15
8
16
15
17
1
18
5
19
2
20
2
21
10
22
8
23
26
24
6
25
15
26
9
27
3
28
14
29
12
30
16
31
4
32
2
33
7
34
10
35
4
36
8
37
2
38
5
39
21
40
8
41
4
42
3
43
11
44
5
45
5
46
4
47
6
48
12
49
2
42.17%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
27
diversityRatio
0.2927536231884058
totalSentences
345
uniqueOpeners
101
100.00%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
15
totalSentences
295
matches
0
"At least, she had always"
1
"Just a blank sender field"
2
"Only a slight communal tilt,"
3
"Then she took another step,"
4
"Too broad for wings."
5
"Too smooth for bark."
6
"Then footsteps began behind her."
7
"Always the same distance behind."
8
"Then the oak spoke."
9
"Only an inch."
10
"Only Rory’s black silhouette reached"
11
"Then a second shadow joined"
12
"Somewhere an aircraft passed overhead."
13
"Only a shallow patch of"
14
"Very slowly, without turning, she"
ratio
0.051
100.00%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
70
totalSentences
295
matches
0
"It had been there when"
1
"She took out her phone."
2
"It reacted now."
3
"Its pulse answered her fingers—not"
4
"Her voice fell dead at"
5
"Her own breath."
6
"She could feel herself breathing,"
7
"Their petals remained open to"
8
"They all inclined toward her."
9
"She nearly backed out."
10
"It was not only heat"
11
"She pulled the chain free"
12
"Its inner light strengthened toward"
13
"She counted the turns without"
14
"She kept track of slopes,"
15
"She glanced behind her."
16
"She had not walked in"
17
"She was certain of that."
18
"She lifted one boot and"
19
"She dropped her gaze before"
ratio
0.237
83.73%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
222
totalSentences
295
matches
0
"It had been there when"
1
"The moon was simply gone,"
2
"Rory stopped with one boot"
3
"The standing stone leaned ahead"
4
"Rain glimmered in the grooves,"
5
"She took out her phone."
6
"The message was still open"
7
"Every sensible instinct told her"
8
"Rory had spent the walk"
9
"Eva would have called it"
10
"Silas would have used more"
11
"It reacted now."
12
"Rory slipped the phone away"
13
"Its pulse answered her fingers—not"
14
"Her voice fell dead at"
15
"That was the first thing"
16
"Richmond Park was never silent."
17
"There should have been wind"
18
"The scrape of beetles."
19
"Her own breath."
ratio
0.753
67.80%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
4
totalSentences
295
matches
0
"By the time Aurora found"
1
"Now the sky hung black"
2
"IF YOU WANT TO KNOW"
3
"Even at this hour there"
ratio
0.014
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
95
technicalSentenceCount
2
matches
0
"She kept track of slopes, landmarks, any peculiarity that might guide her back."
1
"Only Rory’s black silhouette reached across the closed flowers, long and narrow, its hand clenched around a shape that glowed red."
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
8
uselessAdditionCount
0
matches
(empty)
7.14%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
7
fancyCount
2
fancyTags
0
"she murmured (murmur)"
1
"she whispered (whisper)"
dialogueSentences
14
tagDensity
0.5
leniency
1
rawRatio
0.286
effectiveRatio
0.286
89.0793%