NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-03-09-01KKABVYEPJQB9GW9NAXA9RGAK
Run Details
Model:
GPT-5.4 (Reasoning, Low)
Test:
Bad Writing Habits
Scenario:
Horror: alone in an eerie place at night
Duration:
1m 6s
Cost:
$0.041455
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
94.95%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
49.52%
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)
83.33%
Name drop frequency
(details)
100.00%
Narrator intent-glossing
(details)
48.56%
"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)
99.09%
Purple prose (modifier overload)
(details)
100.00%
Repeated phrase echo
(details)
100.00%
Sentence length variance
(details)
49.52%
Sentence opener variety
(details)
100.00%
Adverb-first sentence starts
(details)
100.00%
Pronoun-first sentence starts
(details)
73.51%
Subject-first sentence starts
(details)
27.03%
Subordinate conjunction sentence starts
(details)
100.00%
Technical jargon density
(details)
100.00%
Useless dialogue additions
(details)
91.18%
Dialogue tag variety (said vs. fancy)
(details)
90.5566%
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> <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> Continue the story using the following instructions: <instructions> 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. </instructions>
Model response
Messages
Meta
AI
Aurora slipped through the last
line of oaks and stopped with one boot half sunk in wet moss.
The Grove opened in front
of her like a held breath.
The standing stones rose from
the earth in a broken ring, black with rain, their faces furred with silver lichen.
Wildflowers spread between them in
pale drifts that had no business blooming in November. Moonlight pooled on white foxgloves, on bluebells, on a scatter of red poppies that looked almost painted there.
The whole clearing sat too
still, tucked inside Richmond Park and nowhere in it.
She pulled her coat tighter
and looked back.
The trees behind her stood
shoulder to shoulder, trunks close, branches woven into a wall.
She could still see the
path she had taken, a dark cut through bracken and roots, yet it already looked longer than it should have. Farther than the few minutes she knew she’d walked. “Brilliant,” she muttered. “That started well.” Her voice fell flat. No night birds answered. No wind moved through the canopy.
Even the city had gone
missing. No tyres on distant roads. No aircraft. No hum from London at all. The
silence
had shape here.
It pressed against her ears
until she wanted to clear them.
She reached under her jumper
and drew out the Heartstone pendant.
The crimson gem sat warm
against her palm, warmer than skin, its faint inner glow breathing in and out like a sleeping
pulse
. “You dragged me out here,”
she told it
. “So do something useful.”
The stone brightened for a
beat, then settled.
She let out a dry
laugh that didn’t reach anywhere and stepped into the clearing.
Her torch cut a pale
beam across the flowers and caught on the nearest standing stone.
Scratches ran over the rock
in looping marks she had first taken for weathering until she saw their rhythm, too deliberate, too narrow, rows buried under moss. She moved closer. The beam shook once in her hand. Letters, perhaps. Or not letters. Cuts and hooks and spirals that made her eyes slip off them. She angled the torch away. The
warmth
in the pendant deepened.
She had not come here
on a whim. Three nights of restless sleep, three mornings with the pendant hot enough to sting, three deliveries out west where she kept catching the same impossible scent of frost and bonfire smoke in doorways with no fire near them. By this evening the pendant had felt almost feverish against her throat.
She had stood in the
narrow kitchen at Golden Empress with grease in the air and orders flying, and known with a cold, clear certainty that if she ignored it again, something would force the issue. So she had come after closing, helmet under one arm, then left the moped by the gate when the engine cut out on the second attempt and refused to start. That part stayed with her now. The moped never failed.
It coughed through sleet, through
Cardiff rain, through London traffic that treated lanes as a rumour. Tonight it had died the moment the park swallowed the road noise. No sputter. No warning. Just
silence
. Aurora turned
slowly
, sweeping the torch around the grove. Nothing moved. The flowers glowed in soft patches. The stones leaned in their rough ring. At the centre of the clearing stood an old oak, broad as a room, its bark ridged and black. Strips of pale fabric hung from the lower branches, hundreds of them, tied in knots that had gone grey with age. Prayer ribbons. Wish rags. Offerings. Some stirred without wind. Aurora held still. One strip
fluttered
. Then another.
Then all of them gave
a single small shiver and fell quiet again.
Her fingers tightened around the
torch until the knuckles paled. “No,”
she said to the dark
. “Not doing that.” She forced herself forward. Each step sank into springy ground that felt wrong underfoot, too soft, as if the earth had
been worked
over and over by careful hands. The pendant grew hotter.
By the time she reached
the oak, heat licked through her glove.
She hissed, pulled the necklace
over her head, and held it out. The gemstone
pulsed
once, crimson against the torchlight. Twice. On the third
pulse
, something answered from the other side of the tree. A soft knock. Wood on wood. Slow. Hollow. Aurora froze. The sound came again. Three
measured
taps, as though someone stood behind the trunk and rapped their knuckles against it. “Hello?” The word left her before she could stop it. She grimaced at herself. Nothing answered.
Then the taps shifted, not
behind the oak now but somewhere farther right, near the stones. Knock. Knock-knock. She turned her torch. The beam skimmed bark, flowers, stone. Nothing. Her scalp prickled. She lowered the pendant and took two careful steps backwards. A flower crushed under her heel with a wet, green snap that sounded far too loud. The air had changed. It felt heavier, damp and close, full of a smell she hadn’t noticed before: wet soil turned up from depth, cold iron, and underneath both, something sweet that had
started to
rot. Aurora swallowed. “Someone’s in here,” she called. “If this is a laugh, I’m not in the mood.” Her voice carried farther this time. It went around the clearing and came back altered. Not quite an
echo
. The shape of her own words returned with a drag in them, as if another mouth had spoken a breath behind hers. Not in the mood. She stepped back again. The torch beam snagged on movement at the edge of sight. A figure stood between two stones. Aurora snapped the light towards it. Only shadow.
Only the rough line of
one stone crossing another behind it. She exhaled through her teeth, annoyed at the tremor in the sound, and kept the beam there until her
pulse
slowed. When she lowered the torch, the figure stood on her left. Close enough that she almost cried out. It had no face because it had no details at all, only a vertical density in the dark, a piece of night that had learned the shape of a person. It stood among the flowers without bending them. The pendant burned in her fist. Aurora swung the torch up. Empty. Her breath came short now, white in front of her, though the cold had not touched her until that moment. Frost spread in lace along the torch casing under her hand. “Nope.” She backed towards the boundary stones, never taking her eyes off the spaces between the trunks. A sound rose behind her. Not
footsteps
. Not speech. Fabric sliding over bark. She turned. The ribbons in the oak had begun to move again. This time they did not flutter together. They twisted one by one, each strip winding
slowly
around its branch as though a hand had taken hold and turned it. One pale ribbon tightened until the cloth tore with a small, sharp rip. Another snapped. Then a third. Aurora stared. Something dark trickled down the trunk where the broken ribbons hung. Sap, she thought first. Water.
Then the torchlight caught it
and the shine looked thicker, black-red at the seam in the bark. She moved without deciding to. Three fast steps back, then another. Her heel hit stone. The impact jarred up her leg. She had reached the ring. Good. Fine. Leave. She turned towards the gap she had entered through and found no gap at all. Stone stood where open space should have been, a slab taller than the rest, broad and slick, its surface packed with the same hooked markings she had seen before. Moss draped it like hair. She stopped dead. “No.” She swung the torch left, then right. Stones. Every side. Shoulder to shoulder now, the ring closed tight. The pendant
pulsed
so hard it felt like a second heartbeat in her hand. Aurora licked dry lips and forced air into her lungs. “This is the Grove,” she said, because hearing anything human helped. “It messes with time. Space. Fine. Great. I get it. You’ve made your point.” The
silence
listened. She touched the nearest stone with two fingers. Ice seized her skin. She jerked back. Her fingertips came away numb, and for a second she felt another touch answer from the other side of the rock, fingers placed exactly against hers through solid stone. She stumbled away from it and nearly fell. A
whisper
passed her ear. Not words. Breath, shaped like words and stripped of voice. Aurora spun, torch up high. The beam cut across the clearing and lit the oak. Someone stood beneath it. This time there was no mistaking it. A woman, perhaps. The outline suggested a long dress that hung in strips, hair down to the waist, head tilted in a way that strained the neck. The face stayed hidden in shadow though the torch shone straight at it. One arm lifted. Slow. Pale hand unfolding from the dark. Aurora’s own hand went to the scar on her wrist before she caught herself. “Don’t.” The figure crooked two fingers. Come here, the gesture said. Intimate. Patient. Aurora laughed once, sharp and ugly. “You first.” The hand lowered. A second figure stood to the right of the oak.
Then a third to the
left. Each one still. Each one shaped wrong in some small way. An elbow bending backwards. Shoulders too high. Heads bowed at angles no spine could keep. The flowers around them did not move. The torch
flickered
. Aurora smacked the casing with her palm. The light steadied, dimmer than before. From somewhere beyond the stones came the sound of her moped starting. The engine turned over cleanly. Once. Twice. A healthy,
familiar
purr. Her whole body
lurched
towards it before sense caught up. The sound came again, closer now, though the moped sat outside the park gate half a mile back. She knew the particular rattle in the exhaust. Knew the tiny high whine from the left mirror where it had loosened last summer. It circled the grove. Not on a path. Around and around just beyond the stones, engine humming at a lazy idle, stopping sometimes right behind her shoulder before moving on again. Aurora kept her back to the ring and turned with the sound. “You’re not funny.” The engine cut out. In the
silence
that followed, something tapped on the opposite side of the stone behind her. One tap. Then another, lower down.
Then a scratch, slow and
deliberate, as if a nail had found a seam and dragged across it. Aurora edged sideways. The figures beneath the oak moved with her, keeping their distance. Not walking. Shifting. One blink of the eye and they had changed place. The pendant grew so hot she nearly dropped it. The crimson glow spilled through her fingers now. She opened her hand. The Heartstone blazed. A thread of red light stretched from it across the clearing,
not to the oak, not to the figures, but down into the ground at the tree’s roots
, where the black bark split around a hollow half hidden by flowers and hanging rags. The hollow breathed. Aurora saw the opening widen and narrow by an inch. Inside it, darkness worked like a throat swallowing. The
whisper
came again, this time from several mouths at once, surrounding her. Aurora. She did not move. Aurora. The voice wore her mother’s shape for one syllable, then Eva’s, then her own. Her skin crawled. “No.” A ribbon dropped from the oak and landed at her feet with a soft slap. Fresh cloth, white and clean, though the branches held only old weathered strips. Another fell. Another. They dropped in a ring around her boots. Aurora looked up. Every figure beneath the oak had raised a hand to its throat. The
whisper
scraped over the clearing once more. Tie one.
created_at
"2026-03-09T22:35:46.146Z"
3/9/2026, 10:35:46 PM
model
"openai/gpt-5.4-20260305"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
4877
moderation_latency
(null)
generation_time
65830
tokens_prompt
1038
tokens_completion
3186
native_tokens_prompt
916
native_tokens_completion
2611
native_tokens_completion_images
0
native_tokens_reasoning
132
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
"completed"
usage
0.041455
router
(null)
provider_responses
0
endpoint_id
"9ff5625c-403f-4d7f-b895-58ac7295062c"
id
"resp_02ab1c9ca163c75c0169af4b4265c48196b4e31809dbabd31a"
is_byok
false
latency
288
model_permaslug
"openai/gpt-5.4-20260305"
provider_name
"OpenAI"
status
200
user_agent
"langchainjs-openai/1.0.0 ((node/v24.14.0; linux; x64))"
http_referer
(null)
api_type
"completions"
id
"gen-1773095746-DnphawsaHIl3OFQFn35c"
upstream_id
"resp_02ab1c9ca163c75c0169af4b4265c48196b4e31809dbabd31a"
total_cost
0.041455
cache_discount
(null)
upstream_inference_cost
0
provider_name
"OpenAI"
Evaluation details
Result
Evaluator
Details
Meta Data
100.00%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
5
adverbTagCount
0
adverbTags
(empty)
dialogueSentences
17
tagDensity
0.294
leniency
0.588
rawRatio
0
effectiveRatio
0
94.95%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
1981
totalAiIsmAdverbs
2
found
0
adverb
"slowly"
count
2
highlights
0
"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)
49.52%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
1981
totalAiIsms
20
found
0
word
"silence"
count
4
1
word
"pulse"
count
3
2
word
"warmth"
count
1
3
word
"fluttered"
count
1
4
word
"pulsed"
count
2
5
word
"measured"
count
1
6
word
"echo"
count
1
7
word
"footsteps"
count
1
8
word
"whisper"
count
3
9
word
"flickered"
count
1
10
word
"familiar"
count
1
11
word
"lurched"
count
1
highlights
0
"silence"
1
"pulse"
2
"warmth"
3
"fluttered"
4
"pulsed"
5
"measured"
6
"echo"
7
"footsteps"
8
"whisper"
9
"flickered"
10
"familiar"
11
"lurched"
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
233
matches
(empty)
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
0
hedgeCount
1
narrationSentences
233
filterMatches
(empty)
hedgeMatches
0
"started to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
245
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
maxSentenceWordsSeen
43
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
1981
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
5
unquotedAttributions
0
matches
(empty)
83.33%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
39
wordCount
1923
uniqueNames
13
maxNameDensity
0.99
worstName
"Aurora"
maxWindowNameDensity
2.5
worstWindowName
"Aurora"
discoveredNames
Grove
1
November
1
Richmond
1
Park
1
London
2
Heartstone
2
Golden
1
Empress
1
Cardiff
1
Eva
1
Aurora
19
Three
3
One
5
persons
0
"Grove"
1
"Heartstone"
2
"Eva"
3
"Aurora"
4
"One"
places
0
"November"
1
"Richmond"
2
"Park"
3
"London"
4
"Golden"
5
"Cardiff"
globalScore
1
windowScore
0.833
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
122
glossingSentenceCount
1
matches
0
"felt like a second heartbeat in her han"
48.56%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
3
per1kWords
1.514
wordCount
1981
matches
0
"not behind the oak now but somewhere farther right, near the stones"
1
"not to the oak, not to the figures, but down into the ground at the tree’s roots"
2
"not to the figures, but down into the ground at the tree’s roots"
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
0
totalSentences
245
matches
(empty)
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
131
mean
15.12
std
16.88
cv
1.117
sampleLengths
0
18
1
77
2
8
3
49
4
6
5
49
6
34
7
12
8
8
9
15
10
53
11
17
12
5
13
6
14
94
15
30
16
6
17
38
18
9
19
2
20
62
21
3
22
18
23
10
24
9
25
45
26
12
27
8
28
1
29
13
30
3
31
5
32
2
33
20
34
1
35
13
36
2
37
16
38
1
39
1
40
10
41
1
42
65
43
2
44
15
45
41
46
4
47
4
48
11
49
6
100.00%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
1
totalSentences
233
matches
0
"been worked"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
0
totalVerbs
313
matches
(empty)
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
0
semicolonCount
0
flaggedSentences
0
totalSentences
245
ratio
0
matches
(empty)
99.09%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1925
adjectiveStacks
0
stackExamples
(empty)
adverbCount
79
adverbRatio
0.04103896103896104
lyAdverbCount
11
lyAdverbRatio
0.005714285714285714
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
245
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
245
mean
8.09
std
7.4
cv
0.916
sampleLengths
0
18
1
11
2
20
3
14
4
18
5
14
6
8
7
15
8
25
9
9
10
3
11
3
12
4
13
4
14
6
15
6
16
5
17
2
18
6
19
5
20
11
21
11
22
23
23
8
24
4
25
8
26
15
27
16
28
27
29
3
30
7
31
2
32
3
33
12
34
5
35
6
36
8
37
38
38
12
39
36
40
30
41
6
42
4
43
16
44
12
45
2
46
2
47
2
48
9
49
2
49.52%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
17
diversityRatio
0.33877551020408164
totalSentences
245
uniqueOpeners
83
100.00%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
9
totalSentences
185
matches
0
"Even the city had gone"
1
"Then all of them gave"
2
"Then the taps shifted, not"
3
"Only the rough line of"
4
"Then a third."
5
"Then the torchlight caught it"
6
"Then a third to the"
7
"Then another, lower down."
8
"Then a scratch, slow and"
ratio
0.049
100.00%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
49
totalSentences
185
matches
0
"She pulled her coat tighter"
1
"She could still see the"
2
"Her voice fell flat."
3
"It pressed against her ears"
4
"She reached under her jumper"
5
"she told it"
6
"She let out a dry"
7
"Her torch cut a pale"
8
"She moved closer."
9
"She angled the torch away."
10
"She had not come here"
11
"She had stood in the"
12
"It coughed through sleet, through"
13
"Her fingers tightened around the"
14
"she said to the dark"
15
"She forced herself forward."
16
"She hissed, pulled the necklace"
17
"She grimaced at herself."
18
"She turned her torch."
19
"Her scalp prickled."
ratio
0.265
73.51%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
143
totalSentences
185
matches
0
"Aurora slipped through the last"
1
"The Grove opened in front"
2
"The standing stones rose from"
3
"Wildflowers spread between them in"
4
"Moonlight pooled on white foxgloves,"
5
"The whole clearing sat too"
6
"She pulled her coat tighter"
7
"The trees behind her stood"
8
"She could still see the"
9
"Her voice fell flat."
10
"The silence had shape here."
11
"It pressed against her ears"
12
"She reached under her jumper"
13
"The crimson gem sat warm"
14
"she told it"
15
"The stone brightened for a"
16
"She let out a dry"
17
"Her torch cut a pale"
18
"Scratches ran over the rock"
19
"She moved closer."
ratio
0.773
27.03%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
1
totalSentences
185
matches
0
"By the time she reached"
ratio
0.005
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
75
technicalSentenceCount
4
matches
0
"Moonlight pooled on white foxgloves, on bluebells, on a scatter of red poppies that looked almost painted there."
1
"It coughed through sleet, through Cardiff rain, through London traffic that treated lanes as a rumour."
2
"Each step sank into springy ground that felt wrong underfoot, too soft, as if the earth had been worked over and over by careful hands."
3
"A flower crushed under her heel with a wet, green snap that sounded far too loud."
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
5
uselessAdditionCount
0
matches
(empty)
91.18%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
5
fancyCount
1
fancyTags
0
"she muttered (mutter)"
dialogueSentences
17
tagDensity
0.294
leniency
0.588
rawRatio
0.2
effectiveRatio
0.118
90.5566%