NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-04-24-01KQ0PR5M75C2QAX1Y916DW9W1
Run Details
Model:
GPT-5.5 (Reasoning, Low)
Test:
Bad Writing Habits
Scenario:
Romance: separated couple reunites
Duration:
1m 50s
Cost:
$0.136185
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
100.00%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
78.85%
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)
47.60%
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)
43.84%
Sentence opener variety
(details)
100.00%
Adverb-first sentence starts
(details)
100.00%
Pronoun-first sentence starts
(details)
45.53%
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.8602%
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="4415" name="Lucien Moreau" aliases="Lucien, Luc, the Frenchman" pronouns="he/him" species="Half-Demon" storyRole="Ally"> <eyeColor>heterochromatic — one amber, one black</eyeColor> <hair>slicked-back platinum blond</hair> <height>5'11"</height> <age>32</age> <cane>ivory-handled cane that conceals a thin blade</cane> <dress>tailored charcoal suits</dress> <description>An impeccably dressed fixer and information broker in London's supernatural underworld. He speaks four languages fluently.</description> <backstory>Born in Marseille to a human mother and a demon father from the realm of Avaros.</backstory> </character> <location id="858" name="Eva's Flat" aliases="Eva's place, the flat on Brick Lane" realm="Earth"> <cat>tabby cat named Ptolemy</cat> <security>three deadbolts on the front door</security> <description>A cramped one-bedroom flat above a curry house on Brick Lane, East London. Every surface is covered with books, scrolls, and research notes.</description> </location> </codex> Continue the story using the following instructions: <instructions> Write a fully fleshed out scene of at least 1000 words in the romance genre. Two people who parted on complicated terms are forced together again when one shows up unannounced at the other's flat. There's history between them — attraction, hurt, and things left unsaid. Write the scene from the moment the door opens. 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
Aurora opened the door with
one hand still wrapped around the chain.
Lucien Moreau stood on the
landing in a charcoal suit cut so clean it made the peeling paint around him
look
accused. Rain silvered his slicked-back hair.
His ivory-handled cane rested beneath
one gloved hand, the tip planted between his polished shoes. One amber eye, one black, fixed on her through the gap as if the three deadbolts and a brass chain meant anything to a man who traded favours with things that wore human skins for sport. For a second, Brick Lane fell away. No curry fumes rising through the floorboards. No buses coughing below. No Ptolemy knocking a stack of Eva’s annotated scrolls off the armchair behind her with a thud and a chirrup of triumph.
Only Lucien, standing where he
had no right to stand.
Aurora’s fingers tightened around the
door edge. “No.”
His mouth curved, not quite
a smile.
He looked tired around the
eyes, which annoyed her more than if he had looked
flawless
. “Bonsoir to you too, Carter.”
She shoved the door an
inch towards his face.
The chain caught with a
sharp metallic snap. Lucien glanced at it. “You upgraded from contempt to hardware. Progress.” “You were always good at noticing locks after you’d picked them.” “Still angry, then.”
Aurora leaned closer to the
crack.
Her bright blue eyes met
the mismatched pair outside. “You left me bleeding in a church crypt with a demon nun, stole the only map out, and sent a note two days later that said, and I quote, ‘It was necessary.’” His jaw shifted. “She was not a nun.” “She had a wimple.” “It was camouflage.” “She had teeth in her palms.” “That part, I grant you.”
Aurora shut the door in
his face. The chain rattled. The first deadbolt slid. Then the second.
Ptolemy leapt onto the narrow
table by the door and sat on Eva’s pile of unpaid bills, tail swishing. Aurora looked at the cat. “Don’t start.” Ptolemy blinked. From the landing came the soft tap of cane against floorboard. “Rory.”
Her name from his mouth
did damage in small, precise places. Not Carter. Not Miss Carter, when he wanted distance and theatre. Rory.
The name he had used
at three in the morning over cheap coffee in Soho while translating a dead man’s confession from Infernal French, his sleeve rolled to the elbow, his wrist almost touching hers. The name he had murmured once against her ear after she had put a knife through a ghoul’s hand and he had looked at her like the world had shown him a new sin.
She pressed her forehead to
the door. “Go away.” “I would not be here if there were anywhere else to go.” “Sounds like poor planning.” “Usually my planning is exquisite.” “And yet.” A pause. Rain ticked against the stairwell window. Downstairs, the curry house extractor fan groaned like an old dragon with indigestion. Lucien spoke again, lower. “Eva is not here.” Aurora’s hand moved before she thought. The third deadbolt slid back.
She opened the door wide
enough to see him fully. A dark stain spread beneath the left side of his suit jacket, hidden poorly by the cut of the fabric. Rain had not caused that.
His gloved hand pressed against
his ribs, and the leather had gone wet-black.
Her throat closed, then opened
sharp. “Where is she?” “Alive.” The word hit the hallway between them and split into all the things he had not said. Aurora stepped forward, bare feet cold on the threshold. “Where, Lucien?” “At the British Library. Below it. The old stacks.” “With what?”
His gaze flicked past her
into the flat, across books stacked in columns, scroll tubes wedged in a chipped umbrella stand, a kettle steaming itself dry on the tiny hob. His face drew tight. “With people who knew her mother’s name.” Aurora’s anger found a new shape. Leaner. Harder. “You came here bleeding to tell me Eva’s in trouble, and you opened with a joke about locks?” “I feared you would stab me before I reached the important part.” “I still might.” “Then I chose correctly.”
She grabbed his lapel and
pulled him inside. Lucien crossed the threshold with one controlled step, but his
weight
dipped. The cane struck the floor harder than he intended. Aurora caught his forearm. Heat came through his sleeve, too high and wrong.
He smelled of rain, expensive
wool, smoke, and underneath it the metallic bite of blood. Ptolemy arched his back and hissed. Lucien looked down at him. “Still charming.” “He liked you once.” “Many have suffered that error.” Aurora slammed the door and threw the bolts. One, two, three. The flat shrank around them: Eva’s cramped front room, every surface drowned in research, the lamps draped with scarves, the sofa buried beneath books with titles in Latin, Welsh, and scripts that made Aurora’s eyes water if she stared too long. A bowl of cold noodles sat on a stack of photocopies. Someone—Eva, probably—had written DO NOT SUMMON NEAR CURTAINS on a yellow sticky note stuck to a cracked mirror. Lucien swayed. Aurora pushed aside a tower of journals with her hip and guided him to the only visible stretch of sofa. Books slid and thumped to the floor. “Sit.” “I had hoped for a warmer reunion.” “You’re leaking on Eva’s copy of The Lesser Treatises of Saint Cyprian.” “Then Saint Cyprian and I both apologise.” “Jacket off.” His eyes lifted to hers.
Even with blood seeping between
his fingers, the man
managed to
make obedience
look
like flirtation. “If you wanted me undressed, ma chère, you could have written.” Aurora yanked open a drawer in the sideboard and pulled out Eva’s first-aid tin, a bottle of cheap vodka, and a roll of gauze. “If I’d written, I’d have used smaller words.” “I treasure your cruelty.” “You forfeited treasure privileges in the crypt.” That landed.
She saw it in the
small stillness around his mouth. Good. Not good.
She hated that it hurt
to hurt him. Lucien set the cane across his knees and worked at the buttons of his jacket with one hand. The movement cost him; a faint line appeared between his brows. Aurora slapped his hand away and did it herself.
Her fingers remembered things she
had ordered them to forget: the smoothness of his lapel, the
warmth
beneath wool, the steady rise of his chest when he had once stood too close in an alley behind Silas’ bar and asked why she kept running into danger without negotiating terms. Because you keep being there, she had almost said then.
Now she peeled the jacket
back.
His shirt beneath was torn
and soaked dark from ribs to waist. Aurora sucked in a breath through her teeth. “What made this?” “A blade.” “Brilliant. Shall I fetch my crayons so you can draw me a picture?” “Obsidian. Barbed. Cursed, but without imagination.” She fetched scissors from Eva’s desk and cut through the shirt. The fabric parted. Lucien’s torso came into view, pale skin marked by old scars, lean muscle held rigid around the wound. The cut carved diagonally across his left ribs, ugly and deep, its edges stained black. Aurora crouched between his knees. Her crescent scar flashed pale on her left wrist as she reached for the vodka. Lucien’s gaze caught on it. “You still rub it when you are afraid.” She poured vodka over the wound. His hand clamped around the sofa edge. The leather glove creaked. His teeth flashed, but no sound came. Aurora looked up. “I’m not afraid.” “No.” His voice had rough edges now. “Of course not.” “I’m furious.” “That is safer.” “For you?” “For me. For the room. For anyone who has ever disappointed you and lacked the good sense to stand beyond arm’s reach.” She pressed clean cloth to the wound. Blood welled warm beneath her fingers. “You don’t get to make me laugh.” “I noticed your mouth twitch.” “It had a spasm.” “A lovely spasm.” “Shut up.” He did, for three breaths. Rain tapped the windows.
Somewhere below, a man shouted
at a delivery cyclist. The kettle shrieked in the kitchen, forgotten and dry. Aurora kept pressure on the wound and felt his body fighting not to curl around the pain. She reached behind her and turned the hob off without looking. Lucien watched her hand. “You are living here now?” “Eva asked me to watch Ptolemy while she chased a lead. I was meant to go back to my flat above Silas’ tonight.” “And instead?” “And instead a half-demon with a guilt
complex
bled onto the welcome mat.” “I have never owned a guilt
complex
. I lease one on difficult weeks.” “Lucien.” He met her eyes. The room shifted under the
weight
of the name. No joke followed. No elegant deflection with a French edge. Aurora folded another cloth and pressed harder. “What happened at the library?” He swallowed. “Eva found a ledger in the private collection. Not paper. Skin. Old Avarosi binding. It listed crossings between realms, debts, bloodlines. Your name appeared in it.” Her hands stilled. “My name.” “Not Aurora Carter.” The black in his left eye
seemed to
deepen. “Malphora.” The flat gave a small domestic creak, pipes knocking in the wall. Ptolemy stopped grooming his paw. Aurora’s voice came out flat. “That name belongs to the thing people keep mistaking me for.” “No. It belongs to the thing some people hope you will become.” She stood so fast the bloodied cloth slid. Lucien caught it against his side with a hiss. “People. Which people?” “Rory—” “No. You don’t get to ‘Rory’ your way round this. Eva is under the British Library with people who knew her mother’s name, a cursed blade opened you up, and my name is written in demon skin. Which people?” Lucien looked at her for a long moment, rainwater dripping from the ends of his platinum hair onto his torn collar. “My father’s court.” Silence pressed against the walls. Aurora laughed once, without humour. “Of course. Avaros. Why should tonight be original?” “They did not come for Eva at first. They came for the ledger. She refused to surrender it.” “That sounds like Eva.” “She stabbed one in the eye with a fountain pen.” “That also sounds like Eva.” “I intervened.” Aurora looked at his wound. “Poorly.” “I had three of them.” “You’re usually smug about those odds.” “There were six.” “That’s less embarrassing.” “They took her after she triggered a ward. It sealed the chamber. I could not reach her before the doors dropped.” “And you came here.” His gaze held hers. No polish now. No mask smooth enough. “I came for you.” The words struck harder than they should have. Aurora turned away and grabbed more gauze from the tin, tearing the packet open with her teeth. “Because my name was in the ledger.” “Because she will listen to you.” “Eva listens to no one. She negotiates with reality until reality gets bored.” “And because the ward responds to blood it recognises.” Aurora paused. There it was. The hook under the skin. “My blood.” “Yes.” She faced him again. The yellow lamplight caught the damp planes of his face, the strain at his mouth, the dark fans of his lashes against skin gone too pale. He
looked like a man dragged out of one life
and thrown into another, and she
hated that some
part of her wanted to touch his cheek.
Instead, she knelt and resumed
bandaging him with enough force to make him grip the cane. “You left me in that crypt because of this.” His answer came after one breath too many. “Yes.” The gauze stopped mid-wrap. Aurora stared at the bandage, not at him. “Explain it.” “The map was not a way out. It was a contract. Whoever carried it across the threshold became visible to Avaros. Marked. Trackable.” “You could have told me.” “You were bleeding. The crypt was collapsing. You had just killed a thing twice your size with a broken altar rail. You would have argued.” “I’m arguing now.” “Now there is tea within reach and no demon nun.” “She had teeth in her palms, Lucien.” “And terrible posture.” Aurora’s eyes burned. She hated that too. She tied the bandage in a knot. “You let me think you chose the map over me.” His gloved hand covered the end of the bandage before she could pull away. Not holding. Blocking. Asking in the only language he trusted. “I chose being hated by you over watching them find you.” Aurora looked at his hand on hers. The black leather was wet with his blood and her vodka. His thumb rested near the crescent scar on her wrist, not touching it. Her voice dropped. “You think that sounds noble?” “No.” “Good. It sounds arrogant.” “Yes.” “And cowardly.” His throat moved. “Yes.” She pulled her hand free. The air between them felt stripped raw. Ptolemy jumped from the table onto the back of the sofa and sniffed Lucien’s damp hair. Lucien did not move. The cat gave a reluctant head-butt to his shoulder, then hopped down and vanished beneath a pile of newspapers. Aurora stood and crossed to Eva’s desk. Papers covered every inch. She shoved aside translations, takeaway menus, a brass compass that spun without north, and Eva’s open notebook. Her own name appeared halfway down the page in Eva’s jagged handwriting, underlined three times. Aurora Carter / Malphora? Below it: Ask Lucien. Kick him first. Aurora
let out a breath
through her nose. “Even absent, she’s bossy.” Lucien shifted on the sofa. “She worried about you.” “She could have told me.” “She thought you would run.” Aurora spun. “I don’t run.” Lucien’s gaze
flicked
, sharp and involuntary, to the door with its three deadbolts. The flat
seemed to
inhale. Aurora’s cheeks heated. “Careful.” “I did not mean Evan.” “You never mean the wound you press.” His face changed. Opened, then shut. Aurora had never told him much. Not the full shape of it. Not the way Evan had turned apology into a leash, then law, then weather. Not the night Eva had arrived in Cardiff with two train tickets, a baseball bat she swore she had borrowed, and enough fury to light the Severn Bridge. Lucien knew pieces because Lucien collected pieces. He had never asked for the rest. Now he bowed his head, and the movement had no theatre in it. “You are right.” That almost undid her. No defence. No
charm
.
Just the blade laid flat
between them. She gripped the back of Eva’s chair. “Why come yourself? You have runners. Thieves. Whatever debt-ridden werewolf courier you keep on retainer.” “Bastien retired.” “The werewolf?” “Opened a bakery in Tooting.” “Good for him.” “He makes dreadful éclairs.” “Lucien.” He lifted his eyes. “Because if another man came to your door at midnight and told you Eva had been taken, you would have wasted four minutes deciding whether to trust him.” “And with you?” “You opened in under two.” “I shut it first.” “I cherished the honesty.” Aurora’s mouth betrayed her. A tiny, traitorous curve. Lucien saw it. Of course he did. His own expression softened, and for a moment the room held a different night: the two of them shoulder to shoulder under neon rain, his coat around her shoulders though she had told him she wasn’t cold, his cane hooked over one arm while he picked chilli oil off her chips with the solemn focus of a man disarming a bomb. The almost-kiss outside Silas’ bar, interrupted by a banshee in a taxi queue. The way he had looked at her afterwards, as if interruption had spared him and wounded him. Aurora looked away first. “Don’t.” “I have said nothing.” “You were about to.” “I was about to ask for water.” “You’re impossible.” “And thirsty.” She went to the kitchen corner, found a clean mug by smell and luck, and filled it from the tap. When she returned, Lucien had leaned back, eyes closed, one hand pressed to the bandage. His cane lay across his lap. The ivory handle caught the light; a hairline seam marked where the hidden blade slept inside. Aurora held out the mug. He opened his eyes and took it. Their fingers brushed. Both of them stilled. The contact lasted less than a second. It carried months. Lucien’s voice came low. “I did not write only that note.” Aurora folded her arms. “I received one note.” “I wrote seven.” Her
pulse
kicked. “What?” “I burned six.” “Why?” His laugh had no amusement. “Cowardice, you named it already.” “What did they say?” He looked into the mug as if the water might answer in a kinder language. “The first apologised. Badly. The second explained too much and still not enough. The third asked to see you. I burned that one twice.” “You can’t burn something twice.” “I am half-demon. We have methods.” “Lucien.” He raised the mug, drank, winced as the movement pulled his ribs, and set it on a stack of books titled Funerary Customs of the Lower Thames. “The seventh said I missed you.” Aurora’s nails dug into her sleeves. “And that one?” “I kept it.” The room lost its sounds one by one: the rain, the extractor fan, the old pipes.
Even Brick Lane seemed to
hold still beneath them. Aurora wanted to ask where. Wanted to ask why he had carried those words instead of sending them. Wanted to reach into his bloodstained jacket and find the folded evidence of his failure.
Instead, she picked up the
first-aid tin and snapped it shut. “Can you walk?” His gaze lingered on her face. Then he straightened with care. “For Eva, yes.” “For me, no romantic martyr rubbish. If you collapse on the stairs, I’ll leave you with the curry house aunties and they’ll feed you turmeric milk until dawn.” “A threat worthy of Avaros.” “They fear Mrs Banerjee in three realms.” He reached for his cane, then stopped. His fingers tightened around the ivory handle. Aurora followed his gaze. A black thread of smoke curled from the seam in the cane. Lucien’s expression sharpened. “Down.” The word cracked through the room. Aurora dropped. Lucien moved despite the wound, cane twisting in his grip. The blade slid free with a
whisper
, thin and bright, just as Eva’s mirror split from top to bottom. Not
shattered
. Split. A vertical line opened in the glass, black at the edges and red within, as if someone had cut a wound into the reflection of the room. The scarves draped over the lamp lifted in a wind that touched nothing else. Papers tore loose from Eva’s desk and spun. Aurora crawled backwards, snatched the brass compass from the floor, and held it like a weapon because it was heavy and because Eva labelled dangerous things poorly. Lucien stepped in front of her. She grabbed the back of his ruined shirt. “You’re bleeding through the bandage.” “I noticed.” “Then stop posing.” “Stand behind me.” “No.” “Rory.” “No.” The mirror’s split widened. A hand pressed through, long-fingered, grey-skinned, nails lacquered in gold. Then another. The glass bulged around a face without eyes, smooth from brow to cheek, its mouth stitched shut with red thread. Aurora’s
stomach
turned cold. Lucien raised the blade. From the mirror, a voice entered the room without using the stitched mouth. Aurora Carter. The compass in Aurora’s hand
began to
spin. Fast. Faster. Its needle blurred. Lucien’s shoulders locked. “Do not answer.” The eyeless thing tilted its head. Its gold nails clicked against the mirror’s inner surface. Malphora. Aurora stepped beside Lucien before he could block her again. His arm brushed hers. Heat, blood, rain, steel. She lifted the compass. “I’ve had a long night, and you’ve got the wrong flat.”
created_at
"2026-04-24T21:36:19.597Z"
4/24/2026, 9:36:19 PM
model
"openai/gpt-5.5-20260423"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
3740
moderation_latency
(null)
generation_time
109574
tokens_prompt
1034
tokens_completion
5675
native_tokens_prompt
927
native_tokens_completion
4385
native_tokens_completion_images
0
native_tokens_reasoning
45
native_tokens_cached
0
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"
usage
0.136185
router
(null)
provider_responses
0
endpoint_id
"58e5b336-423e-430b-a2ab-8bc353f0c51b"
id
"resp_0a3dbd16d91245780169ebe253b28c819793e8e0a933b10fdb"
is_byok
false
latency
312
model_permaslug
"openai/gpt-5.5-20260423"
provider_name
"OpenAI"
status
200
user_agent
"langchainjs-openai/1.0.0 ((node/v24.14.1; linux; x64))"
http_referer
(null)
request_id
"req-1777066579-BRVUpQqziddFmuwELT8W"
session_id
(null)
api_type
"completions"
id
"gen-1777066579-1JPehobiOe33HZWFOXrz"
upstream_id
"resp_0a3dbd16d91245780169ebe253b28c819793e8e0a933b10fdb"
total_cost
0.136185
cache_discount
(null)
upstream_inference_cost
0
provider_name
"OpenAI"
response_cache_source_id
(null)
Evaluation details
Result
Evaluator
Details
Meta Data
100.00%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
2
adverbTagCount
0
adverbTags
(empty)
dialogueSentences
170
tagDensity
0.012
leniency
0.024
rawRatio
0
effectiveRatio
0
100.00%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
3309
totalAiIsmAdverbs
0
found
(empty)
highlights
(empty)
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)
78.85%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
3309
totalAiIsms
14
found
0
word
"flawless"
count
1
1
word
"flicked"
count
2
2
word
"weight"
count
2
3
word
"warmth"
count
1
4
word
"complex"
count
2
5
word
"silence"
count
1
6
word
"charm"
count
1
7
word
"pulse"
count
1
8
word
"whisper"
count
1
9
word
"shattered"
count
1
10
word
"stomach"
count
1
highlights
0
"flawless"
1
"flicked"
2
"weight"
3
"warmth"
4
"complex"
5
"silence"
6
"charm"
7
"pulse"
8
"whisper"
9
"shattered"
10
"stomach"
100.00%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
1
maxInWindow
1
found
0
label
"let out a breath"
count
1
highlights
0
"let out a breath"
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
0
narrationSentences
253
matches
(empty)
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
2
hedgeCount
5
narrationSentences
253
filterMatches
0
"look"
hedgeMatches
0
"managed to"
1
"seemed to"
2
"began to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
422
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
repeatedSegmentCount
0
maxSentenceWordsSeen
61
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
3307
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
24
unquotedAttributions
0
matches
(empty)
47.60%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
126
wordCount
2246
uniqueNames
25
maxNameDensity
2.05
worstName
"Aurora"
maxWindowNameDensity
3.5
worstWindowName
"Lucien"
discoveredNames
Moreau
1
Brick
2
Lane
2
Ptolemy
6
Eva
14
Lucien
29
Carter
4
Miss
1
Soho
1
Infernal
1
French
2
Latin
1
Welsh
1
Aurora
46
Malphora
2
Ask
1
Evan
1
Cardiff
1
Severn
1
Bridge
1
Funerary
1
Customs
1
Lower
1
Thames
1
Rain
4
persons
0
"Moreau"
1
"Ptolemy"
2
"Eva"
3
"Lucien"
4
"Carter"
5
"Miss"
6
"Aurora"
7
"Evan"
8
"Rain"
places
0
"Brick"
1
"Lane"
2
"Soho"
3
"Infernal"
4
"Latin"
5
"Ask"
6
"Cardiff"
7
"Severn"
8
"Bridge"
9
"Thames"
globalScore
0.476
windowScore
0.5
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
146
glossingSentenceCount
2
matches
0
"not quite a smile"
1
"looked like a man dragged out of one life"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
0
per1kWords
0
wordCount
3307
matches
(empty)
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
2
totalSentences
422
matches
0
"hated that it"
1
"hated that some"
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
308
mean
10.74
std
14.5
cv
1.351
sampleLengths
0
12
1
78
2
40
3
10
4
7
5
1
6
23
7
5
8
17
9
4
10
7
11
11
12
3
13
15
14
32
15
3
16
5
17
4
18
3
19
6
20
5
21
7
22
10
23
24
24
2
25
2
26
11
27
1
28
92
29
7
30
2
31
12
32
4
33
5
34
2
35
21
36
4
37
4
38
11
39
48
40
6
41
3
42
1
43
17
44
9
45
2
46
9
47
2
48
34
49
7
100.00%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
1
totalSentences
253
matches
0
"was torn"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
0
totalVerbs
397
matches
(empty)
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
2
semicolonCount
2
flaggedSentences
3
totalSentences
422
ratio
0.007
matches
0
"Someone—Eva, probably—had written DO NOT SUMMON NEAR CURTAINS on a yellow sticky note stuck to a cracked mirror."
1
"The movement cost him; a faint line appeared between his brows."
2
"The ivory handle caught the light; a hairline seam marked where the hidden blade slept inside."
100.00%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1704
adjectiveStacks
0
stackExamples
(empty)
adverbCount
59
adverbRatio
0.034624413145539906
lyAdverbCount
9
lyAdverbRatio
0.00528169014084507
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
422
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
422
mean
7.84
std
7.59
cv
0.968
sampleLengths
0
12
1
22
2
5
3
15
4
36
5
7
6
7
7
4
8
22
9
10
10
7
11
1
12
7
13
16
14
5
15
9
16
8
17
4
18
7
19
11
20
3
21
6
22
9
23
32
24
3
25
5
26
4
27
3
28
6
29
5
30
7
31
3
32
4
33
3
34
19
35
5
36
2
37
2
38
11
39
1
40
11
41
2
42
9
43
1
44
35
45
34
46
7
47
2
48
12
49
4
43.84%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
26
diversityRatio
0.20853080568720378
totalSentences
422
uniqueOpeners
88
100.00%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
8
totalSentences
228
matches
0
"Only Lucien, standing where he"
1
"Then the second."
2
"Somewhere below, a man shouted"
3
"Instead, she knelt and resumed"
4
"Just the blade laid flat"
5
"Of course he did."
6
"Instead, she picked up the"
7
"Then he straightened with care."
ratio
0.035
100.00%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
67
totalSentences
228
matches
0
"His ivory-handled cane rested beneath"
1
"His mouth curved, not quite"
2
"He looked tired around the"
3
"She shoved the door an"
4
"Her bright blue eyes met"
5
"His jaw shifted."
6
"Her name from his mouth"
7
"She pressed her forehead to"
8
"She opened the door wide"
9
"His gloved hand pressed against"
10
"Her throat closed, then opened"
11
"His gaze flicked past her"
12
"His face drew tight."
13
"She grabbed his lapel and"
14
"He smelled of rain, expensive"
15
"His eyes lifted to hers."
16
"She saw it in the"
17
"She hated that it hurt"
18
"Her fingers remembered things she"
19
"His shirt beneath was torn"
ratio
0.294
45.53%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
189
totalSentences
228
matches
0
"Aurora opened the door with"
1
"Lucien Moreau stood on the"
2
"Rain silvered his slicked-back hair."
3
"His ivory-handled cane rested beneath"
4
"Aurora’s fingers tightened around the"
5
"His mouth curved, not quite"
6
"He looked tired around the"
7
"She shoved the door an"
8
"The chain caught with a"
9
"Lucien glanced at it."
10
"Aurora leaned closer to the"
11
"Her bright blue eyes met"
12
"His jaw shifted."
13
"Aurora shut the door in"
14
"The chain rattled."
15
"The first deadbolt slid."
16
"Ptolemy leapt onto the narrow"
17
"Aurora looked at the cat."
18
"Her name from his mouth"
19
"The name he had used"
ratio
0.829
100.00%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
5
totalSentences
228
matches
0
"Even with blood seeping between"
1
"Because you keep being there,"
2
"Now she peeled the jacket"
3
"Now he bowed his head,"
4
"Even Brick Lane seemed to"
ratio
0.022
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
75
technicalSentenceCount
2
matches
0
"She shoved aside translations, takeaway menus, a brass compass that spun without north, and Eva’s open notebook."
1
"A vertical line opened in the glass, black at the edges and red within, as if someone had cut a wound into the reflection of the room."
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
2
uselessAdditionCount
0
matches
(empty)
100.00%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
1
fancyCount
1
fancyTags
0
"Her fingers remembered (remember)"
dialogueSentences
170
tagDensity
0.006
leniency
0.012
rawRatio
1
effectiveRatio
0.012
93.8602%