NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-03-06-01KK1HNGCGSRYGKNCA8PS64972
Run Details
Model:
GPT-5.4
Test:
Bad Writing Habits
Scenario:
Literary fiction: old friends reunite
Duration:
1m 42s
Cost:
$0.059170
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
94.89%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
79.56%
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)
33.33%
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)
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)
45.87%
Sentence opener variety
(details)
78.90%
Adverb-first sentence starts
(details)
68.52%
Pronoun-first sentence starts
(details)
33.96%
Subject-first sentence starts
(details)
29.59%
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)
87.7094%
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="4413" name="Silas Blackwood" aliases="Silas, Si, the Spymaster" pronouns="he/him" species="Human" storyRole="Mentor"> <eyeColor>hazel</eyeColor> <hair>grey-streaked auburn</hair> <height>6'1"</height> <age>58</age> <beard>neatly trimmed, matching his grey-streaked auburn hair</beard> <limp>slight limp in his left leg from an old knee injury</limp> <signetRing>silver signet ring, always worn on his right hand</signetRing> <description>Silas is a retired intelligence operative turned bar owner. He carries himself with quiet authority.</description> <backstory>Former MI6 field agent who retired after a botched operation in Prague left him with a permanent knee injury. He opened "The Raven's Nest" bar in Soho as a front for his network of contacts.</backstory> </character> <location id="854" name="The Raven's Nest" aliases="the Nest, Raven, Silas' bar" realm="Earth"> <signColor>distinctive green neon sign above the entrance</signColor> <secretRoom>hidden back room accessible through a bookshelf, used for clandestine meetings</secretRoom> <description>A dimly lit bar in Soho, London. The walls are covered with old maps and black-and-white photographs.</description> </location> </codex> Continue the story using the following instructions: <instructions> Write a fully fleshed out scene of at least 1000 words in the literary fiction genre. Two old friends who haven't seen each other in years run into each other unexpectedly at a bar. One of them has changed significantly. Through their conversation and the tension between who they were and who they've become, reveal the weight of time and unspoken regret. Use the codex entries above as your world reference for characters and setting. Only include the prose of the scene without any markdown or commentary. </instructions>
Model response
Messages
Meta
AI
The rain had worked soot
out of Soho and spread it across the pavement in a dark sheen. Above the door, the Raven’s Nest buzzed with its green neon glare, turning puddles the colour of old bottles.
Aurora came in backwards with
a crate of empty glassware balanced against her hip, shoved the door shut with her heel, and stood a moment while the
warmth
climbed into her coat. Inside, the bar held its usual evening half-light. Old maps curled at the edges on the walls. Black-and-white photographs watched from their frames with blank, patient faces.
A saxophone muttered from the
speakers. At the far end, Silas polished a tumbler with a cloth that looked older than some of his customers.
He glanced up, his hazel
eyes flicking to the crate, then to the damp ends of her black hair. “You look like the weather lost an argument with you.”
Aurora set the crate on
the counter. “The weather cheated.”
Silas tipped his chin at
the fringe plastered to her forehead. “Who won?” “The laundrette. My last dry jumper’s gone.” His mouth twitched.
The silver signet ring caught
the low light as he reached for the crate.
His left leg dragged a
fraction when he stepped aside, an old hitch she only noticed when he got tired. “Yu-Fei still working you like a dockhand?” “She calls it building character. I call it unpaid
weight
training.” “She’s right. Character costs more in London.”
Aurora shrugged off her coat
and hung it on the peg by the back shelf.
Her bright blue eyes went
to the room by habit, counting faces, exits, hands. Office workers near the window.
A pair of tourists butchering
the name of a whisky.
A woman in red lipstick
sitting alone with a paperback she hadn’t turned a page of in ten minutes.
Then the door opened, and
the room shifted.
He came in with the
cold at his back and stood under the green spill from the sign as if the place had offered him the wrong sort of welcome. Broad shoulders under a dark coat.
Hair cut shorter than fashion
and lighter than she remembered, brown gone sandy at the temples.
He had once been all
restless limbs and loud laughter.
Now he held still with
care, as if movement carried a cost.
Aurora’s hand flattened on the
bar.
Silas saw it before he
saw the man. His gaze moved, settled, sharpened. He set the tumbler down. “Well,” he murmured. “That explains the drop in atmospheric pressure.” The man shut the door and
scanned
the room. His face had thinned. The old softness around the jaw had gone. A pale line nicked his chin. When his eyes found hers, he stopped. For a second she saw him at seventeen in a school blazer with a torn cuff, grinning through split knuckles behind the sports hall. At nineteen on Cardiff Bay with chips in one hand and impossible plans in the other. At twenty, outside the university library in a coat he had borrowed and never returned, saying he’d be gone six months, a year at most.
Then that boy vanished under
the
weight
of the man in front of her. “Rory.” No one called her that on first sight unless they knew her from before London. She drew a slow breath. “Tom.” Silas picked up another glass. “I’ll be over here, deaf as masonry.” Tom gave a short nod, grateful for the shape of privacy more than the thing itself, and crossed the room.
His boots left dark prints
that faded from the floorboards. “You work here now?” “Live upstairs. Work next door. Drink here.” Aurora looked him over without any attempt to hide it. “You look terrible.” A laugh escaped him, rusty and brief. “You always did know how to flatter.” “You always did mistake bluntness for
charm
.”
He rested a hand on
the back of the stool beside him but didn’t sit. “Can I?” “It’s a bar.” “That wasn’t what I meant.” Aurora looked towards the rain-streaked window, then back at him. “Sit down, Tom.”
He did, lowering himself with
a stiffness that jarred against memory. Silas drifted over and set a coaster in front of him. “What are we regretting tonight?” Tom glanced at the rows of bottles. “Whisky.” Silas waited. “Talisker, if you’ve got it.” “I’m not a barbarian.” He poured. For Aurora, without asking, he set down a ginger ale and a bowl of salted almonds.
Then he moved away, though
not far. Tom wrapped his fingers around the glass and looked at the amber as if he needed the delay. “I was in the area.” Aurora barked a laugh. “You crossed half the city by accident?” “I asked after you.” “That improves it.” He accepted the hit. “Eva gave me the address.” Aurora’s
eyes narrowed
. “Eva knows better.” “She did. Then she looked at me for a long time and wrote it on a napkin like she hated herself for it.” “That sounds like Eva.” Tom drank. The tendons in his throat moved. “She said if I wasted your time, she’d break my nose.” “She has before.” “I remember.” Silence sat between them, not empty, not peaceful. It pressed at old seams. He looked around the bar. “This suits you.” “What, low ceilings and suspicious company?” “The maps. The corners. The fact you know where every door is.” Aurora took a slow sip. “You remember that.” “I remember most things about you.”
She rolled an almond between
thumb and forefinger. “Strange basis for a reunion, considering how you handled the important ones.”
His gaze dropped to the
bowl, to her hand, and there it was—that old habit, the one where he watched her fingers when words turned dangerous.
His eyes paused at the
crescent scar on her left wrist. “You still have that.” “What a miracle. Skin remembers.” Tom
let out a breath
through his nose. “You were eight. You swore the hedge trimmer attacked you.” “It did. I maintain that.” “You bled all over my mother’s patio.” “She was furious about the hydrangeas, not me.” “She liked you more than the flowers.” Aurora’s mouth twitched despite herself, then flattened again. “Don’t do that.” “Do what?” “Walk in here after six years and pull old summers out of your pocket like sweets.” His jaw shifted. “I’m not.” “It sounds close enough.” He set his glass down with care. “Fair.” The saxophone slid into a slower tune. Behind them, someone laughed too loudly, then hushed. Rain ticked against the window. Tom leaned back, and the sleeve of his coat tugged at his cuff. Aurora caught a glimpse of white bandage at his wrist. “You joined the army?” she asked. His eyes
flicked
to the cuff. “No.” “Private security, then. Mercenary. International jewel thief. What’s the grim haircut for?” “I worked overseas.” “That clears everything up.” “In places where hair got in the way.” She looked at him. Really looked. The scar on his chin. Another half-hidden near his hairline. The way his shoulders stayed braced, even seated. The
silence
between one sentence and the next, as if he checked each one for explosives. “You vanished,” she said. “I know.” “You didn’t call.” “I know.” “You changed your number.” “I had to.” “You told me that in an email sent three months late from an address that bounced when I answered.” “I know.” She gave him a flat stare. “If you keep saying that, I’ll start charging by the syllable.” A corner of his mouth lifted, then fell. “I deserved worse.” “Don’t volunteer me for sainthood.” He turned the glass in his hands. “I thought if I cut every line behind me, no one could use them.” Aurora sat still. “There it is,” she said. “The official line. You went somewhere vague and dangerous for reasons too noble to explain.” “It isn’t noble.” “No? It got rehearsed like a speech.” He looked up at her then, and the room
seemed to
tighten around them. “I was a courier for a firm in Istanbul. Legitimate on paper. Less so in the dark. I moved documents, drives, cash. Then I knew too much, and the people who hired me preferred
silence
. Not metaphorical
silence
.” Aurora’s fingers stopped on the rim of her glass. “I left,” he went on. “Or tried to. One man took offence. Another saw business. There were airports, safe houses, a fishing town I’ll never be able to find on a map again. I changed names. Phones. Countries. Most days I woke up and did arithmetic on risk before I brushed my teeth.” “You always hated maths.” “I improved under pressure.” “And all that time, not one message?” “One message to you could have become a door.” Her laugh came sharp. “You don’t get to make me noble either. A door? Tom, I was in Cardiff, working part-time in a legal office I despised and sleeping three hours a night because Evan liked to prove he could ruin sleep as well as the rest of a week. You think one message from you would have been the thing that tipped my life into danger?” Tom froze. She had not planned to say Evan’s name. It sat between them now like dropped glass. His voice changed. Lost its defensive edge. “I didn’t know.” “No.” Aurora held his gaze. “You didn’t.” He swallowed. “Rory—” “Don’t.” “I would have come back.” “With what? A firm handshake and a forged passport?” “With me.” She stared at him, then laughed once, low and disbelieving. “There it is. That old line. You used to say things as if your wanting them made them practical.” His face coloured, not with anger, with shame. “I was twenty.” “And now?” “Now I know wanting fixes nothing.” “Congratulations. London gives diplomas for that.” He rubbed a hand over his mouth. “Did you get out?” Aurora let the question hang. Silas crossed to the other end of the bar, collected empties, gave them the kind of distance that felt deliberate rather than absent. “Yes,” she said at last. “I got out.” Tom nodded once. Hard. “Good.” “He isn’t dead, if that’s what you’re asking with your jaw.” “I wasn’t asking that.” “You were thinking it.” “I was thinking plenty.” She studied him. “You used to lead with your chin when you were angry.” “I learned to stop offering people a target.” “Useful.” He gave a grim smile. “Among other lessons.” Aurora picked up an almond, then set it back in the bowl untouched. “Why tonight?” He looked down at the whisky. “Because I’m leaving again in two days.” Her expression went blank. “There’s work in Lisbon,” he added. “Legal. Boring, even. A shipping company that needs someone who can keep books and spot fraud. I almost laughed when they offered.” “You always did get by on
charm
and forged confidence. Nice to see administration caved in.” “That’s kinder than I deserve.” “There you go again.” He met her eyes. “I didn’t come for forgiveness.” “Good.” “I came because six years became a habit, and habits rot people. I didn’t want this one to set.” Aurora rested both palms on the bar. The wood had old scratches and rings worn into it by years of restless hands. “So what do you want, then?” “The truth, if you had any left for me.” She looked at him for a long moment. Rain hissed outside. Someone fed coins into the jukebox. The lights behind the bottles made amber halos that broke against the glass. “The truth,” she said. “Fine. When you left, I told people you’d gone brave and wild and continental. I made a whole legend because the simpler version made me look a fool. I checked my email too often. I defended you to Eva until she stopped arguing and started looking sorry for me. Then I got embarrassed by that as well.” Tom stared at the bar top. “I hated you,” Aurora went on. “Not cleanly. That would have been easier. I hated you in bits, on trains, in queues, while brushing my teeth. Then days would pass and I wouldn’t think of you at all, and that felt worse, because forgetting someone who once knew the shape of your thoughts feels like losing a language.” His hand tightened around the whisky glass. “Rory.” “You wanted truth.” “I did.” “You had it.” He shut his eyes for a second. When he opened them, they looked older than the rest of him. “I loved you.” The words landed without ceremony. No swell of music. No sudden stillness.
Just that low tune from
the speakers and a bottle clinking somewhere down the bar. Aurora did not move. Tom gave a crooked, pained smile. “There. Another truth. Late enough to be insulting.” “You don’t get to hand me that now like it balances the books.” “I know it doesn’t.” “Then why say it?” “Because I built too much of my life on the idea that
silence
was protection. It wasn’t. It was absence wearing decent manners.” Aurora’s eyes dropped to his bandaged wrist, then rose to his face. “Did you love me then, or do you love the girl who waited by the library and thought your stupid plans counted as courage?” His answer came at once. “Both. And they’re not the same person.” “No.” “No.” He breathed in. “You’re sharper.” “I had practice.” “You look at people like you can hear the hinge in their lies.” “That’s this bar. Occupational training.” “And you’re tired in a different place.” She smiled without humour. “You too.” He accepted that. “I saw you before you saw me. Through the window. You were carrying a crate and glaring at the rain as if the rain had moral failings. I thought, there she is. Still arguing with weather.” Aurora looked down despite herself. “It usually loses.” “I never did.” “That’s because you cheated.” A small quiet opened then, one with less bite in it. Tom reached into his coat pocket and took out a folded photograph, edges softened by wear. He placed it on the bar between them. Aurora looked at it. Three teenagers on Cardiff Bay under a white sky, wind pushing at their clothes. Eva in the middle, grinning with a chip held like a cigarette. Tom beside her, all elbows. Aurora on the other side, hair in her mouth, glaring at whoever took the picture. “Where did you get that?” “Eva posted it to me in Athens. No note. Just this.” “Very Eva.” “I carried it like an idiot.” She touched the corner. “We were unbearable.” “We were magnificent.” “We were loud.” “That too.” Her thumb lingered on her younger face. “I hardly recognise her.” Tom looked at the photograph, not at Aurora. “I do.” She slid the picture back towards him. “Keep it.” “You don’t want it?” “I’ve got enough evidence.” He folded it once,
carefully
, and put it away. “Eva told me your dad still asks after me.” Aurora snorted. “My dad asks after everyone. It’s his way of gathering material for disappointment.” “And your mum?” “She’d feed you and judge your posture.” “I liked your mum.” “She knew.” Tom nodded. “Some things survive.” Aurora turned her glass in a ring of condensation. “Not many.” “No.” Silas
appeared long enough to refill her ginger ale without interrupting
. His eyes moved from one face to the other, read the room, and moved on. Tom watched the bubbles rise. “I’m sorry.” Aurora let the words sit. He had probably said them in other rooms, to other people, over other wreckages. These did not sound polished. They sounded worn thin from
being carried
too long. “For leaving?” she asked. “For turning you into collateral in a war you never enlisted for. For deciding on your behalf what you could survive. For making myself a ghost and calling it strategy.” She nodded once. “Better.” “Only better?” “I’m not grading on effort.” His mouth shifted. “Still fair.” She looked at him, the changed face of someone who had spent years learning how much a body could absorb before it
started to
keep score. The old Tom was not gone. He surfaced in flashes—the crooked grin, the reckless honesty, the way he offered his bruises before his excuses. Time had not erased him. It had carved around him, left narrower ground. “You came here wanting truth,” she said. “Here’s another bit. I missed you. That was the worst of it. Missing someone after they’ve behaved badly feels like helping them.” He stared at her, and something in his expression gave way. “I missed you too.” Aurora gave a small shrug that did not soften anything. “Well. We’ve both had poor judgement.” A laugh broke from him then. Real this time, though low. It vanished almost at once, but it had been there. She looked towards the rain-streaked window. “Lisbon.” “Yeah.” “Shipping company.” “God help me.” “You’ll hate invoices.” “I’ll bully them into order.” “You always did overestimate your influence over stationery.” He rubbed his thumb along the edge of his glass. “Will you let me see you again before I go?” Aurora looked at him across the bar, under the maps and old photographs, in the room she had made part of her life piece by piece after too many things had broken. The question hung there, plain and difficult. Silas dropped a stack of menus at the far end with a soft thud. Someone near the door called for another round. Outside, a bus passed, washing green light across the wet street. Aurora took a breath, held it, and let it go.
created_at
"2026-03-06T12:23:56.568Z"
3/6/2026, 12:23:56 PM
model
"openai/gpt-5.4-20260305"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
344
moderation_latency
(null)
generation_time
101835
tokens_prompt
1094
tokens_completion
4821
native_tokens_prompt
982
native_tokens_completion
3781
native_tokens_completion_images
0
native_tokens_reasoning
0
native_tokens_cached
0
num_media_prompt
(null)
num_input_audio_prompt
(null)
num_media_completion
0
num_search_results
(null)
origin
"https://ncbench.com/"
is_byok
false
finish_reason
"stop"
native_finish_reason
"completed"
usage
0.05917
router
(null)
provider_responses
0
endpoint_id
"9ff5625c-403f-4d7f-b895-58ac7295062c"
id
"resp_00c588e33151b35f0169aac75c9e008197adbe94c6ed346611"
is_byok
false
latency
138
model_permaslug
"openai/gpt-5.4-20260305"
provider_name
"OpenAI"
status
200
user_agent
"langchainjs-openai/1.0.0 ((node/v24.14.0; linux; x64))"
http_referer
(null)
api_type
"completions"
id
"gen-1772799836-D2wUBjv4gdDtCIfLVC07"
upstream_id
"resp_00c588e33151b35f0169aac75c9e008197adbe94c6ed346611"
total_cost
0.05917
cache_discount
(null)
upstream_inference_cost
0
provider_name
"OpenAI"
Evaluation details
Result
Evaluator
Details
Meta Data
100.00%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
14
adverbTagCount
0
adverbTags
(empty)
dialogueSentences
191
tagDensity
0.073
leniency
0.147
rawRatio
0
effectiveRatio
0
94.89%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
2935
totalAiIsmAdverbs
3
found
0
adverb
"really"
count
1
1
adverb
"very"
count
1
2
adverb
"carefully"
count
1
highlights
0
"really"
1
"very"
2
"carefully"
100.00%
AI-ism character names
Target: 0 AI-default names (16 tracked, −20% each)
codexExemptions
0
"Blackwood"
found
(empty)
100.00%
AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
79.56%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
2935
totalAiIsms
12
found
0
word
"warmth"
count
1
1
word
"weight"
count
2
2
word
"scanned"
count
1
3
word
"charm"
count
2
4
word
"silence"
count
5
5
word
"flicked"
count
1
highlights
0
"warmth"
1
"weight"
2
"scanned"
3
"charm"
4
"silence"
5
"flicked"
66.67%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
2
maxInWindow
2
found
0
label
"let out a breath"
count
1
1
label
"eyes widened/narrowed"
count
1
highlights
0
"let out a breath"
1
"eyes narrowed"
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
1
narrationSentences
186
matches
0
"t with anger"
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
0
hedgeCount
2
narrationSentences
186
filterMatches
(empty)
hedgeMatches
0
"seemed to"
1
"started to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
363
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
maxSentenceWordsSeen
64
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
2933
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
34
unquotedAttributions
0
matches
(empty)
33.33%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
65
wordCount
1609
uniqueNames
10
maxNameDensity
1.93
worstName
"Aurora"
maxWindowNameDensity
4
worstWindowName
"Aurora"
discoveredNames
Soho
1
Raven
1
Nest
1
Silas
9
Cardiff
2
Bay
2
London
1
Aurora
31
Evan
1
Tom
16
persons
0
"Raven"
1
"Nest"
2
"Silas"
3
"Aurora"
4
"Evan"
5
"Tom"
places
0
"Soho"
1
"Cardiff"
2
"Bay"
3
"London"
globalScore
0.537
windowScore
0.333
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
117
glossingSentenceCount
1
matches
0
"appeared long enough to refill her ginger ale without interrupting"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
0
per1kWords
0
wordCount
2933
matches
(empty)
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
0
totalSentences
363
matches
(empty)
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
222
mean
13.21
std
14.75
cv
1.117
sampleLengths
0
69
1
71
2
10
3
10
4
13
5
7
6
37
7
7
8
11
9
7
10
63
11
8
12
74
13
6
14
18
15
10
16
34
17
65
18
14
19
1
20
15
21
6
22
12
23
30
24
4
25
20
26
14
27
7
28
17
29
3
30
5
31
13
32
22
33
5
34
8
35
2
36
5
37
4
38
25
39
18
40
5
41
11
42
4
43
3
44
9
45
6
46
23
47
4
48
19
49
3
100.00%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
1
totalSentences
186
matches
0
"being carried"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
0
totalVerbs
277
matches
(empty)
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
2
semicolonCount
0
flaggedSentences
2
totalSentences
363
ratio
0.006
matches
0
"His gaze dropped to the bowl, to her hand, and there it was—that old habit, the one where he watched her fingers when words turned dangerous."
1
"He surfaced in flashes—the crooked grin, the reckless honesty, the way he offered his bruises before his excuses."
100.00%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1617
adjectiveStacks
0
stackExamples
(empty)
adverbCount
51
adverbRatio
0.03153988868274583
lyAdverbCount
5
lyAdverbRatio
0.0030921459492888066
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
363
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
363
mean
8.08
std
7.9
cv
0.978
sampleLengths
0
18
1
19
2
32
3
8
4
9
5
10
6
6
7
19
8
19
9
10
10
7
11
3
12
11
13
2
14
7
15
3
16
14
17
20
18
7
19
11
20
7
21
15
22
14
23
5
24
10
25
19
26
8
27
30
28
6
29
16
30
10
31
12
32
6
33
8
34
5
35
5
36
3
37
7
38
9
39
4
40
8
41
6
42
7
43
24
44
16
45
25
46
14
47
1
48
15
49
5
45.87%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
15
diversityRatio
0.25895316804407714
totalSentences
363
uniqueOpeners
94
78.90%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
4
totalSentences
169
matches
0
"Then the door opened, and"
1
"Then that boy vanished under"
2
"Then he moved away, though"
3
"Just that low tune from"
ratio
0.024
68.52%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
64
totalSentences
169
matches
0
"He glanced up, his hazel"
1
"His mouth twitched."
2
"His left leg dragged a"
3
"Her bright blue eyes went"
4
"He came in with the"
5
"He had once been all"
6
"His gaze moved, settled, sharpened."
7
"He set the tumbler down."
8
"His face had thinned."
9
"She drew a slow breath."
10
"His boots left dark prints"
11
"He rested a hand on"
12
"He did, lowering himself with"
13
"He accepted the hit."
14
"It pressed at old seams."
15
"He looked around the bar."
16
"She rolled an almond between"
17
"His gaze dropped to the"
18
"His eyes paused at the"
19
"His jaw shifted."
ratio
0.379
33.96%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
144
totalSentences
169
matches
0
"The rain had worked soot"
1
"Aurora came in backwards with"
2
"A saxophone muttered from the"
3
"He glanced up, his hazel"
4
"Aurora set the crate on"
5
"Silas tipped his chin at"
6
"His mouth twitched."
7
"The silver signet ring caught"
8
"His left leg dragged a"
9
"Aurora shrugged off her coat"
10
"Her bright blue eyes went"
11
"Office workers near the window."
12
"A pair of tourists butchering"
13
"A woman in red lipstick"
14
"He came in with the"
15
"Hair cut shorter than fashion"
16
"He had once been all"
17
"Aurora’s hand flattened on the"
18
"Silas saw it before he"
19
"His gaze moved, settled, sharpened."
ratio
0.852
29.59%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
1
totalSentences
169
matches
0
"Now he held still with"
ratio
0.006
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
62
technicalSentenceCount
2
matches
0
"He came in with the cold at his back and stood under the green spill from the sign as if the place had offered him the wrong sort of welcome."
1
"Silas crossed to the other end of the bar, collected empties, gave them the kind of distance that felt deliberate rather than absent."
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
14
uselessAdditionCount
0
matches
(empty)
100.00%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
9
fancyCount
2
fancyTags
0
"he murmured (murmur)"
1
"he added (add)"
dialogueSentences
191
tagDensity
0.047
leniency
0.094
rawRatio
0.222
effectiveRatio
0.021
87.7094%