NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-07-09-01KX410A5VE8MJ4X3WW055N7QT
Run Details
Model:
GPT-5.6 Terra (Reasoning)
Test:
Bad Writing Habits
Scenario:
Fantasy: entering an ancient ruin
Duration:
40.8s
Cost:
$0.047625
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
83.24%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
55.99%
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)
98.94%
Passive voice overuse
(details)
100.00%
Past progressive (was/were + -ing) overuse
(details)
99.57%
Em-dash & semicolon overuse
(details)
76.00%
Purple prose (modifier overload)
(details)
100.00%
Repeated phrase echo
(details)
100.00%
Sentence length variance
(details)
51.89%
Sentence opener variety
(details)
100.00%
Adverb-first sentence starts
(details)
100.00%
Pronoun-first sentence starts
(details)
85.00%
Subject-first sentence starts
(details)
100.00%
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)
93.3544%
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 last oak stone stood
taller than the others, its barkless surface ribbed with pale seams that looked less carved than grown.
Aurora stopped before it with
one hand closed around the Heartstone beneath her jumper.
It had begun to pulse
before they reached the grove. Not hard. Not painfully.
Just a small, steady beat
against her breastbone, warm enough to make her aware of every breath she took. Behind her, Richmond Park had fallen strangely silent.
The wind still moved through
the ordinary trees beyond the ring of standing stones, but it reached the clearing as a distant sound, softened and thinned, like wind remembered from another room.
Wildflowers crowded the grass at
Aurora’s boots: bluebells beside foxgloves, buttercups beside white blooms she did not know.
They should not all have
been there in December.
Frost silvered the park beyond
the grove, while here bees crawled drunkenly through open petals.
Isolde stood before the stone
with her silver hair unbound and
gleaming
in the colourless dusk.
She had not left a
mark in the dew as she crossed the clearing.
Her pale lavender eyes rested
on Aurora, serene and
unreadable
. “The door is hungry,”
the seer said
. Aurora glanced at the slab. “That’s reassuring.” “It is not hungry for you.” “Marginally more reassuring.”
A faint violet glimmer shifted
at the edge of the grove.
Nyx unfolded from the shadow
cast by the standing stone, lengthening into their tall, humanlike shape. Their outline never quite settled; darkness moved under their skin as if they
were made
from smoke trapped beneath glass.
Their eyes fixed on the
stone. “I smell ash,” they whispered. Aurora looked at them. “You smell things?” “I remember smelling things.”
That did not improve the
feeling pressing between her ribs.
The oak stone had seemed
merely ancient when Isolde brought them here.
Now a line of amber
light ran down its centre.
It was thin as a
thread, then thickened
slowly
, spilling
warmth
over the moss at its base. The Heartstone answered, its crimson glow shining through the wool of Aurora’s jumper.
She drew it out on
its chain. The gem was no bigger than her thumbnail, deep red and lit from somewhere within. It beat once. The stone split open without making a sound. Beyond it lay no path through Richmond Park. There was a road paved in black, glossy cobbles, descending through a city of impossible abundance. Towers rose on either side, their walls built from veined
marble
, glazed tile, and what looked alarmingly like enormous bones. Gold light poured from windows shaped like open mouths. Far below, hundreds of lanterns drifted over streets choked with market stalls and awnings. Beyond the city sprawled rolling hills striped with vineyards.
Their leaves burned copper and
purple under a warm amber sky. Aurora’s mind offered up the word sunset, because it had no better one. But the sun hung directly overhead: a vast, dull-red fruit swollen behind bands of cloud.
It did not illuminate so
much as steep the world in heat. A gust came through the opening. It smelled of roast meat, crushed grapes, cinnamon, smoke, and something sweet enough to turn Aurora’s
stomach
. Nyx recoiled. Their shadowed shoulders drew tight. “The Veil is open,” Isolde said
softly
. Aurora stared through the doorway. “That’s Hel.” “Dymas,” said Isolde. “One of Hel’s hungers, given streets and a crown.” The portal’s amber edge
fluttered
. For an instant Aurora saw the stone whole again, then the alien city beyond returned.
She touched the cold hilt
of the blade hidden beneath her coat. Isolde had pressed it into her hand an hour earlier without ceremony: a slim leaf-shaped dagger of moonsilver, cold enough to ache against her palm.
Now its weight at Aurora’s
hip steadied her. “What exactly are we looking for?” she asked. “The keeper of the threshold carries the key that closes it.” “That sounds almost straightforward.” “Beware simple things,” Isolde replied. “They are often only complicated things wearing a plain coat.” Aurora exhaled through her nose. “Right. Of course.” Nyx turned their violet gaze toward her. “We may still return.” The suggestion hung there. Aurora thought of the rift opening in the basement beneath Silas’s bar. Of the heat that had rolled through its cracks. Of the thing on the other side that had laughed in a voice like grease hissing in a pan.
If they did nothing, the
tear would widen. Whatever had begun leaking through would not stop at sour milk, black flies, and shadows in the corner of people’s rooms. And the Heartstone had led them here as surely as a compass needle. “No,” she said. “We go in, find the keeper, take the key, and get out before this place decides we look like dessert.” Isolde’s expression might have been approval. With her, it was hard to tell. “Do not accept a gift,”
the seer said
. “Do not eat what is offered. Do not state your full name.” Aurora looked down the glittering road. “Anything else?” “Yes.” Isolde passed through the doorway. Aurora stared after her. “She does know how to make an entrance.” Nyx’s
whisper
curled around her. “She knows how to leave one.” Then they slipped after Isolde, their body thinning into a dark ribbon that vanished through the amber seam. Aurora tightened her hand around the Heartstone and stepped into Hel. Heat struck first. Not dry heat, not the flat blast from an oven. This heat had moisture and
weight
. It wrapped around her face, slid under her collar, filled her lungs with spice and smoke.
Her boots met black cobbles
slick as wet glass. Behind her, the portal gave a low, throat-deep sigh. She spun around. The opening still hung between two jagged walls of stone, though neither wall had been there from the grove.
It looked like a vertical
pool of golden oil. Through it she saw a sliver of green grass, the white edge of an oak stone, a piece of winter sky.
Then it narrowed to a
line and vanished. Aurora stood
very
still. “Cheerful,” she said. “You have crossed,” Isolde told her. “I noticed.” The road descended into the city. Warm amber light gleamed on everything: gutters of hammered brass, rooftop domes painted in jewel colours, strings of red fruits dangling from balconies. The air hummed with distant voices.
Somewhere, music rose and fell—a
rapid clatter of hand drums beneath a long, mournful reed melody. At first glance, the streets looked crowded. At second glance, Aurora saw that many of the figures moving between the stalls were not entirely human. A woman with a ram’s curled horns balanced a platter piled with sugared figs on one shoulder. A small, broad creature with skin the colour of boiled beetroot argued fiercely with a fishmonger whose lower half dissolved into a tail of silver scales. Tall figures in black robes drifted beneath parasols made from broad, translucent leaves; no feet showed beneath their hems. And among them walked people who looked horribly ordinary. A young man in a white chef’s jacket carried a basket of tiny purple onions.
His dark hair curled damply
at his forehead.
He glanced up as Aurora
passed, and his
eyes widened
. “New?” he asked in an English accent. Aurora slowed despite herself. Nyx moved between them, shadow flowing over the cobbles. The man looked at Nyx, then away immediately. “Lost,” Aurora said. His mouth tightened. “Same thing, here.”
Before she could ask another
question, an enormous bell sounded somewhere deeper in the city. The note rolled through the streets. Stallholders snapped canvas covers over their wares. Creatures that had been bargaining moments before
began to
move with sudden purpose. The young chef’s basket tipped, spilling onions over the road. “Go,” he said. “What’s happening?” “Feast bell. You don’t want to be standing in the open when the Prince’s guests come through.” He dropped to his knees, scrabbling after the onions. Aurora crouched instinctively to help, then caught Isolde’s gaze. The seer did not speak. She did not need to. No gifts. No food. No bargains.
Still, leaving him on the
ground felt wrong. Aurora snatched one onion before it rolled into a gutter. Its skin
was patterned
with tiny black veins. When she held it out, the young man flinched as though she had offered him a live spider. “Keep it,” he said. “It’s yours.” “Nothing is only yours in Dymas.” The bell sounded again. He took the onion, shoved it into his basket, and rose. “The old cistern,” he said
quickly
. “If you need a keeper, look beneath the Hall of a Thousand Tables. But don’t ask for him by title. They hear titles.”
Then he vanished into the
crowd. Aurora watched him go. “That was either useful or
very
ominous.” “Both,” Nyx said. They followed Isolde into a narrow side street just as the main avenue filled. The Prince’s guests came down the hill in a procession of lacquered carriages pulled by creatures with six jointed legs and peacock tails. Each carriage bore a different crest: a silver spoon dripping blood, a green apple split to show teeth, a wine cup overflowing with black liquid. Demons lounged within them in silks,
velvet
, and polished armour. One wore a mask shaped like a smiling infant’s face. Another had no face at all, only a smooth stretch of skin above a mouth that opened too wide. Servants hurried alongside the procession carrying covered dishes. The scent that drifted from those dishes made Aurora’s
stomach
clench with sudden, ravenous longing. For one mad second she smelled her mother’s kitchen in Cardiff: lamb roasting with rosemary, potatoes crisping in fat, the buttery
warmth
of Welsh cakes cooling on a rack. She saw Brendan at the table, glasses slipping down his nose as he pretended not to laugh at one of Jennifer’s awful jokes. Her feet moved toward the street. Nyx caught her wrist. Their hand was no hand at all, just an intense cold clasping the skin above her scar. The memory
shattered
. Aurora blinked. A covered platter passed within arm’s reach. Beneath its silver lid, something wet scratched
softly
. “Don’t,” Nyx whispered. Her face burned with shame, though no one had seen. “I wasn’t going to.” “You were.” “Fine.” She pulled her wrist free, more
sharply
than she meant to. “I was.” Nyx’s violet eyes dimmed. “It makes longing into a leash.” Isolde looked at Aurora’s hand. “The first hunger is never for food.” The line lodged beneath Aurora’s ribs. The procession passed. Its noise drained down the avenue.
Only when the last carriage
rolled away did the side street
seem to
breathe again. They went deeper. The city changed as they descended. Bright market stalls gave way to kitchens large as warehouses, open on all sides to the street. Aurora saw rows of helbound cooks sweating over vats of bubbling sauces. Cleavers rose and fell. Fire burned blue beneath copper pots. In one courtyard, pale winged beasts were
being milked
into
crystal
jars. In another, vines climbed a wall and bore ripe fruit, green and gold and crimson, all on the same twisting branch. Nobody
looked surprised
to see a woman in a winter coat, a silver-haired seer, and a walking shadow pass by. That worried Aurora more than stares would have. The Heartstone had grown hot against her chest. She pressed her fingers over it through her jumper. “We’re close.” “Close is a knife with two edges,” Isolde said. “Do you rehearse these?” “No.” They reached a broad staircase descending beneath an archway carved with feasting figures. Their mouths had
been worn
smooth by time, but their hands remained sharp, each one reaching for a bowl, a cup, a loaf, another hand. Above the arch, words had been cut into the stone in an alphabet Aurora did not know. Nyx halted at the threshold. Their shape
flickered
. “There is a ward.” Aurora drew the Fae-forged blade. The moonsilver dagger slid free with a
whisper
. In the amber light, its edge held a faint cold gleam, like moonlight on deep water. The air around it tightened. Isolde’s pale eyes settled on the weapon. “A thorn from a garden no demon may own.” “Can it get us through?” Aurora asked. “It can cut.” That was
not a yes, but it was close enough
. Aurora stepped up to the arch. At first she saw nothing.
Then she tilted her head
and caught it: a shimmer stretched across the stairwell, fine as spider
silk
, trembling with dull red light. It reminded her of heat over pavement, except this heat had teeth. Shapes moved inside it. Open mouths. Reaching hands. She lifted the blade. Cold ran up her arm. The small scar on her wrist prickled. “Stay behind me,” she said. Nyx gave a sound that might have been amusement. “You are
very
small to be issuing such commands.” “And yet you’re listening.” She touched the dagger’s edge to the ward. The blade passed through with almost no resistance. The shimmer screamed. Not loudly. The sound came inside Aurora’s skull, a shriek of knives dragged over plates. Red light surged across the stairwell. The mouths in the ward opened wider. Aurora drove the blade down. The ward split from top to bottom. A gust of air poured up from the darkness below, cold enough to frost the sweat on Aurora’s skin. The red shimmer curled inward, trying to close around the wound. She dragged the moonsilver edge sideways. The ward tore apart in a spray of sparks that smelled of burnt sugar. For a moment, everything went silent.
Then far beneath them, something
enormous knocked once against stone. Aurora lowered the blade. The stairs led into blackness. Not shadow—Nyx’s presence made her understand the difference. This darkness was dense and waiting. From below came the slow,
rhythmic
sound of water dripping into a vast space. The Heartstone
pulsed
, hot and eager. Isolde stepped past Aurora without leaving a footprint on the dust gathering at the first stair. “The table is above,” she murmured. “The mouth is below.” Aurora looked down into the dark. Her
pulse
had begun to match the pendant’s. “What’s below?” Isolde turned her head. Her silver hair caught the amber light like a blade catching flame. “The keeper,” she said. “And everything it has ever been fed.”
created_at
"2026-07-09T18:07:27.068Z"
7/9/2026, 6:07:27 PM
model
"openai/gpt-5.6-terra-20260709"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
1893
moderation_latency
(null)
generation_time
39796
tokens_prompt
1590
tokens_completion
4006
native_tokens_prompt
1532
native_tokens_completion
3149
native_tokens_completion_images
0
native_tokens_reasoning
78
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.04762475
router
(null)
provider_responses
0
endpoint_id
"3cc89000-ae34-4dde-9c7d-5ce009c8af0b"
id
"resp_0860da60f7a1a13a016a4fe35f28a081949e222d92546fc056"
is_byok
false
latency
238
model_permaslug
"openai/gpt-5.6-terra-20260709"
provider_name
"OpenAI"
status
200
user_agent
"langchainjs-openai/1.0.0 ((node/v24.18.0; linux; x64))"
http_referer
(null)
request_id
"req-1783620447-hx2inagxiziymItagUQp"
session_id
(null)
preset_id
(null)
api_type
"completions"
id
"gen-1783620447-uFlx2vnUjeItfzks5uCG"
upstream_id
"resp_0860da60f7a1a13a016a4fe35f28a081949e222d92546fc056"
total_cost
0.04762475
cache_discount
0.00344025
upstream_inference_cost
0
provider_name
"OpenAI"
response_cache_source_id
(null)
data_region
"global"
Evaluation details
Result
Evaluator
Details
Meta Data
100.00%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
22
adverbTagCount
2
adverbTags
0
"Isolde said softly [softly]"
1
"he said quickly [quickly]"
dialogueSentences
65
tagDensity
0.338
leniency
0.677
rawRatio
0.091
effectiveRatio
0.062
83.24%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
2386
totalAiIsmAdverbs
8
found
0
adverb
"slowly"
count
1
1
adverb
"softly"
count
2
2
adverb
"very"
count
3
3
adverb
"quickly"
count
1
4
adverb
"sharply"
count
1
highlights
0
"slowly"
1
"softly"
2
"very"
3
"quickly"
4
"sharply"
100.00%
AI-ism character names
Target: 0 AI-default names (17 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
100.00%
AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
55.99%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
2386
totalAiIsms
21
found
0
word
"pulse"
count
2
1
word
"gleaming"
count
1
2
word
"unreadable"
count
1
3
word
"warmth"
count
2
4
word
"marble"
count
1
5
word
"stomach"
count
2
6
word
"fluttered"
count
1
7
word
"weight"
count
2
8
word
"whisper"
count
2
9
word
"velvet"
count
1
10
word
"shattered"
count
1
11
word
"crystal"
count
1
12
word
"flickered"
count
1
13
word
"silk"
count
1
14
word
"rhythmic"
count
1
15
word
"pulsed"
count
1
highlights
0
"pulse"
1
"gleaming"
2
"unreadable"
3
"warmth"
4
"marble"
5
"stomach"
6
"fluttered"
7
"weight"
8
"whisper"
9
"velvet"
10
"shattered"
11
"crystal"
12
"flickered"
13
"silk"
14
"rhythmic"
15
"pulsed"
100.00%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
1
maxInWindow
1
found
0
label
"eyes widened/narrowed"
count
1
highlights
0
"eyes widened"
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
2
narrationSentences
222
matches
0
"d with shame"
1
"looked surprised"
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
0
hedgeCount
2
narrationSentences
222
filterMatches
(empty)
hedgeMatches
0
"began to"
1
"seem to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
264
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
repeatedSegmentCount
0
maxSentenceWordsSeen
32
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
2384
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
24
unquotedAttributions
0
matches
(empty)
50.00%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
90
wordCount
2079
uniqueNames
16
maxNameDensity
1.92
worstName
"Aurora"
maxWindowNameDensity
3.5
worstWindowName
"Aurora"
discoveredNames
Heartstone
6
Richmond
2
Park
2
Aurora
40
December
1
Isolde
17
Silas
1
Hel
1
English
1
Nyx
13
Prince
1
Cardiff
1
Welsh
1
Brendan
1
Jennifer
1
Fae-forged
1
persons
0
"Heartstone"
1
"Aurora"
2
"Isolde"
3
"Silas"
4
"Nyx"
5
"Prince"
6
"Brendan"
7
"Jennifer"
places
0
"Richmond"
1
"Park"
2
"December"
3
"Hel"
4
"English"
5
"Cardiff"
globalScore
0.538
windowScore
0.5
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
151
glossingSentenceCount
2
matches
0
"seemed merely ancient when Isolde brought them here"
1
"looked like a vertical pool of golden oil"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
1
per1kWords
0.419
wordCount
2384
matches
0
"not a yes, but it was close enough"
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
0
totalSentences
264
matches
(empty)
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
146
mean
16.33
std
17.85
cv
1.093
sampleLengths
0
36
1
10
2
23
3
82
4
40
5
7
6
7
7
6
8
3
9
53
10
5
11
7
12
4
13
10
14
52
15
25
16
8
17
8
18
79
19
13
20
27
21
6
22
17
23
7
24
7
25
7
26
12
27
20
28
45
29
8
30
11
31
4
32
15
33
8
34
11
35
4
36
69
37
13
38
23
39
13
40
20
41
8
42
1
43
5
44
12
45
11
46
18
47
11
48
3
49
50
98.94%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
4
totalSentences
222
matches
0
"were made"
1
"was patterned"
2
"being milked"
3
"been worn"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
0
totalVerbs
351
matches
(empty)
99.57%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
2
semicolonCount
2
flaggedSentences
4
totalSentences
264
ratio
0.015
matches
0
"Their outline never quite settled; darkness moved under their skin as if they were made from smoke trapped beneath glass."
1
"Somewhere, music rose and fell—a rapid clatter of hand drums beneath a long, mournful reed melody."
2
"Tall figures in black robes drifted beneath parasols made from broad, translucent leaves; no feet showed beneath their hems."
3
"Not shadow—Nyx’s presence made her understand the difference."
76.00%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
2086
adjectiveStacks
4
stackExamples
0
"vast, dull-red fruit"
1
"slim leaf-shaped dagger"
2
"low, throat-deep sigh."
3
"burned blue beneath copper"
adverbCount
70
adverbRatio
0.03355704697986577
lyAdverbCount
21
lyAdverbRatio
0.010067114093959731
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
264
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
264
mean
9.03
std
6.02
cv
0.666
sampleLengths
0
22
1
14
2
10
3
2
4
2
5
19
6
8
7
32
8
18
9
9
10
15
11
16
12
14
13
10
14
7
15
5
16
2
17
6
18
3
19
11
20
16
21
20
22
6
23
5
24
4
25
3
26
4
27
10
28
12
29
10
30
17
31
13
32
7
33
15
34
3
35
8
36
8
37
16
38
20
39
9
40
14
41
9
42
11
43
13
44
15
45
12
46
6
47
17
48
2
49
5
51.89%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
13
diversityRatio
0.3409090909090909
totalSentences
264
uniqueOpeners
90
100.00%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
9
totalSentences
196
matches
0
"Just a small, steady beat"
1
"Then they slipped after Isolde,"
2
"Then it narrowed to a"
3
"Somewhere, music rose and fell—a"
4
"Still, leaving him on the"
5
"Then he vanished into the"
6
"Only when the last carriage"
7
"Then she tilted her head"
8
"Then far beneath them, something"
ratio
0.046
100.00%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
45
totalSentences
196
matches
0
"It had begun to pulse"
1
"They should not all have"
2
"She had not left a"
3
"Her pale lavender eyes rested"
4
"Their outline never quite settled;"
5
"Their eyes fixed on the"
6
"It was thin as a"
7
"She drew it out on"
8
"It beat once."
9
"Their leaves burned copper and"
10
"It did not illuminate so"
11
"It smelled of roast meat,"
12
"Their shadowed shoulders drew tight."
13
"She touched the cold hilt"
14
"It wrapped around her face,"
15
"Her boots met black cobbles"
16
"She spun around."
17
"It looked like a vertical"
18
"His dark hair curled damply"
19
"He glanced up as Aurora"
ratio
0.23
85.00%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
147
totalSentences
196
matches
0
"The last oak stone stood"
1
"Aurora stopped before it with"
2
"It had begun to pulse"
3
"The wind still moved through"
4
"Wildflowers crowded the grass at"
5
"They should not all have"
6
"Frost silvered the park beyond"
7
"Isolde stood before the stone"
8
"She had not left a"
9
"Her pale lavender eyes rested"
10
"the seer said"
11
"Aurora glanced at the slab."
12
"A faint violet glimmer shifted"
13
"Nyx unfolded from the shadow"
14
"Their outline never quite settled;"
15
"Their eyes fixed on the"
16
"Aurora looked at them."
17
"That did not improve the"
18
"The oak stone had seemed"
19
"It was thin as a"
ratio
0.75
100.00%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
4
totalSentences
196
matches
0
"Now a line of amber"
1
"Now its weight at Aurora’s"
2
"If they did nothing, the"
3
"Before she could ask another"
ratio
0.02
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
87
technicalSentenceCount
4
matches
0
"The last oak stone stood taller than the others, its barkless surface ribbed with pale seams that looked less carved than grown."
1
"Their outline never quite settled; darkness moved under their skin as if they were made from smoke trapped beneath glass."
2
"Creatures that had been bargaining moments before began to move with sudden purpose."
3
"Another had no face at all, only a smooth stretch of skin above a mouth that opened too wide."
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
22
uselessAdditionCount
0
matches
(empty)
100.00%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
21
fancyCount
3
fancyTags
0
"they whispered (whisper)"
1
"Nyx whispered (whisper)"
2
"she murmured (murmur)"
dialogueSentences
65
tagDensity
0.323
leniency
0.646
rawRatio
0.143
effectiveRatio
0.092
93.3544%