NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-09-23-01M37HJ8H1ZP89Z9JY6ERC4Z9G
Run Details
Model:
GPT-6 Sol (Reasoning, Medium)
Test:
Bad Writing Habits
Scenario:
Fantasy: entering an ancient ruin
Duration:
1m 6s
Cost:
$0.029242
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
84.11%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
68.22%
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)
99.45%
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)
60.68%
Sentence opener variety
(details)
41.41%
Adverb-first sentence starts
(details)
100.00%
Pronoun-first sentence starts
(details)
59.38%
Subject-first sentence starts
(details)
0.00%
Subordinate conjunction sentence starts
(details)
100.00%
Technical jargon density
(details)
100.00%
Useless dialogue additions
(details)
52.44%
Dialogue tag variety (said vs. fancy)
(details)
87.1894%
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 sleet stopped at the
edge of the oak stones.
Rory stood with one boot
in the wet grass of Richmond Park and the other among bluebells. Behind her, bare branches rattled in the wind. Ahead, sunlight lay in long green shafts across a clearing that smelled of warm earth and crushed mint. “You could have mentioned the weather,” she said. “I did.”
Isolde stepped between two stones
without leaving a mark in the soft ground.
Her silver hair stirred, though
the air inside the clearing was still. “I told you to bring a coat.” “That is not the same thing.”
Nyx passed through the narrow
gap without turning sideways. For an instant their tall silhouette thinned to a seam of darkness against the oak-streaked stone. On the other side, their violet eyes found Rory. “Come,” they whispered. “Before it changes its mind.” Rory took her second step. The sleet vanished behind her, sound and all.
She had seen Isolde’s grove
from a distance once, through a
gap that seemed to contain more trees than Richmond Park could possibly hold
. Up close, it was worse. Better.
Wildflowers crowded beneath the oaks
in impossible company: spring bluebells, late roses, tiny white stars Rory couldn’t name.
Roots crossed the earth like
the backs of sleeping animals. Above them, leaves turned
slowly
through green, gold, and russet on the same branches.
The Heartstone warmed beneath her
shirt.
Rory pulled the silver chain
free.
The thumbnail-sized crimson gem glowed
against her palm, its
warmth
coming in faint, regular beats. “Are we near it?” she asked.
Isolde did not answer at
once.
She was watching a patch
of bare earth beyond the flowers. “The door I saw,”
she said at last
, “was under a tree that had forgotten how to grow.” “That clears things up.” “It will.” Nyx drifted ahead.
They stopped beside an oak
whose trunk rose three metres, ended in a flat, broken crown, and began again an arm’s length above it.
The upper half of the
tree hung unsupported, its leaves rustling against a sky Rory could see through the gap. “All right,” Rory said. “That one.” She approached
carefully
. The ground beneath the tree was hard and dark. No grass grew there. Set into the soil was a ring of pale roots, each thicker than her wrist, surrounding a stone disc scored with spirals. Isolde knelt at its edge. For the first time since Rory had met her, she looked uncertain. “You’ve never been down there,” Rory said. “No.” “Neither have I,” Nyx murmured. That made Rory
feel
less reassured than it probably should have. Nyx had spent centuries finding ways into places they weren’t wanted. The Heartstone gave a hotter
pulse
. Something answered beneath their feet: a low, hollow note, like a glass rim singing after a finger had left it. Rory crouched. Fine silver lines ran between the roots, almost invisible until the gem’s light caught them.
She drew Isolde’s dagger from
its sheath. The moonsilver
chilled
her fingers at once. “Is that a ward?” Isolde held her hand above the lines. “Yes.” “And cutting it opens the door?” “The ward keeps something apart.” Isolde looked up at her. “I cannot tell you which side of it we stand on.” Rory considered that. The stone sang again, and the pendant grew hot enough to make her close her fist around it.
They had come to the
grove because the Heartstone had woken before dawn, beating against her chest while every mirror in her flat reflected an amber sky.
It had taken an hour
for the mirrors to show London again. Rory would rather know what
was trying
to get through before it tried her windows next.
She slipped the dagger’s point
beneath one silver line and drew it across. The line parted without resistance. Every flower in the clearing bent toward the tree. A crack split the stone disc from edge to edge. Nyx caught Rory by the shoulder and drew her back as it folded downward in two neat halves. Beneath lay a stairway spiralling into the roots. A breath rose from it, warm and sweet with the smell of baked pears. Rory stared into the opening. “Nothing about that smells like a good idea,” she said. “No,” Isolde agreed, and went first. The stairs were narrow, cut from dark stone shot through with pale veins. Rory followed with the dagger in one hand and the pendant in the other. Nyx came behind her, their footfalls quieter than the distant, steady ringing below. The walls changed as they descended. Stone gave way to bark, then to something smooth and pearly that yielded
slightly
under Rory’s fingertips. She snatched her hand away. “What was that?” “Old,” Nyx said. “Useful distinction.” The stair ended so
suddenly
she nearly stepped into open air. Beyond it stretched a hall the size of a railway station, though no roof held it. An amber sky arched overhead, threaded with slow-moving bands of green light. Vast roots rose from the floor and branched through the air, their tips bearing clusters of silver leaves. Between them stood tables carved from single pieces of black stone. Bowls rested on the tables, filled with fruit so dark it shone blue. A stream crossed the hall without banks.
Its water flowed in a
narrow ribbon a foot above the floor, curving around table legs and rising in delicate loops. Rory could see things moving inside it: pale fish, a spray of autumn leaves, what looked horribly like someone’s open hand.
Then the current turned, and
it was only a branch. The ringing came from fruit suspended high among the roots. Each silver pear
trembled
against its neighbours, making notes too thin to be quite music. Rory stepped onto the floor.
It felt firm, but her
stomach
lurched
as if she’d missed a stair. “Is this the Fae realm?” Isolde’s lavender eyes moved from the amber sky to the tables. “A room between guests.” Rory looked back. The stair remained, but it had grown distant.
She could still see the
first step. There was simply much more floor between it and her than there had been a moment ago. “Then let’s not stay for dinner,” she said.
They kept close to the
tables. Along their edges, figures had been cut into the stone: hands passing cups, hands breaking bread, hands reaching from either side of a narrow line. On one table, the figures had
been worn
away at the centre, leaving only the hands and the empty space between them. Rory touched a carving with the back of her finger. A name sounded beside her ear. Aurora. She spun. Nyx stood several paces away, watching the roots above them. Isolde had gone ahead. Neither had spoken. A second
whisper
rose from the stone, pitched like her mother’s voice calling her home from the garden when she was small. Rory jerked her hand away. Nyx turned. “What did you hear?” “Nothing worth answering.”
Their gaze dropped to the
table. “Good.” Farther in, the bowls changed. One held polished stones. Another held keys, each with a tooth missing. The next was full of little folded papers, damp at the corners though the bowl was dry. Rory caught sight of her own name on the topmost one, written in a hand she didn’t recognise. She walked faster. The hall opened into a circular court. Here the roots met overhead, woven into a vast canopy. At its centre stood an arch made of two living trunks bent together, their bark crusted with salt. Beyond the arch, vineyards spread under a warm amber sky. Rory saw terraces climbing hills, orchards heavy with gold fruit, and, on a distant balcony, a table laid for so many people it ran out of sight. Music carried through: strings, laughter, the clink of glasses. The smell reached her a moment later. Roast meat. Hot bread. Butter and spice.
Her stomach tightened with sudden
hunger. The Heartstone blazed in her hand. “Dymas,” Isolde said
softly
. Rory knew the name.
She knew enough to keep
her distance from the arch, even when she heard a chair scrape on the other side and saw an empty place at the near end of that impossible table. A napkin lay folded beside the plate. As she watched, letters darkened across its white cloth. AURORA CARTER. “Someone knows I’m here.” Nyx moved between her and the arch.
Their shadow spread across the
floor, broader than the roots above could account for. “Someone expected you.” The music stopped. In the sudden quiet, Rory heard the silver fruit ringing far behind them. She also heard the stairway closing: stone grinding
slowly
against stone. “Isolde?” “I hear it.” Rory looked from the arch to the scored lines on its trunks. Silver ran through the salt-crusted bark, just as it had through the roots above. This ward, too, kept something apart. On the other side of the arch, a glass lifted from the table. It
hung in the air
at the height of a waiting hand. “Rory,” Nyx whispered. Their shadow stretched back towards the stair. It reached the first step just as the two halves of the stone disc met overhead. Darkness slipped into the narrowing seam and held it. Nyx went rigid. Their outline
flickered
, one arm vanishing to the elbow. “Can you hold it?” “Not long.” Rory caught Isolde’s wrist and pulled her towards the stair. The seer stumbled, more surprised than hurt. Behind them, a voice from the arch called Rory’s name again, warm and
familiar
. It
sounded like her father now
. She did not turn. They ran past the bowls. Papers lifted in their wake. Keys struck stone, chiming against one another. The hall lengthened ahead of them, tables sliding farther apart with every stride. “The dagger,” Isolde said. “The line beneath us.” Rory saw it then: a silver thread set into the floor, running from the arch all the way to the stair. She dropped to one knee and drove the moonsilver blade into it. Cold
raced
up her arm. The thread snapped. The hall shuddered. Tables
lurched
. The voice behind her cut off in the middle of a word. The stair rushed towards them. Nyx’s shadow recoiled from the crack overhead, and their missing arm came back into shape. Rory seized their solid wrist. Together they scrambled up the steps after Isolde. The stone disc slammed shut beneath Rory’s boot as she threw herself onto the bare earth. For a while, all she could hear was sleet ticking on leaves.
Then she realised they were
outside the grove. Richmond Park lay grey and wet around them. The oak stones stood several yards away, with no sign of the broken tree beyond. Isolde sat in the grass beside her, breathing hard. Nyx had become no more than a dark outline under the nearest oak. Rory checked her
watch
. The hands pointed to eight minutes after they had entered. The Heartstone lay against her palm, cool and dark. As she closed her fingers around it, a thin strip of white cloth caught beneath the chain. She pulled it free. It was a napkin, folded twice. Her name had
been written
across it in dark red ink. On the other side, in the same hand, were four words. Your place
is kept
warm.
created_at
"2026-09-23T16:28:45.999Z"
9/23/2026, 4:28:45 PM
model
"openai/gpt-6-sol-20260922"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
14775
moderation_latency
(null)
generation_time
65426
tokens_prompt
1547
tokens_completion
2828
native_tokens_prompt
1532
native_tokens_completion
2893
native_tokens_completion_images
0
native_tokens_reasoning
516
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.0292418
router
(null)
user_agent
"langchainjs-openai/1.0.0 ((node/v24.20.0; linux; x64))"
http_referer
(null)
request_id
"req-1790180926-OMwz8WewTDmRqx4jdrRB"
session_id
(null)
preset_id
(null)
api_type
"completions"
id
"gen-1790180926-4V0XJrAL7Tm6x1Wj8aLC"
upstream_id
"resp_05824d1be27ceccf016ab3fe3e296087d1876407b0d2cdaa5f"
provider_responses
0
endpoint_id
"1cfc7d9d-4404-4b8e-9ee4-58ae45c9dcd4"
id
"resp_05824d1be27ceccf016ab3fe3e296087d1876407b0d2cdaa5f"
is_byok
false
latency
449
model_permaslug
"openai/gpt-6-sol-20260922"
provider_name
"OpenAI"
status
200
total_cost
0.0292418
cache_discount
0.0027522
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
16
adverbTagCount
1
adverbTags
0
"Isolde said softly [softly]"
dialogueSentences
41
tagDensity
0.39
leniency
0.78
rawRatio
0.063
effectiveRatio
0.049
84.11%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
1888
totalAiIsmAdverbs
6
found
0
adverb
"slowly"
count
2
1
adverb
"carefully"
count
1
2
adverb
"slightly"
count
1
3
adverb
"suddenly"
count
1
4
adverb
"softly"
count
1
highlights
0
"slowly"
1
"carefully"
2
"slightly"
3
"suddenly"
4
"softly"
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)
68.22%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
1888
totalAiIsms
12
found
0
word
"warmth"
count
1
1
word
"pulse"
count
1
2
word
"chilled"
count
1
3
word
"trembled"
count
1
4
word
"stomach"
count
2
5
word
"lurched"
count
2
6
word
"whisper"
count
1
7
word
"flickered"
count
1
8
word
"familiar"
count
1
9
word
"raced"
count
1
highlights
0
"warmth"
1
"pulse"
2
"chilled"
3
"trembled"
4
"stomach"
5
"lurched"
6
"whisper"
7
"flickered"
8
"familiar"
9
"raced"
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
181
matches
(empty)
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
2
hedgeCount
1
narrationSentences
181
filterMatches
0
"feel"
1
"watch"
hedgeMatches
0
"seemed to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
206
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
repeatedSegmentCount
0
maxSentenceWordsSeen
34
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
1888
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
18
unquotedAttributions
0
matches
(empty)
50.00%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
74
wordCount
1734
uniqueNames
7
maxNameDensity
1.9
worstName
"Rory"
maxWindowNameDensity
3.5
worstWindowName
"Rory"
discoveredNames
Richmond
3
Park
3
Isolde
15
Rory
33
Heartstone
5
Nyx
14
London
1
persons
0
"Isolde"
1
"Rory"
2
"Heartstone"
3
"Nyx"
places
0
"Richmond"
1
"Park"
2
"London"
globalScore
0.548
windowScore
0.5
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
124
glossingSentenceCount
2
matches
0
"gap that seemed to contain more trees than Richmond Park could possibly hold"
1
"sounded like her father now"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
0
per1kWords
0
wordCount
1888
matches
(empty)
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
0
totalSentences
206
matches
(empty)
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
96
mean
19.67
std
18.29
cv
0.93
sampleLengths
0
10
1
43
2
8
3
34
4
6
5
34
6
8
7
13
8
72
9
6
10
21
11
6
12
17
13
18
14
4
15
2
16
47
17
6
18
38
19
17
20
7
21
1
22
5
23
22
24
26
25
31
26
4
27
8
28
6
29
21
30
21
31
55
32
13
33
14
34
50
35
5
36
10
37
6
38
40
39
28
40
3
41
3
42
2
43
11
44
70
45
59
46
25
47
18
48
5
49
15
99.45%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
3
totalSentences
181
matches
0
"been worn"
1
"been written"
2
"is kept"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
2
totalVerbs
285
matches
0
"was watching"
1
"was trying"
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
0
semicolonCount
0
flaggedSentences
0
totalSentences
206
ratio
0
matches
(empty)
100.00%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1738
adjectiveStacks
0
stackExamples
(empty)
adverbCount
57
adverbRatio
0.03279631760644419
lyAdverbCount
14
lyAdverbRatio
0.00805523590333717
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
206
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
206
mean
9.17
std
6.04
cv
0.659
sampleLengths
0
10
1
17
2
8
3
18
4
8
5
15
6
12
7
7
8
6
9
9
10
16
11
9
12
3
13
5
14
5
15
8
16
24
17
5
18
1
19
18
20
10
21
14
22
6
23
6
24
15
25
6
26
6
27
11
28
18
29
4
30
2
31
3
32
24
33
20
34
4
35
2
36
3
37
9
38
4
39
22
40
5
41
12
42
7
43
1
44
5
45
11
46
11
47
6
48
20
49
2
60.68%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
5
diversityRatio
0.3786407766990291
totalSentences
206
uniqueOpeners
78
41.41%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
2
totalSentences
161
matches
0
"Then the current turned, and"
1
"Then she realised they were"
ratio
0.012
100.00%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
33
totalSentences
161
matches
0
"Her silver hair stirred, though"
1
"She had seen Isolde’s grove"
2
"She was watching a patch"
3
"she said at last"
4
"They stopped beside an oak"
5
"She approached carefully."
6
"She drew Isolde’s dagger from"
7
"They had come to the"
8
"It had taken an hour"
9
"She slipped the dagger’s point"
10
"She snatched her hand away."
11
"Its water flowed in a"
12
"It felt firm, but her"
13
"She could still see the"
14
"They kept close to the"
15
"Their gaze dropped to the"
16
"She walked faster."
17
"Her stomach tightened with sudden"
18
"She knew enough to keep"
19
"Their shadow spread across the"
ratio
0.205
59.38%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
129
totalSentences
161
matches
0
"The sleet stopped at the"
1
"Rory stood with one boot"
2
"Isolde stepped between two stones"
3
"Her silver hair stirred, though"
4
"Nyx passed through the narrow"
5
"Rory took her second step."
6
"The sleet vanished behind her,"
7
"She had seen Isolde’s grove"
8
"Wildflowers crowded beneath the oaks"
9
"Roots crossed the earth like"
10
"The Heartstone warmed beneath her"
11
"Rory pulled the silver chain"
12
"The thumbnail-sized crimson gem glowed"
13
"Isolde did not answer at"
14
"She was watching a patch"
15
"she said at last"
16
"Nyx drifted ahead."
17
"They stopped beside an oak"
18
"The upper half of the"
19
"She approached carefully."
ratio
0.801
0.00%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
0
totalSentences
161
matches
(empty)
ratio
0
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
80
technicalSentenceCount
0
matches
(empty)
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
16
uselessAdditionCount
0
matches
(empty)
52.44%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
14
fancyCount
4
fancyTags
0
"they whispered (whisper)"
1
"Nyx murmured (murmur)"
2
"Isolde agreed (agree)"
3
"Nyx whispered (whisper)"
dialogueSentences
41
tagDensity
0.341
leniency
0.683
rawRatio
0.286
effectiveRatio
0.195
87.1894%