NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-02-25-01KJBEV1RZY95EYKRGN2C4VZ6F
Run Details
Model:
Qwen 3.5 27B
Test:
Bad Writing Habits
Scenario:
Fantasy: entering an ancient ruin
Duration:
1m 12s
Cost:
$0.014306
Provider:
Alibaba
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
95.60%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
51.61%
AI-ism word frequency
(details)
66.67%
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)
99.66%
Narrator intent-glossing
(details)
100.00%
"Not X but Y" pattern overuse
(details)
100.00%
Overuse of "that" (subordinate clause padding)
(details)
100.00%
Paragraph length variance
(details)
100.00%
Passive voice overuse
(details)
100.00%
Past progressive (was/were + -ing) overuse
(details)
100.00%
Em-dash & semicolon overuse
(details)
100.00%
Purple prose (modifier overload)
(details)
100.00%
Repeated phrase echo
(details)
100.00%
Sentence length variance
(details)
40.36%
Sentence opener variety
(details)
12.12%
Adverb-first sentence starts
(details)
100.00%
Pronoun-first sentence starts
(details)
0.00%
Subject-first sentence starts
(details)
0.00%
Subordinate conjunction sentence starts
(details)
100.00%
Technical jargon density
(details)
100.00%
Useless dialogue additions
(details)
88.60%
Dialogue tag variety (said vs. fancy)
(details)
81.8203%
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> <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> Continue the story using the following instructions: <instructions> 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. </instructions>
Model response
Messages
Meta
AI
The standing stones rose from
the Richmond grass like broken teeth.
Moss clung to the grey
granite, damp and heavy.
Aurora stepped forward, her boots
crunching on the dry earth.
The air smelled of ozone
and old rain.
She glanced at the silver
chain around her neck.
The Heartstone Pendant pulsed against
her collarbone, a steady,
rhythmic
heat that matched her heartbeat.
Isolde stood at the edge
of the clearing. Silver hair cascaded down her back, untouched by the wind.
Her pale lavender eyes fixed
on the space between the stones. A shimmering distortion rippled there, invisible to anyone without sight. The Veil thinned. "The barrier breathes," Isolde murmured.
Her voice carried the weight
of centuries. "It exhales now."
Nyx materialized from the shadow
of the largest stone.
The Shade shifted from a
wisp of darkness to a solid silhouette, six feet of living night.
Violet eyes glowed faintly in
the
gloom
. "Breathes," Nyx
echoed
.
The sound scraped like dry
leaves. "Or bleeds."
Aurora tightened her grip on
the Fae-Forged Blade.
The moonsilver hilt bit into
her palm, cold enough to numb her skin.
She kept the weapon loose
in her hand, ready to draw. "Move," Aurora said.
She stepped past the boundary
line marked by the moss. The world
lurched
. Gravity twisted, then snapped back into place. The grey sky of London vanished. Warmth washed over them, thick and cloying like a heavy blanket. Aurora blinked. The light here held a golden hue, amber and deep, casting long, sharp shadows. Vines draped over the stones, thick as pythons.
They bore fruit that glowed
with a soft internal light. The scent hit them instantly—roasted spices, fermenting grapes, and something metallic beneath. Blood. "Gluttony," Isolde whispered.
She looked down at her
feet. No footprints marred the dark soil. "We walk in Dymas." Nyx stretched their arms. The shadow form elongated, tasting the air. "The shadows here are hungry. They want to be eaten." Aurora
scanned
the horizon. Grand structures
loomed
in the distance, built of stone and gold. Terraced gardens climbed the hillsides, overflowing with exotic flora. The ground beneath them felt spongy, soft with rot and rich loam. "Keep moving," Aurora said.
She walked toward the nearest
path. The Heartstone burned hotter against her skin. The heat radiated through her shirt, branding her chest. Isolde fell into step beside her. The Half-Fae moved without sound. "The Prince watches. Belphegor knows we cross the threshold." "Let him watch," Nyx said.
They drifted ahead, merging with
the shadow of a trellis. "Shadows hide better than stone." Aurora ignored the warning. The path wound through rows of grapevines. The grapes hung heavy, dark purple and bruised.
She reached out to touch
one. The skin felt warm, pulsing
slightly
. She pulled her hand back. "Do not taste," Isolde said. "The fruit holds contracts. A single bite binds the soul to the soil." Aurora nodded.
She kept her eyes on
the road. The air grew heavier the deeper they went. Heat radiated from the earth, rising in visible waves. Sweat beaded on her forehead.
She wiped it away with
her free hand. "Look," Nyx called out. The Shade stood before a stone archway. Vines choked the masonry, but the stone remained intact. Beyond the arch, a massive hall stood open. Tables stretched into the darkness, laden with silver platters. No one sat there. "Empty," Aurora said. "Not empty," Isolde corrected. She walked to the arch. "The feast waits for the worthy. Or the doomed." Aurora stepped closer. The heat inside the hall intensified. Steam rose from the platters. The smell of roasted meat filled the air, rich and savory. Her
stomach
growled. She
clenched her jaw
. "Stay focused,"
she told herself
. She gripped the blade tighter. The cold metal soothed the heat rising in her chest. Nyx moved into the hall. The shadows pooled around their feet, rising to meet them. "The air tastes of iron. Fresh blood." Aurora followed.
Her boots echoed on the
stone floor. The sound traveled too far, bouncing off the high vaulted ceiling. Dust motes danced in the amber light, swirling in patterns that
looked like writing
. "Isolde," Aurora said. "Can you see a way through?" The Seer tilted her head.
Her eyes glowed faintly in
the dim light. "The path bends. It circles the throat of the beast." "What beast?" "The one who owns this place." Isolde pointed toward a staircase spiraling down into darkness. "Down leads to the kitchen. Up leads to the throne." Aurora looked at the stairs. The darkness below
seemed to
move, shifting like smoke. The Heartstone
pulsed
violently, a sharp
throb
against her ribs. "Down," Aurora decided. "The kitchen. We find the source of the heat." "The source," Nyx said. They stood at the edge of the stairs. "Or the fire." "Same thing," Aurora replied. She descended the first step. The stone felt warm under her boot. The air grew thicker, humid with steam and the scent of garlic and thyme. Isolde followed, her silver dress whispering against the stone. "Beware the cook. They carve the truth from the bone." Aurora didn't answer. She focused on the rhythm of her steps. One, two, three. The darkness below swallowed the light. The heat pressed against her skin, sticky and suffocating. She pulled the pendant out from under her shirt. The deep crimson gem glowed brighter, illuminating the steps ahead. The light revealed carvings on the wall. Scenes of feasting, of mouths opening wide, of hands reaching for impossible food. The stone felt slick to the touch. "Stop," Nyx said. Aurora halted. The Shade stood in the shadows of the landing. "Something moves," Nyx whispered. The voice came from everywhere and nowhere. "Below us." Aurora listened. A low hum
vibrated
through the floor. It sounded like a choir, but the notes were discordant. A low growl mixed with the sound of chopping. "We go," Aurora said. She took the next step. The hum grew louder. The smell of raw meat overwhelmed the spices. The Heartstone burned so hot she had to wrap her fingers around the chain to protect her skin. Isolde paused at the bottom of the stairs. The darkness here was absolute, save for the glow of the pendant. "The Wardens monitor the rift points." "Let them monitor," Aurora said. She walked into the
gloom
. "We need the portal." "Portals demand a toll," Isolde warned. Aurora stopped. She looked back at the Seer. "We know the price." Nyx drifted forward, their form dissolving into the darkness. "The price is always higher than the coin." Aurora stepped deeper into the kitchen. The floor changed from stone to slate. Steam hissed from vents in the walls. The heat radiated from massive ovens built into the walls, black iron and ancient stone. She saw a table in the center of the room. A map lay spread across it, glowing with faint lines of light. The Heartstone pulled her toward it. "Isolde," Aurora said. "Look." The Seer approached the table. Her
eyes widened
. The lines on the map shifted, rearranging themselves. "The Veil," Isolde said. "It tears here." Aurora reached for the map. The paper felt warm, like living skin. She touched a specific point where the lines converged. The pendant flared, blinding white. The room shook. Dust fell from the ceiling. The ovens roared, flames licking the air. "Pull back," Nyx said. The Shade reformed near the door. "The walls are closing." Aurora didn't move. She stared at the map. The point
pulsed
in time with her heart. "This is the way." "The way to where?" Isolde asked. "To the core," Aurora said. She grabbed the map. The paper burned her fingers. She didn't let go. Nyx lunged forward, grabbing her arm. The shadow hand
felt like ice
. "Let it go. The heat consumes." Aurora shook them off. She held the map tight. "We need this." The room tilted. The floor dropped away beneath them. The steam turned to fog, thick and blinding. The sound of the ovens became a roar, a dragon's breath. Isolde raised a hand. A barrier of light formed around them, holding back the fog. "The Fae do not burn," she said. Aurora looked at the map again. The lines had changed. They pointed to a door at the far end of the room. The door
was made
of wood, dark and polished. "Go," Aurora said. She tossed the map to Isolde. "Take it." Isolde caught the paper. It stopped burning in her hands. Nyx moved toward the door. "I will open it." Aurora followed. The heat lessened as they approached the wood. The wood smelled of cedar and old magic. Nyx placed a hand on the handle. The metal was cold. They pushed. The door creaked open. Beyond lay a garden, but not like the one outside. The plants here
were made
of glass. They chimed in the wind. The sky above was black, dotted with stars that moved too fast. "Where are we?" Aurora asked. Nyx stepped through the threshold. "Between." Isolde followed, the map tucked into her sash. "The space between the bite and the swallow." Aurora stepped onto the glass soil. It rang under her boots. The stars above swirled into a vortex. "We walk," Aurora said. She looked at the path ahead. It wound through the glass flowers. "Watch your step," Nyx said. "The glass cuts." Aurora nodded. She walked forward. The stars above spun faster. The chime of the plants grew louder, a
symphony
of breaking glass. They moved deeper into the garden. The path narrowed. The glass flowers grew taller, blocking the light. Aurora kept the blade ready. The cold metal was the only thing that felt real. Isolde stopped. "The song changes." Aurora listened. The chime shifted to a low hum. The stars stopped spinning. They froze in place. "Silence," Nyx said. Aurora looked at the frozen stars. "Something is coming." The path ended at a pool of water. The water was black,
perfectly
still. It reflected the stars above, but the reflection showed a different sky. A red sky. "Look," Isolde said. Aurora leaned over the pool. The reflection showed a city. Towers of gold and fire. A throne sat in the center. "Dymas," Aurora said. "The true Dymas." Nyx stepped to the edge. "The reflection lies." "Or shows the truth," Isolde countered. Aurora looked at her own reflection. Her eyes were blue, but the water made them
look
black. The Heartstone glowed in the reflection, bright and red. "We cross," Aurora said. She stepped onto the water. Her boot did not sink. The surface held her
weight
. Nyx followed. Isolde hesitated, then stepped out. They walked across the black water. The reflection beneath them shifted. The towers grew closer. The fire roared louder. Aurora kept her eyes on the far bank. The path led to a gate. The gate was open. They reached the bank. The water turned to stone beneath their feet. The gate
loomed
before them, massive and iron-bound. "Open it," Aurora said. Nyx reached for the latch. The iron was cold. "Wait," Isolde said. Aurora turned. "Why?" "The lock speaks," Isolde said. Aurora listened. The gate hummed. A voice, deep and resonant, spoke from the metal. "Name your hunger." Aurora looked at Nyx. She looked at Isolde. "I am hungry for the truth," Aurora said. The gate shuddered. The latch clicked. Nyx pulled the handle. The gate swung open. Beyond lay the throne room. The air smelled of smoke and gold. The floor was polished
marble
. Aurora stepped through. The Heartstone stopped pulsing. It went cold. "Good," Nyx said. "Bad," Isolde said. Aurora looked at the throne. It sat empty. "Empty," Aurora said. "Not empty," Isolde said. Aurora walked to the throne. She placed her hand on the armrest. The stone felt warm. "Who sits here?" Aurora asked. "The one who waits," Nyx said. Aurora looked up. The ceiling
was gone
. Only the red sky remained. "We leave," Aurora said. "Too late," Isolde said. The ground shook. The throne room
began to
close in. Aurora turned to the gate. It slammed shut. "Open it," Aurora said. Nyx pounded on the iron. "It holds." "Break it," Aurora said. Nyx drew a shadow blade. They struck the gate. The metal rang. Isolde stepped forward. She touched the gate. "The lock requires a life." Aurora looked at the pendant. The Heartstone glowed again. "Mine," Aurora said. She pulled the pendant from her neck. She held it out to the gate. The metal drank the light. The gate groaned. "Go," Aurora said. Nyx grabbed her arm. "No." "Go," Aurora repeated. Nyx released her. They stepped back. Isolde walked to the gate. She touched the metal. "The debt is paid." The gate opened. Aurora stepped through. Nyx followed. Isolde brought up the rear. They stood in the garden of glass. The stars spun again. "We are out," Nyx said. "For now," Isolde said. Aurora looked back at the gate. It closed. "Move," Aurora said. They walked back across the water. The stars watched them. They reached the kitchen. The ovens were silent. They climbed the stairs. The hum stopped. They reached the archway. The shadows were still. They stepped through the Veil.
The standing stones rose from
the grass. The air smelled of rain. Aurora looked at the pendant. It was dark. "Done," Nyx said. "Never done," Isolde said. Aurora put the pendant back around her neck. "Next time." "Next time," Nyx agreed. They walked away from the stones. The grass whispered under their feet. Aurora looked at the sky. It was grey. "London," she said. "Home," Isolde said. "Home," Nyx said. They walked into the city.
created_at
"2026-02-25T22:31:14.984Z"
2/25/2026, 10:31:14 PM
model
"qwen/qwen3.5-27b-20260224"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
876
moderation_latency
(null)
generation_time
72236
tokens_prompt
1816
tokens_completion
5912
native_tokens_prompt
1829
native_tokens_completion
5732
native_tokens_completion_images
(null)
native_tokens_reasoning
2361
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
"stop"
usage
0.0143055
router
(null)
provider_responses
0
endpoint_id
"f3f88554-0c22-4d57-973b-0dec948808e8"
id
"chatcmpl-f44261af-dcbe-9530-9ade-113aff1d8525"
is_byok
false
latency
876
model_permaslug
"qwen/qwen3.5-27b-20260224"
provider_name
"Alibaba"
status
200
api_type
"completions"
id
"gen-1772058674-wlSHQsqRBhJ0ZKFKZs9h"
upstream_id
"chatcmpl-f44261af-dcbe-9530-9ade-113aff1d8525"
total_cost
0.0143055
cache_discount
(null)
upstream_inference_cost
0
provider_name
"Alibaba"
Evaluation details
Result
Evaluator
Details
Meta Data
100.00%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
62
adverbTagCount
0
adverbTags
(empty)
dialogueSentences
105
tagDensity
0.59
leniency
1
rawRatio
0
effectiveRatio
0
95.60%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
2273
totalAiIsmAdverbs
2
found
0
adverb
"slightly"
count
1
1
adverb
"perfectly"
count
1
highlights
0
"slightly"
1
"perfectly"
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)
51.61%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
2273
totalAiIsms
22
found
0
word
"pulsed"
count
3
1
word
"rhythmic"
count
1
2
word
"carried the weight"
count
1
3
word
"gloom"
count
2
4
word
"echoed"
count
2
5
word
"lurched"
count
1
6
word
"warmth"
count
1
7
word
"scanned"
count
1
8
word
"loomed"
count
2
9
word
"stomach"
count
1
10
word
"throb"
count
1
11
word
"vibrated"
count
1
12
word
"to the core"
count
1
13
word
"symphony"
count
1
14
word
"silence"
count
1
15
word
"weight"
count
1
16
word
"marble"
count
1
highlights
0
"pulsed"
1
"rhythmic"
2
"carried the weight"
3
"gloom"
4
"echoed"
5
"lurched"
6
"warmth"
7
"scanned"
8
"loomed"
9
"stomach"
10
"throb"
11
"vibrated"
12
"to the core"
13
"symphony"
14
"silence"
15
"weight"
16
"marble"
66.67%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
2
maxInWindow
2
found
0
label
"eyes widened/narrowed"
count
1
1
label
"clenched jaw/fists"
count
1
highlights
0
"eyes widened"
1
"clenched her jaw"
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
0
narrationSentences
351
matches
(empty)
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
1
hedgeCount
2
narrationSentences
351
filterMatches
0
"look"
hedgeMatches
0
"seemed to"
1
"began to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
394
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
maxSentenceWordsSeen
18
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
2272
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
52
unquotedAttributions
0
matches
(empty)
0.00%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
155
wordCount
1939
uniqueNames
13
maxNameDensity
3.46
worstName
"Aurora"
maxWindowNameDensity
8.5
worstWindowName
"Aurora"
discoveredNames
Richmond
1
Heartstone
8
Pendant
1
Veil
2
Shade
4
Fae-Forged
1
Blade
1
London
1
Half-Fae
1
Aurora
67
Isolde
32
Seer
3
Nyx
33
persons
0
"Heartstone"
1
"Shade"
2
"Half-Fae"
3
"Aurora"
4
"Isolde"
5
"Seer"
6
"Nyx"
places
0
"Richmond"
1
"Pendant"
2
"London"
globalScore
0
windowScore
0
99.66%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
149
glossingSentenceCount
3
matches
0
"looked like writing"
1
"sounded like a choir, but the notes were d"
2
"felt like ice"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
0
per1kWords
0
wordCount
2272
matches
(empty)
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
0
totalSentences
394
matches
(empty)
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
160
mean
14.2
std
11.15
cv
0.785
sampleLengths
0
62
1
42
2
15
3
33
4
11
5
32
6
13
7
43
8
31
9
19
10
21
11
36
12
26
13
20
14
20
15
36
16
18
17
39
18
4
19
37
20
3
21
18
22
32
23
20
24
22
25
34
26
9
27
23
28
2
29
25
30
24
31
12
32
15
33
30
34
19
35
48
36
27
37
3
38
11
39
13
40
28
41
4
42
35
43
26
44
14
45
6
46
12
47
17
48
35
49
28
100.00%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
3
totalSentences
351
matches
0
"was made"
1
"were made"
2
"was gone"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
0
totalVerbs
394
matches
(empty)
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
1
semicolonCount
0
flaggedSentences
1
totalSentences
394
ratio
0.003
matches
0
"The scent hit them instantly—roasted spices, fermenting grapes, and something metallic beneath."
100.00%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1943
adjectiveStacks
0
stackExamples
(empty)
adverbCount
32
adverbRatio
0.016469377251672673
lyAdverbCount
8
lyAdverbRatio
0.004117344312918168
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
394
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
394
mean
5.77
std
2.94
cv
0.509
sampleLengths
0
11
1
9
2
10
3
8
4
9
5
15
6
8
7
10
8
11
9
10
10
3
11
5
12
7
13
3
14
9
15
17
16
7
17
3
18
6
19
2
20
8
21
13
22
11
23
3
24
10
25
3
26
7
27
6
28
11
29
2
30
14
31
8
32
10
33
12
34
1
35
3
36
6
37
6
38
4
39
4
40
7
41
10
42
4
43
11
44
9
45
12
46
4
47
6
48
7
49
9
40.36%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
38
diversityRatio
0.19796954314720813
totalSentences
394
uniqueOpeners
78
12.12%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
1
totalSentences
275
matches
0
"Only the red sky remained."
ratio
0.004
100.00%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
72
totalSentences
275
matches
0
"She glanced at the silver"
1
"Her pale lavender eyes fixed"
2
"Her voice carried the weight"
3
"She kept the weapon loose"
4
"She stepped past the boundary"
5
"They bore fruit that glowed"
6
"She looked down at her"
7
"She walked toward the nearest"
8
"They drifted ahead, merging with"
9
"She reached out to touch"
10
"She pulled her hand back."
11
"She kept her eyes on"
12
"She wiped it away with"
13
"She walked to the arch."
14
"Her stomach growled."
15
"She clenched her jaw."
16
"she told herself"
17
"She gripped the blade tighter."
18
"Her boots echoed on the"
19
"Her eyes glowed faintly in"
ratio
0.262
0.00%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
264
totalSentences
275
matches
0
"The standing stones rose from"
1
"Moss clung to the grey"
2
"Aurora stepped forward, her boots"
3
"The air smelled of ozone"
4
"She glanced at the silver"
5
"The Heartstone Pendant pulsed against"
6
"Isolde stood at the edge"
7
"Her pale lavender eyes fixed"
8
"A shimmering distortion rippled there,"
9
"The Veil thinned."
10
"Her voice carried the weight"
11
"Nyx materialized from the shadow"
12
"The Shade shifted from a"
13
"Violet eyes glowed faintly in"
14
"The sound scraped like dry"
15
"Aurora tightened her grip on"
16
"The moonsilver hilt bit into"
17
"She kept the weapon loose"
18
"She stepped past the boundary"
19
"The world lurched."
ratio
0.96
0.00%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
0
totalSentences
275
matches
(empty)
ratio
0
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
41
technicalSentenceCount
1
matches
0
"The Heartstone Pendant pulsed against her collarbone, a steady, rhythmic heat that matched her heartbeat."
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
62
uselessAdditionCount
0
matches
(empty)
88.60%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
57
fancyCount
7
fancyTags
0
"Isolde murmured (murmur)"
1
"Isolde whispered (whisper)"
2
"Isolde corrected (correct)"
3
"Nyx whispered (whisper)"
4
"Isolde warned (warn)"
5
"Aurora repeated (repeat)"
6
"Nyx agreed (agree)"
dialogueSentences
105
tagDensity
0.543
leniency
1
rawRatio
0.123
effectiveRatio
0.123
81.8203%