NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-09-23-01M36P16DC79Q7VAG4T2CAYV4C
Run Details
Model:
GPT-6 Luna (Reasoning, Medium)
Test:
Bad Writing Habits
Scenario:
Fantasy: entering an ancient ruin
Duration:
35.5s
Cost:
$0.001299
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
97.26%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
50.71%
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)
0.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)
99.32%
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)
43.14%
Sentence opener variety
(details)
62.50%
Adverb-first sentence starts
(details)
100.00%
Pronoun-first sentence starts
(details)
56.87%
Subject-first sentence starts
(details)
31.25%
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)
88.0351%
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="4418" name="Nyx" aliases="Nyx, the Shadow, Nightwhisper" pronouns="they/them" species="Shade" storyRole="Wild Card"> <eyeColor>faintly glowing violet</eyeColor> <height>approximately 6'2" in solid form</height> <age>ageless</age> <form>humanoid silhouette of living shadow, can shift between solid and incorporeal</form> <voice>sounds like a whisper carried on the wind</voice> <description>A being of living shadow, existing between the mortal plane and the spaces between realms.</description> <backstory>Nyx was once a human sorcerer named Aldric who became trapped between realms during a failed summoning ritual in 1643. They now exist as a Shade, bound to the mortal plane but able to slip between shadows.</backstory> </character> <character id="4424" name="Isolde Varga" aliases="Isolde, the Seer" pronouns="she/her" species="Half-Fae" storyRole="Oracle"> <eyeColor>pale lavender</eyeColor> <hair>silver, reaching her waist</hair> <height>5'5"</height> <age>300 years old</age> <appearance>ethereal, ageless</appearance> <speech>speaks in riddles</speech> <footprints>leaves no footprints when she walks</footprints> <compulsion>cannot lie (Fae compulsion) but can mislead</compulsion> <description>A Half-Fae seer exiled from the Fae Courts for sharing visions with mortals.</description> <backstory>She now lives in a hidden grove in Richmond Park, offering cryptic prophecies to those who seek her out.</backstory> </character> <location id="853" name="Dymas (Gluttony)" aliases="Dymas, gluttony, Dymasian" realm="Hel" sin="Gluttony"> <ruler>Prince Belphegor</ruler> <skyColor>warm amber</skyColor> <description>A place of excess and indulgence. Sprawling vineyards, orchards, and gardens provide exotic ingredients for master chefs — often helbound souls contracted from Earth. Grand feasts and culinary competitions are common.</description> </location> <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> <item id="2006" name="Fae-Forged Blade" aliases="the Fae blade, Isolde's gift" type="Weapon" origin="The Fae Courts"> <material>moonsilver</material> <shape>slender, leaf-shaped dagger</shape> <temperature>always cold to the touch</temperature> <glow>faintly luminescent in moonlight</glow> <power>can cut through magical wards; particularly effective against demons</power> <givenTo>given to Aurora by Isolde as a gift</givenTo> <description>A weapon of the Fae Courts, rare and highly coveted.</description> </item> <lore id="7001" name="The Veil" aliases="the Veil, the Barrier, the Boundary" category="Cosmology"> <solsticeEffect>weakens during the winter solstice, strengthens during the summer solstice</solsticeEffect> <appearance>faint shimmering distortion visible only to those with supernatural sight</appearance> <monitoring>rift points (tears in the Veil) are monitored by the Wardens</monitoring> <description>The Veil is the metaphysical barrier separating Earth from Hel and the Fae Realms.</description> </lore> </codex> Write a fully fleshed out scene of at least 1000 words in the fantasy genre. A small group enters an ancient, otherworldly place for the first time. The environment is alien and wondrous. Describe their exploration — what they see, hear, and feel as they move deeper. Include moments of discovery, unease, and wonder. Let the world-building emerge through the characters' experience rather than exposition. Use the codex entries above as your world reference for characters, setting, and lore. Only include the prose of the scene without any markdown or commentary.
Model response
Messages
Meta
AI
The standing stones were not
stones at all, Rory decided, but the bones of something too old to be buried.
They rose from the bracken
at the edge of Richmond Park, a ring of oak trunks thick as cottages, their bark
furrowed
and black with age. No leaves stirred above them. Beyond the ring, the park lay quiet beneath a colourless afternoon sky. Behind it, Isolde’s silver hair caught the weak light as if she carried a piece of the moon in it. “Once we cross,” Isolde said, “do not trust the distance between one step and the next.” Rory glanced at Nyx.
Their tall silhouette leaned beside
the nearest tree, its edges
wavering
like smoke in a draft. Two faint violet eyes fixed on the gap between the trunks. “Is that a warning,” Rory asked, “or one of your riddles?” “Yes.” Isolde slipped between the trees. She made no sound.
She left no print in
the wet earth.
Rory followed, one hand curled
around the strap of her bag.
The small crescent scar on
her wrist caught against the buckle. At the threshold, the air changed.
It pressed cool and damp
against her face, carrying the smell of crushed leaves, rainwater, and something sweet enough to make her
think
of bruised fruit. She stepped through. The park vanished. Not faded, not hidden behind a curtain. Vanished. One moment there had been bare branches and distant traffic; the next, a broad clearing opened around her beneath a canopy of interlaced oak.
Wildflowers crowded the grass in
every colour she knew and several she didn’t.
Their petals glimmered with a
sheen like oil on water. Beyond them, the trunks stood in a loose circle, each one marked with pale lines that twisted through the bark like writing. Rory turned back.
The gap in the trees
remained, but the view through it was a dusk-blue blur. A few uncertain shapes shifted in the haze, then slipped away. Nyx passed through behind her.
Their shadow-form stretched briefly across
the ground, longer than the afternoon should have allowed. “The air remembers other skies,” they murmured. Rory looked up.
The canopy overhead was too
dense to show the sky, yet a warm gold light filtered through it.
It touched the flowers, the
trunks, Isolde’s pale face. The clearing
seemed lit from somewhere beneath the soil
. “Is this all the grove?” Rory asked. “No,” said Isolde. “This is the part that wishes to be found.” The Half-Fae had already started along a narrow path, though Rory could see no trail through the flowers.
They bent aside before Isolde
touched them, then lifted again behind her. Rory followed, careful not to crush them.
Their stems were soft under
her fingertips when she brushed one by accident, but the bloom turned toward her with a little shiver. She stopped. The flower’s centre held a bead of clear water. Inside it, Rory saw a bright blue sky, a sky with no trees and no clouds. For an instant she felt sunlight on her face, hot and blunt as a memory.
Then the bead trembled and
the image broke into ripples. “Don’t drink from anything that looks
familiar
,” Isolde called from ahead. “I wasn’t going to.” “Good. Familiar things are the hungriest.” Rory hurried to catch up. Behind her, Nyx’s steps made no impression in the grass.
They moved as if the
path had
been laid
down for them and then reconsidered. The grove deepened by degrees, though Rory could not have said how. The trees grew taller; their trunks leaned inward until the branches knitted overhead. A low sound threaded through the leaves. At first she mistook it for wind, but there was no breeze against her skin.
Then the notes separated: a
whispering murmur, many voices speaking at once in a language that almost became words. She heard her name. Rory’s stride faltered.
It came again, from somewhere
above, spoken in a voice that might have been Eva’s, or her mother’s. The sound was thin and far away, as if it had crossed a great distance to reach her. Nyx’s hand closed around her elbow.
Their touch was cold, the
chill
of metal left outside overnight. “Not yours,” they said. The
whisper
slid away among the branches. Rory made herself keep walking. “What was it?” “A thing that has learned the shape of a name.” That answer did not improve matters. The path dipped between two knotted oaks and emerged beside a stream. It ran uphill. Rory crouched at the bank. The water flowed toward the rise, fast and clear, carrying tiny white petals that should have floated downstream.
Its surface reflected a canopy
of red leaves, though every tree above them was green.
She put her fingers close
but did not touch. A sound came from inside the stream: a soft, bright chiming, like glass tapped with a spoon. Each note made the hairs rise along Rory’s arms. Isolde stood on the opposite bank.
She had crossed without Rory
seeing her do it. “The stream takes what is given freely,” she said. “It keeps what is given by mistake.” “So we don’t cross it?” “You may cross if you know which side you are leaving.” Rory studied the water. On their side, the grass bent under her boots. On the far bank, Isolde stood in a carpet of white clover. But reflected in the stream, the far bank showed a scatter of black stones and a dark shape leaning over the water. The shape had Rory’s hair, Rory’s shoulders, Rory’s face. It raised its head. Rory jerked upright. The reflection
was gone
, replaced by the red-leafed canopy. Nyx stepped to the bank. Their violet eyes dimmed, then brightened. “There is a road under the water.” “Can you see where it goes?” Rory asked. “Farther than it should.” Isolde held out her hand. “Then we will not take it.” She turned from the stream and walked on. Rory went after her, keeping well away from the water’s edge. Nyx followed last, their shadow spilling across the bank. For a moment the stream’s upward current bent toward them. The chiming sharpened, as if something beneath the surface had noticed. The next clearing held an oak split down the middle. Its halves leaned apart, exposing a hollow so wide Rory could have stood inside it. The wood was silver at the edges, dark at the heart. In the cavity, tiny lights drifted like embers, though nothing burned. Some rose toward the branches. Others sank through the roots and disappeared into the earth. Rory stepped closer. The air near the tree prickled against her cheeks. At its base, half-buried in moss, lay a slender dagger. Its leaf-shaped blade gave off a faint sheen, pale as moonlight. Rory knew it before she remembered she had ever seen it: the Fae-forged blade Isolde had given her. Her hand went to the weapon at her belt. The sheath was empty. The dagger in the moss lifted. Rory recoiled. It
hung in the air
, point down, cold light spilling from its edge. “You brought it,” Isolde said. “It was on me.” Rory kept her hands visible. “I didn’t draw it.” “The grove knows a gift from a theft.” The dagger turned once,
slowly
, then drifted toward Rory. Its hilt settled against her palm. Cold bit through her skin, clean and immediate. She tightened her grip. The tree’s lights brightened. Every
whisper
in the branches fell silent. For the first time, Isolde looked troubled. Her pale lavender eyes fixed on the hollow. “We have come nearer than I intended.” “To what?” “To the place that has not yet decided what it is.” A thump sounded in the oak’s
depths
. Once. Rory felt the vibration in her teeth. Again. The lights scattered,
racing
through the hollow and out among the roots. The split trunk groaned. A smell of earth and iron rose from the moss. Nyx moved between Rory and the tree. Their silhouette thickened, turning almost solid. “Something has been sleeping here.” “Not sleeping,” Isolde said. “Waiting.” Rory’s fingers tightened around the dagger. She
could feel
its
chill
through the handle, a steady, narrow pain. Beyond the tree, the grove opened into a corridor of enormous oaks. At the far end, a ring of pale trunks stood around a patch of darkness. The darkness had no shape, but the air above it
trembled
faintly, like heat rising from a road. Rory
knew that shimmer
. She had seen it once, faint and wrong at the edge of ordinary sight: the Veil, the boundary between one world and another. Here it showed itself without disguise. The air
was folded
, a thin distortion between the trees. The Heartstone beneath her collar warmed. She slipped her fingers under her shirt and found the pendant’s crimson surface. It
pulsed
once against her palm, then again. A faint glow bled through the fabric. Nyx turned their head toward it. “There is a door close by.” Isolde watched the trembling air. “A door is a promise. A tear is a wound.” “What is that one?” Rory asked. The Seer did not answer at once. Her hair stirred though the air remained still. “A wound taught to look like a promise.” The grove
seemed to
hold its breath.
Somewhere behind them, the stream
chimed again, a single clear note. The flowerheads along the path lowered
as if bowing
. The oak behind them gave another heavy thump. Rory looked from the shimmering gap to Isolde. “You brought us here to find this?” “I brought you to see what was already finding you.” “That sounds like the same thing with better manners.” A smile touched Isolde’s mouth, but did not stay. “A name is a key. A key is not always a kindness.” The words settled cold in Rory’s mind. She had spent years learning to read what people left unsaid. Here, every
silence
seemed to
have teeth. She shifted the dagger into a firmer grip. The blade’s faint light ran over her knuckles. The grove had felt wondrous when she first entered it: impossible flowers, gold-lit leaves, a sky hidden overhead.
Now each beauty seemed to
have a second face. The stream offered a road and watched to see who would take it. The oak held a heartbeat. The air ahead
flickered
over a wound. Still, Rory couldn’t look away. Beyond the ring of trees, something moved in the dark. Not a figure, exactly. A suggestion of one, tall and narrow, standing where the world bent. The Heartstone warmed until it was almost hot. Nyx’s shadow stretched toward the gap, though they had not moved. Isolde lifted one hand. “Do not call to it.” Rory hadn’t meant to. She had only been trying to hear. From the darkness came a
whisper
, soft as the first breath of wind through a keyhole. Rory. Nyx’s fingers closed again around her elbow. This time, the voice was not
familiar
. It sounded like her own.
created_at
"2026-09-23T08:27:35.217Z"
9/23/2026, 8:27:35 AM
model
"openai/gpt-6-luna-20260922"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
4578
moderation_latency
(null)
generation_time
35245
tokens_prompt
1547
tokens_completion
2732
native_tokens_prompt
1532
native_tokens_completion
2566
native_tokens_completion_images
0
native_tokens_reasoning
226
native_tokens_cached
1529
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.00129859
router
(null)
user_agent
"langchainjs-openai/1.0.0 ((node/v24.20.0; linux; x64))"
http_referer
(null)
request_id
"req-1790152055-8cHu3uD3EFTIeXylSDKz"
session_id
(null)
preset_id
(null)
api_type
"completions"
id
"gen-1790152055-1EQHcH2QpbBAwIlhTwZN"
upstream_id
"resp_07cfd83acee0f375016ab38d774efc87d1aa4600bde4dfd43f"
provider_responses
0
endpoint_id
"05e94e02-b9c2-4bbb-ba55-4082ee9ad687"
id
"resp_07cfd83acee0f375016ab38d774efc87d1aa4600bde4dfd43f"
is_byok
false
latency
581
model_permaslug
"openai/gpt-6-luna-20260922"
provider_name
"OpenAI"
status
200
total_cost
0.00129859
cache_discount
0.00013761
upstream_inference_cost
0
provider_name
"OpenAI"
response_cache_source_id
(null)
data_region
"global"
workspace_id
"97e315e5-d303-487d-83c1-83180e8a13d4"
Evaluation details
Result
Evaluator
Details
Meta Data
100.00%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
12
adverbTagCount
0
adverbTags
(empty)
dialogueSentences
40
tagDensity
0.3
leniency
0.6
rawRatio
0
effectiveRatio
0
97.26%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
1826
totalAiIsmAdverbs
1
found
0
adverb
"slowly"
count
1
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)
50.71%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
1826
totalAiIsms
18
found
0
word
"furrowed"
count
1
1
word
"wavering"
count
1
2
word
"trembled"
count
2
3
word
"familiar"
count
3
4
word
"chill"
count
2
5
word
"whisper"
count
3
6
word
"depths"
count
1
7
word
"racing"
count
1
8
word
"could feel"
count
1
9
word
"pulsed"
count
1
10
word
"silence"
count
1
11
word
"flickered"
count
1
highlights
0
"furrowed"
1
"wavering"
2
"trembled"
3
"familiar"
4
"chill"
5
"whisper"
6
"depths"
7
"racing"
8
"could feel"
9
"pulsed"
10
"silence"
11
"flickered"
100.00%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
1
maxInWindow
1
found
0
label
"hung in the air"
count
1
highlights
0
"hung in the air"
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
0
narrationSentences
177
matches
(empty)
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
1
hedgeCount
3
narrationSentences
177
filterMatches
0
"think"
hedgeMatches
0
"seemed to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
204
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
1826
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
11
unquotedAttributions
0
matches
(empty)
0.00%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
77
wordCount
1579
uniqueNames
11
maxNameDensity
2.53
worstName
"Rory"
maxWindowNameDensity
5
worstWindowName
"Rory"
discoveredNames
Rory
40
Richmond
1
Park
1
Isolde
18
Nyx
10
Half-Fae
1
Eva
1
Fae-forged
1
Veil
1
Heartstone
2
Seer
1
persons
0
"Rory"
1
"Isolde"
2
"Nyx"
3
"Half-Fae"
4
"Eva"
5
"Heartstone"
6
"Seer"
places
0
"Richmond"
1
"Park"
globalScore
0.233
windowScore
0
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
124
glossingSentenceCount
2
matches
0
"seemed lit from somewhere beneath the soil"
1
"as if bowing"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
1
per1kWords
0.548
wordCount
1826
matches
0
"not stones at all, Rory decided, but the bones of something too old to be buried"
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
1
totalSentences
204
matches
0
"knew that shimmer"
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
90
mean
20.29
std
18.98
cv
0.935
sampleLengths
0
20
1
63
2
16
3
31
4
11
5
1
6
5
7
12
8
57
9
3
10
77
11
29
12
26
13
39
14
7
15
12
16
60
17
2
18
50
19
11
20
4
21
6
22
30
23
66
24
4
25
3
26
36
27
17
28
4
29
7
30
8
31
10
32
6
33
15
34
47
35
26
36
31
37
5
38
11
39
56
40
4
41
12
42
18
43
8
44
4
45
11
46
49
47
62
48
51
49
13
99.32%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
3
totalSentences
177
matches
0
"been laid"
1
"was gone"
2
"was folded"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
0
totalVerbs
257
matches
(empty)
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
0
semicolonCount
2
flaggedSentences
2
totalSentences
204
ratio
0.01
matches
0
"One moment there had been bare branches and distant traffic; the next, a broad clearing opened around her beneath a canopy of interlaced oak."
1
"The trees grew taller; their trunks leaned inward until the branches knitted overhead."
100.00%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1587
adjectiveStacks
0
stackExamples
(empty)
adverbCount
59
adverbRatio
0.037177063642092
lyAdverbCount
5
lyAdverbRatio
0.00315059861373661
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
204
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
204
mean
8.95
std
5.04
cv
0.563
sampleLengths
0
20
1
26
2
5
3
12
4
20
5
16
6
4
7
16
8
11
9
11
10
1
11
5
12
4
13
8
14
11
15
11
16
6
17
26
18
3
19
3
20
7
21
1
22
24
23
13
24
10
25
22
26
3
27
15
28
11
29
5
30
14
31
7
32
3
33
18
34
9
35
9
36
7
37
3
38
9
39
18
40
12
41
7
42
23
43
2
44
9
45
16
46
15
47
10
48
11
49
4
43.14%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
14
diversityRatio
0.27450980392156865
totalSentences
204
uniqueOpeners
56
62.50%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
3
totalSentences
160
matches
0
"Then the bead trembled and"
1
"Then the notes separated: a"
2
"Somewhere behind them, the stream"
ratio
0.019
100.00%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
39
totalSentences
160
matches
0
"They rose from the bracken"
1
"Their tall silhouette leaned beside"
2
"She made no sound."
3
"She left no print in"
4
"It pressed cool and damp"
5
"She stepped through."
6
"Their petals glimmered with a"
7
"Their shadow-form stretched briefly across"
8
"It touched the flowers, the"
9
"They bent aside before Isolde"
10
"Their stems were soft under"
11
"They moved as if the"
12
"She heard her name."
13
"It came again, from somewhere"
14
"Their touch was cold, the"
15
"It ran uphill."
16
"Its surface reflected a canopy"
17
"She put her fingers close"
18
"She had crossed without Rory"
19
"It raised its head."
ratio
0.244
56.87%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
129
totalSentences
160
matches
0
"The standing stones were not"
1
"They rose from the bracken"
2
"Rory glanced at Nyx."
3
"Their tall silhouette leaned beside"
4
"Isolde slipped between the trees."
5
"She made no sound."
6
"She left no print in"
7
"Rory followed, one hand curled"
8
"The small crescent scar on"
9
"It pressed cool and damp"
10
"She stepped through."
11
"The park vanished."
12
"Wildflowers crowded the grass in"
13
"Their petals glimmered with a"
14
"Rory turned back."
15
"The gap in the trees"
16
"Nyx passed through behind her."
17
"Their shadow-form stretched briefly across"
18
"Rory looked up."
19
"The canopy overhead was too"
ratio
0.806
31.25%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
1
totalSentences
160
matches
0
"Now each beauty seemed to"
ratio
0.006
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
68
technicalSentenceCount
4
matches
0
"Behind it, Isolde’s silver hair caught the weak light as if she carried a piece of the moon in it."
1
"The sound was thin and far away, as if it had crossed a great distance to reach her."
2
"The water flowed toward the rise, fast and clear, carrying tiny white petals that should have floated downstream."
3
"The chiming sharpened, as if something beneath the surface had noticed."
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
12
uselessAdditionCount
0
matches
(empty)
100.00%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
11
fancyCount
1
fancyTags
0
"they murmured (murmur)"
dialogueSentences
40
tagDensity
0.275
leniency
0.55
rawRatio
0.091
effectiveRatio
0.05
88.0351%