NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-07-09-01KX3ZZCR0YJEMPR0D01QX9NDH
Run Details
Model:
GPT-5.6 Terra
Test:
Bad Writing Habits
Scenario:
Romance: separated couple reunites
Duration:
49.7s
Cost:
$0.062588
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
96.73%
AI-ism adverb frequency
(details)
80.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
83.64%
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)
16.67%
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.55%
Sentence opener variety
(details)
16.50%
Adverb-first sentence starts
(details)
81.39%
Pronoun-first sentence starts
(details)
7.03%
Subject-first sentence starts
(details)
0.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)
84.2502%
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
The first deadbolt came free
with a blunt scrape.
Aurora paused with her hand
on the second.
Ptolemy had abandoned the radiator
and planted himself in the narrow hall, striped back arched, tail swollen to a bottle brush.
The flat smelled of cumin
drifting through the floorboards from the curry house below, old paper, and the rain Eva had tracked in from somewhere. A knock came again. Not loud. Three
measured
taps. Aurora looked through the peephole.
Lucien Moreau stood beneath the
weak bulb outside, rain beading on the shoulders of his charcoal suit.
His platinum hair lay combed
back from his face as if London weather owed him respect. One eye caught the hall light in amber; the other held it in a black, depthless stare.
His ivory-handled cane rested against
his thigh.
Her fingers stayed on the
locks. “You’d better not have brought trouble to my door,” she called. “Bonsoir, Rory.”
The use of her name
entered the flat before he did.
It slipped beneath the door
and found every place she had packed shut. She opened the second deadbolt, then the third.
Lucien gave the door enough
space to reveal him and no more. Blood darkened one cuff. Not much. Too much. Aurora kept the chain on. “You looked worse the last time I saw you.” “Cruel. I had hoped distance had softened you.” “Distance taught me accuracy.”
His mouth shifted, not quite
into a smile. “May I come in?” “No.” Ptolemy hissed at the gap.
Lucien glanced down at the
cat. “Your guardian still hates me.” “He had taste before I did.” Something passed over Lucien’s face.
It vanished before she could
name it. “You had no taste in Marseille,” he said. “And yet I left with all my organs.” “You left with more than that.” Aurora’s hand tightened around the chain.
Her crescent scar showed pale
against the inside of her wrist.
She had not thought of
Marseille in months. Not the narrow hotel balcony over the Vieux-Port. Not the salt wind lifting Lucien’s hair loose from its careful sweep. Not his hand closing over hers at the rail, warm despite the February cold.
She had thought of it
too often. “What do you want?” she asked. Lucien looked past her shoulder, into the maze of books and stacked folders that had consumed Eva’s flat. “You were not at your own residence.” “You know where I live.” “I know where you sleep. That has never been the same thing.” “I’m working.” “Eva has gone to Oxford.” Aurora blinked. “You checked Eva’s post?” she asked. “I checked her building. Her neighbour told me. Mrs
Patel
, third floor. She believed I was an insurance assessor.” “You’re terrible at lying to old women.” “She offered me tea.” “That means she knew you were lying.” Lucien lowered his gaze for half a second. Water ticked from the edge of his coat onto the landing. “Rory. Open the door.” “No.” “Please.” The word landed harder than any demand could have. Lucien did not use please. He arranged people, favours, secrets, and debts with the clean fingers of a man who preferred leverage to need. Aurora studied him again. The blood at his cuff. A shallow tear in the fabric near his ribs.
His cane held too much
of his
weight
. “Who did this?” “Someone impatient.” “That narrows it down to half the city.” “Then we should avoid delaying them.” She unhooked the chain. Lucien stepped inside without brushing her.
He shut the door, then
slid each deadbolt into place with a precision that made her skin prickle. Ptolemy retreated beneath the small dining table, where several maps lay rolled beside an overturned mug. Aurora locked the chain. “You’re bleeding on Eva’s carpet.” “I shall apologise to Eva.” “You won’t be alive long enough if you keep standing there.” “Ah. There she is.” “Don’t make this into something it isn’t.” He looked at her. Both eyes, mismatched and unbearable, held hers. “What was it, then?” Aurora walked past him into the sitting room. “Sit down.” Lucien followed, cane tapping once against the warped floorboard.
He lowered himself onto the
arm of the sofa rather than its cushions, as if he had entered a client’s office and expected to leave before the hour ended. “You’ll ruin your suit,” she said. “I own others.” “That one looked expensive.” “It was.” “Good.”
She found the first-aid tin
beneath a pile of Eva’s untranslated manuscripts.
Its metal lid bore a
faded tin of mints design, painted roses nearly worn blank. Behind her, Lucien removed his coat. The shirt beneath had turned black with rain at one shoulder. At his right side, just below the ribs, blood had soaked through white cotton. Aurora set the tin on the coffee table. “That wasn’t a knife,” she said. “No.” “Bullet?” “No.” She looked at the wound. Three neat punctures marked his side, each rimmed with a grey film that spread beneath his skin in thin veins. Aurora’s jaw set. “Demon iron,” she said. “Very good.” “Don’t flatter me. You poisoned yourself at my flat.” “They poisoned me.” “You walked into it.” “I was invited.” “You always were.” His expression sharpened. Aurora pulled on a pair of blue nitrile gloves. “Shirt off.” “Such a commanding tone.” “Lucien.” He held her gaze, then unbuttoned the shirt. His fingers stayed steady, though the cords in his neck drew tight. When he peeled the cloth away from the wound, the grey veins
pulsed
once. Aurora
hated that she
noticed the old scar below his left collarbone. She had touched it once,
tracing
its raised line in darkness while he watched her with his face turned half into the pillow. She dropped a pair of forceps into a dish of alcohol. “You carry demon iron?” “I had intended to bring you a bottle of Sancerre.” “That wasn’t my question.” “No. I do not carry it.” “Then whoever hit you knew what you were.” Lucien’s eyes settled on her hands. “They also knew I would come here.” The forceps stopped above the dish. “Explain.” “I left a meeting in Soho. A courier approached me in the street, a young woman dressed as a Deliveroo rider. She gave me an envelope.” “An envelope. That’s new.” “It contained your name. This address. A photograph.” Aurora looked up. Lucien reached into the inner pocket of his coat. He placed a photograph on the table beside the first-aid tin. It showed Aurora exiting the Golden Empress in her delivery jacket, helmet tucked beneath one arm. The image had
been taken
from across the street. A red circle had
been drawn
around her face. Below it, someone had written in black ink: ASK THE CARTER GIRL ABOUT THE VESSEL. The room
seemed to
shrink around the paper. Aurora picked it up by one corner. Her own bright blue eyes stared back from the photograph, unaware, irritated by rain, probably late for a delivery. “What vessel?” she asked. “I hoped you knew.” “You came here hoping I’d solve your problem?” “I came here because the person who sent that photograph wanted you found.” “And you brought their weapon straight to me.” Lucien’s black eye deepened. “I led no one here.” “How do you know?” “Because I made sure.” “You made sure?” Her laugh came out hard. “That phrase has a bad record with us.” The rain worked its way down the windows in crooked lines.
Somewhere in the building, a
child shouted, then a door slammed. Lucien sat
very
still. “You’re right,” he said. Aurora had prepared herself for deflection. A clever remark. A French phrase delivered like a
silk
handkerchief over a wound. The agreement left her with nothing clean to throw. “You disappeared,” she said. His amber eye
flickered
. “After Marseille,” she continued. “You vanished for six weeks. No message. No warning. Not even one of your expensive little cards.” “I know.” “You knew Evan had found me.” “I knew he was looking.” “You knew he had put me in hospital.” Lucien’s hand closed around the ivory head of his cane. “I knew after.” “Not after enough.” “No.” His voice lowered. “Not after enough.” Aurora turned away before the anger in her face could change into something worse. She laid the photograph beside the forceps and reached for gauze. “You don’t get to arrive bleeding and turn remorse into a key.” “I did not come for forgiveness.” “What did you come for?” He leaned forward. Pain drew a line beside his mouth. “You.” Her hands stilled. “Don’t,” Aurora said. “It is the truth.” “You’re brilliant with truth when it costs you nothing.” “It cost me everything worth keeping.” She stared at him. Ptolemy emerged from beneath the table, crept along the edge of the room, and sniffed at Lucien’s discarded coat. The cat sneezed, offended by rain and blood. Aurora pulled the photo closer. “The vessel,” she said. “What did your courier tell you?” “Nothing. The envelope held the picture and a matchbook from a club in Soho.” “Which club?” “The Bellwether.” “Closed two years ago.” “It reopened last month. Different owner. Same basement.” Aurora knew the Bellwether by reputation: a place where human money paid for supernatural indulgences and nobody asked why the music never stopped before dawn. Eva had mentioned it once while sorting through a box of warding notes, then demanded Aurora promise never to go near it. “Who were you meeting there?” Aurora asked. “A broker called Hume.” “Human?” “Mostly.” “That means no.” “It means his mother was.” “And the other half?” Lucien gave her a tired look. “Something old enough to be rude about it.” “Did Hume give you the envelope?” “No. He died before our appointment.” Aurora stared at the wound in his side. “You saw his body?” “I saw what remained.” “That’s not an answer.” “It was sufficient.” “Lucien.” “A demon iron spike through the throat. His mouth stitched shut with copper wire.” Aurora’s
stomach
tightened. “Did you tell anyone?” “I came to tell you.” “You came because the note had my name.” “Yes.” “Not because you wanted to see me.” His gaze did not move from hers. “I had wanted to see you for months.” The forceps clinked against the dish. Aurora swallowed down the reply that rose first. It would have been easy. Cruelty had always been easy with him because he made gentleness
feel
like a gamble. “The poison’s spreading,” she said. “Rory.” “Take the shirt off properly.” Lucien obeyed. He slipped the sleeves free and set the shirt over the sofa arm. His chest rose once, careful and shallow. The punctures had darkened. Grey tendrils now reached toward his sternum. Aurora moved closer. “Stay still.” “I had planned to.” She pressed gauze around the wound. Lucien’s hand shot out and caught the edge of the coffee table, knuckles whitening. No sound left him, but his horns showed for an instant beneath the smooth line of his hair: black ridges breaking through pale skin at his temples, then sinking back as he forced them down. Aurora watched him through the pain. “You should have told me,” she said. “About what?” “About all of it.” His breathing scraped. “You were safer without my world around you.” “You don’t get to decide that for me.” “I did decide.” “And look where it got us.” He shut his eyes. Aurora adjusted the forceps. “This will hurt.” “Do your worst.” “Don’t flirt. Bite something.” He reached for the cane. She took it from him before he could grip it and laid it against the wall. “Rory.” “You’ll crack your teeth.” “I have stronger teeth than you recall.” Heat rose in her face despite herself. “Bite the cushion.” Lucien looked at the faded floral sofa cushion, then at her. “This is humiliation.” “This is medical care.” He took the cushion in one hand and braced the other against the sofa. Aurora eased the forceps into the first puncture. The demon iron had broken into a sliver no longer than her thumbnail, black and dull, its surface wet with blood. Lucien’s fingers dug into the upholstery. A low sound strained through his teeth. “Nearly,” Aurora murmured. “You always lied beautifully.” She pulled the sliver free. Smoke curled from the wound. The air filled with the smell of burnt coins and wet stone. Lucien’s head tipped back. His eyes opened, both pupils narrowed into sharp black points. Aurora dropped the iron into the alcohol. The liquid hissed. “There are two more,” she said. “Lovely.” “Talk to me.” “About what?” “Anything that stops you turning into a monster on Eva’s sofa.” He breathed through his nose. “You still delivered for Golden Empress?” “Yes.” “Yu-Fei still overfilled the sweet-and-sour containers?” “He claims generosity builds loyalty.” “He claims a great many things.” “He asked about you once.” Lucien looked at her. “Don’t make that face,” Aurora said. “He asked whether the Frenchman still dressed like a funeral parlour with a gambling problem.” “A harsh assessment.” “He likes you.” “Then he has poor judgement.” “He also called you handsome.” That nearly drew the old smile from him. Nearly. Aurora worked the second shard loose. Lucien folded around the pain, shoulders tightening. His hand caught her forearm. Not hard. Not even enough to stop her. His thumb rested above her wrist, close to the pale crescent scar. The touch brought back a stairwell in Marseille, his forehead against hers, the city’s noise far below. It brought back the morning after, when he had kissed her wrist as if the scar formed part of a map only he could read. His thumb moved once. Aurora looked down at his hand. Lucien released her at once. “Pardon.” “No.” Her voice roughened. “Don’t apologise for touching me. Apologise for leaving.” His face went still. “I did,” he said. “No. You apologised to make it easier for yourself. You sent flowers to a hospital ward you never entered.” “I could not enter.” “Why?” He looked at the photograph of her on the table. “Because Evan was there.” Aurora’s breath caught. “He was in the hospital,” Lucien continued. “He sat outside your room with your father. He wore a coat too expensive for him and made himself useful. Your parents believed he had come to support you.” “My parents never knew.” “Your mother knew something was wrong. Your father wanted to believe the best of a man who spoke politely and shook hands
firmly
.” Aurora’s throat tightened. She saw it too clearly: Brendan Carter in a hospital corridor,
jaw clenched
, Jennifer’s hand folded around a paper cup. Evan standing among them, composed, wounded, believable. “I had two men watching the building,” Lucien said. “Evan had another six in the area. I could have gone in. He would have known. He would have found a way to make you pay for it.” “So you let me think you didn’t care.” “I let you live.” “You don’t know that.” “No.” His voice broke on the small word, then steadied. “I do not.” Aurora held the forceps above the final puncture. Her chest hurt in a place the past had no right to reach. “I needed you,” she said. “I know.” “I called you.” “I know.” “I hated you for not answering.” “You had every right.” She pressed the forceps in. Lucien caught her hand again. This time he held on through the pain, his grip shaking. Grey smoke spilled from the wound as she found the last shard. It resisted. She twisted the forceps. Lucien’s head snapped toward her. His black eye flooded red at the edges. “Aurora.” “I’ve got it.” “Leave it.” “If I leave it, it reaches your heart.” “Then leave it.” “No.” His grip tightened. The room dimmed around them, as if the light had drawn inward. A thin line of black spread along Lucien’s throat. Aurora leaned close enough to smell rain on his skin and the bitter heat of the poison. “Look at me,” she said. He did. “You came here for me. Fine. Then let me do the one thing you came for.” The forceps closed on the shard. Lucien’s breath shuddered against her face. Aurora pulled. The final piece came free with a wet click. Lucien’s body jerked forward. His forehead struck her shoulder. The forceps fell from her hand onto the carpet. For one suspended moment, he stayed against her, heavy and hot, his breath caught in the hollow below her collarbone. Aurora did not move. His hand slid from her wrist to her waist. Not possessive. Not claiming. He held there as if the floor had become unreliable. “Lucien,” she said. “I’m conscious.” “That wasn’t the question.” “No,” he murmured against her shoulder. “It rarely is with you.” The black line at his throat receded. Colour returned to his face, slow and uneven. Aurora placed one hand against the centre of his chest. His heart beat beneath her palm, too fast but steady. Outside, tyres whispered through rain on Brick Lane. Lucien lifted his head. He had not stepped back. Their faces remained close enough that Aurora could see the faint gold flecks in his amber eye. “I should go,” he said. “You can barely stand.” “I have survived worse.” “You always say that like it’s a virtue.” “It is not.” “No.” Aurora’s hand stayed on his chest. “It isn’t.” Lucien looked at her mouth, then back to her eyes. He did not reach for her. He waited. The old hurt sat between them, sharp-edged and alive. So did the photographs, the dead broker, the name written in black ink. Yet his skin warmed her palm, and rainwater darkened the ends of his hair, and she remembered the man beneath the careful suit had once stayed awake all night beside her while she translated a Welsh
charm
Eva had stolen from a private collection. Aurora drew a breath. “You’re not leaving until morning,” she said. Lucien’s expression changed with restraint so severe it made her want to break it. “Is that an order?” “It’s medical advice.” “I have always respected medical advice.” “That’s a lie.” “Yes.” His mouth curved, slight and tired. “But I would like to begin.” Aurora picked up the photograph and held it between two fingers. “Then you can start by telling me everything you know about this vessel.” Lucien glanced at the red circle around her face. “I will,” he said.
created_at
"2026-07-09T17:49:27.688Z"
7/9/2026, 5:49:27 PM
model
"openai/gpt-5.6-terra-20260709"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
530
moderation_latency
(null)
generation_time
49533
tokens_prompt
1034
tokens_completion
5301
native_tokens_prompt
927
native_tokens_completion
4018
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)
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.0625875
router
(null)
provider_responses
0
endpoint_id
"3cc89000-ae34-4dde-9c7d-5ce009c8af0b"
id
"resp_0a3d9390c8fd9f0f016a4fdf27c0cc8190a11cc22905aea496"
is_byok
false
latency
223
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-1783619367-s2Lj1UGn1fEP62wVq2JZ"
session_id
(null)
preset_id
(null)
api_type
"completions"
id
"gen-1783619367-fHADyphfhdDMh084ji3S"
upstream_id
"resp_0a3d9390c8fd9f0f016a4fdf27c0cc8190a11cc22905aea496"
total_cost
0.0625875
cache_discount
(null)
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
35
adverbTagCount
0
adverbTags
(empty)
dialogueSentences
219
tagDensity
0.16
leniency
0.32
rawRatio
0
effectiveRatio
0
96.73%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
3057
totalAiIsmAdverbs
2
found
0
adverb
"very"
count
2
highlights
0
"very"
80.00%
AI-ism character names
Target: 0 AI-default names (17 tracked, −20% each)
codexExemptions
(empty)
found
0
"Patel"
100.00%
AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
83.64%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
3057
totalAiIsms
10
found
0
word
"measured"
count
1
1
word
"weight"
count
1
2
word
"pulsed"
count
1
3
word
"tracing"
count
1
4
word
"silk"
count
1
5
word
"flickered"
count
1
6
word
"stomach"
count
1
7
word
"firmly"
count
1
8
word
"jaw clenched"
count
1
9
word
"charm"
count
1
highlights
0
"measured"
1
"weight"
2
"pulsed"
3
"tracing"
4
"silk"
5
"flickered"
6
"stomach"
7
"firmly"
8
"jaw clenched"
9
"charm"
100.00%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
1
maxInWindow
1
found
0
label
"jaw/fists clenched"
count
1
highlights
0
"jaw clenched"
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
0
narrationSentences
243
matches
(empty)
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
1
hedgeCount
1
narrationSentences
243
filterMatches
0
"feel"
hedgeMatches
0
"seemed to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
427
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
repeatedSegmentCount
0
maxSentenceWordsSeen
44
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
3057
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
51
unquotedAttributions
0
matches
(empty)
16.67%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
107
wordCount
1950
uniqueNames
19
maxNameDensity
2.31
worstName
"Aurora"
maxWindowNameDensity
4.5
worstWindowName
"Aurora"
discoveredNames
Eva
5
Moreau
1
London
1
Lucien
37
Aurora
45
Marseille
2
Vieux-Port
1
February
1
Golden
1
Empress
1
French
1
Bellwether
1
Brendan
1
Carter
1
Jennifer
1
Brick
1
Lane
1
Welsh
1
Ptolemy
4
persons
0
"Eva"
1
"Moreau"
2
"Lucien"
3
"Aurora"
4
"Brendan"
5
"Carter"
6
"Jennifer"
7
"Ptolemy"
places
0
"London"
1
"Marseille"
2
"Brick"
3
"Lane"
globalScore
0.346
windowScore
0.167
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
142
glossingSentenceCount
1
matches
0
"not quite into a smile"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
0
per1kWords
0
wordCount
3057
matches
(empty)
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
1
totalSentences
427
matches
0
"hated that she"
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
310
mean
9.86
std
11.18
cv
1.133
sampleLengths
0
9
1
54
2
9
3
5
4
57
5
6
6
11
7
2
8
24
9
8
10
20
11
5
12
9
13
8
14
4
15
12
16
1
17
11
18
5
19
6
20
12
21
8
22
8
23
6
24
59
25
7
26
6
27
25
28
5
29
12
30
2
31
5
32
2
33
6
34
19
35
7
36
4
37
7
38
19
39
4
40
1
41
1
42
33
43
26
44
3
45
2
46
8
47
6
48
4
49
40
100.00%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
2
totalSentences
243
matches
0
"been taken"
1
"been drawn"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
0
totalVerbs
331
matches
(empty)
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
0
semicolonCount
1
flaggedSentences
1
totalSentences
427
ratio
0.002
matches
0
"One eye caught the hall light in amber; the other held it in a black, depthless stare."
100.00%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1955
adjectiveStacks
0
stackExamples
(empty)
adverbCount
67
adverbRatio
0.034271099744245526
lyAdverbCount
7
lyAdverbRatio
0.0035805626598465474
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
427
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
427
mean
7.16
std
5.56
cv
0.777
sampleLengths
0
9
1
8
2
21
3
25
4
4
5
2
6
3
7
5
8
17
9
16
10
17
11
7
12
6
13
11
14
2
15
11
16
13
17
8
18
12
19
4
20
2
21
2
22
5
23
9
24
8
25
4
26
8
27
4
28
1
29
5
30
6
31
5
32
6
33
5
34
7
35
8
36
8
37
6
38
6
39
11
40
8
41
8
42
12
43
14
44
7
45
6
46
18
47
7
48
5
49
12
45.55%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
19
diversityRatio
0.2224824355971897
totalSentences
427
uniqueOpeners
95
16.50%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
1
totalSentences
202
matches
0
"Somewhere in the building, a"
ratio
0.005
81.39%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
70
totalSentences
202
matches
0
"His platinum hair lay combed"
1
"His ivory-handled cane rested against"
2
"Her fingers stayed on the"
3
"It slipped beneath the door"
4
"She opened the second deadbolt,"
5
"His mouth shifted, not quite"
6
"It vanished before she could"
7
"Her crescent scar showed pale"
8
"She had not thought of"
9
"She had thought of it"
10
"He arranged people, favours, secrets,"
11
"His cane held too much"
12
"She unhooked the chain."
13
"He shut the door, then"
14
"He looked at her."
15
"He lowered himself onto the"
16
"She found the first-aid tin"
17
"Its metal lid bore a"
18
"She looked at the wound."
19
"His expression sharpened."
ratio
0.347
7.03%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
183
totalSentences
202
matches
0
"The first deadbolt came free"
1
"Aurora paused with her hand"
2
"Ptolemy had abandoned the radiator"
3
"The flat smelled of cumin"
4
"A knock came again."
5
"Aurora looked through the peephole."
6
"Lucien Moreau stood beneath the"
7
"His platinum hair lay combed"
8
"His ivory-handled cane rested against"
9
"Her fingers stayed on the"
10
"The use of her name"
11
"It slipped beneath the door"
12
"She opened the second deadbolt,"
13
"Lucien gave the door enough"
14
"Blood darkened one cuff."
15
"Aurora kept the chain on."
16
"His mouth shifted, not quite"
17
"Ptolemy hissed at the gap."
18
"Lucien glanced down at the"
19
"Something passed over Lucien’s face."
ratio
0.906
0.00%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
0
totalSentences
202
matches
(empty)
ratio
0
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
71
technicalSentenceCount
1
matches
0
"His platinum hair lay combed back from his face as if London weather owed him respect."
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
35
uselessAdditionCount
0
matches
(empty)
100.00%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
29
fancyCount
4
fancyTags
0
"she continued (continue)"
1
"Aurora murmured (murmur)"
2
"Lucien continued (continue)"
3
"he murmured (murmur)"
dialogueSentences
219
tagDensity
0.132
leniency
0.265
rawRatio
0.138
effectiveRatio
0.037
84.2502%