NC Bench
Overview
About
Tests
Models
Vendors
Run: 2026-02-17-01KHMPETN04JGD63V35S8JB7X0
Run Details
Model:
GPT-4o Mini (temp=0)
Test:
Bad Writing Habits
Scenario:
Romance: separated couple reunites
Duration:
34.5s
Cost:
$0.001281
Model input
System
You are an expert novelist with a gift for vivid, immersive prose. You write in tight third-person limited point of view with a strong narrative voice. Your prose is clean, precise, and engaging — you favor strong verbs, concrete details, and natural-sounding dialogue. You will be given a story bible (codex) containing canonical details about characters, locations, items, and lore. Use these details to ground your writing in the established world. Stay consistent with the codex. Write only the prose of the scene. Do not include titles, chapter headings, markdown formatting, or any commentary before or after the scene.
User/Human
<codex> <character id="4412" name="Aurora Carter" aliases="Rory, Laila, Aurora, Carter, Malphora" pronouns="she/her" species="Human" storyRole="Protagonist"> <eyeColor>bright blue</eyeColor> <hair>straight shoulder-length black</hair> <height>5'6"</height> <age>25</age> <scar>small crescent-shaped scar on her left wrist from a childhood accident</scar> <description>Aurora, referred to by her friends as Rory, is cool-headed, intelligent, and known for quick out-of-the-box thinking.</description> <backstory>Born in Cardiff to an Irish barrister father (Brendan Carter) and Welsh teacher mother (Jennifer Carter née Ellis), Rory reluctantly pursued Pre-Law at Cardiff University. She fled to London at the behest of her childhood friend Eva after leaving an abusive ex named Evan. By day, Rory works part-time as a delivery person for Yu-Fei Cheung's Golden Empress restaurant. She lives in a flat above Silas' bar.</backstory> </character> <character id="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> 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.
Model response
Messages
Meta
AI
Aurora Carter stood in the cramped kitchen of Eva's flat, the scent of spices wafting through the air as she stirred a pot of
simmering
curry. The tabby cat, Ptolemy, wound around her ankles, purring
softly
, oblivious to the tension that had settled in her chest. She had just finished her shift at the Golden Empress, the rhythmic clatter of takeout containers still
echoing
in her mind, when a sudden knock shattered the evening's calm. She paused, wooden spoon hovering over the pot, heart racing. The knock came again, more insistent this time. It was late for deliveries, and Eva was out with friends, leaving Rory alone in the flat. She wiped her hands on a dish towel, glancing at the door, her mind racing through a list of possibilities. Who could it be? With a deep breath, she approached the door, her pulse quickening with each step. She peered through the peephole, and her breath caught in her throat. Lucien Moreau stood on the other side, impeccably dressed in a tailored charcoal suit, his slicked-back platinum hair
gleaming
under the dim hallway light. The sight of him sent a rush of memories flooding back—his laughter, the way his amber and black eyes sparkled with mischief, the way he had once made her
feel
alive. But there was also the hurt, the unresolved tension that had lingered between them like a ghost. She hesitated, her hand hovering over the doorknob. What was he doing here? Another knock, this one softer, almost tentative. “Rory?” His voice was smooth, laced with an accent that made her heart flutter against her will. “I know you’re in there.” She opened the door, just a crack, enough to see his face fully. “Lucien,” she said, her voice
barely above a whisper
. “May I come in?” He didn’t wait for her to respond, stepping forward as she opened the door wider, his presence filling the small space. The air thickened with
unspoken
words as she stepped back, allowing him entry. He closed the door behind him, the sound
echoing
in the silence that followed. Ptolemy, sensing the shift in energy, darted under the couch, leaving them alone in the cramped flat, surrounded by stacks of books and scrolls that
seemed to
close in around them. “What are you doing here?” Rory asked, crossing her arms defensively. Lucien ran a hand through his hair, his expression
unreadable
. “I was in the neighborhood,” he said, his voice steady but lacking the usual confidence. “I thought I’d check in.” “Check in?” She scoffed, the bitterness creeping into her tone. “You just show up after months of silence, and you
call that checking
in?” He sighed, his eyes flickering with something she couldn’t quite place. “I know it’s unexpected. I didn’t plan this. I just… I needed to see you.” “Why now?” The question
hung in the air
, heavy with the
weight
of their past. “After everything?” Lucien stepped closer, the space between them charged with tension. “Because I’ve been thinking about you. About us. I didn’t handle things well before, and I’m sorry for that.” Rory’s heart raced, a mix of anger and longing swirling within her. “Sorry doesn’t change what happened, Lucien. You walked away when I needed you the most.” “I know,” he said, his voice low, almost pleading. “I was scared. I didn’t know how to deal with everything that was happening. I thought it was for the best.” “For you, maybe,” she shot back, her voice rising. “You left me to pick up the pieces. I had to figure everything out on my own.” He ran a hand over his face, frustration
etched
into his features. “I didn’t want to hurt you, Rory. I thought distancing myself would protect you.” “Protect me?” She laughed, a harsh sound that
echoed
in the small room. “You think leaving me alone was protecting me? You were the only one who understood what I was going through.” Lucien’s gaze softened, and for a moment, the walls between them
seemed to
crack. “I know I messed up. But I’m here now. Can we at least talk?” Rory hesitated, the anger bubbling beneath the surface battling with the undeniable pull she felt toward him. She wanted to scream, to push him away, but there was a part of her that craved his presence, that missed the way he made her
feel
—alive, seen, cherished. “Fine,” she said, her voice steadier now. “Talk.” He took a deep breath, his eyes searching hers. “I’ve been working in the supernatural underworld, gathering information, trying to make sense of my own heritage. It’s complicated, and I thought I could handle it alone. But I realized I can’t. Not without you.” Rory’s heart twisted at his words. “You think I want to be part of that world? You think I want to dive back into the chaos?” “I don’t want to drag you into anything,” he said
quickly
. “But I need you to
understand that I’ve
changed. I’m not the same man who walked away. I want to be better—for you, for us.” “Us?” The word felt foreign on her tongue, a ghost of what they once had. “You can’t just say that and expect everything to be okay.” “I know it’s not that simple,” he replied, his voice earnest. “But I’m willing to fight for it. For you. I’ve missed you, Rory. More than I can say.” The sincerity in his eyes made her heart ache. She wanted to believe him, to let go of the hurt and the anger, but the scars ran deep. “You hurt me, Lucien. You can’t just erase that.” “I don’t want to erase it,” he said, stepping closer, his voice dropping to a whisper. “I want to acknowledge it. I want to make it right.” Rory’s breath caught in her throat as he reached out, his fingers brushing against her arm, sending a jolt of electricity through her. She could
feel
the warmth radiating from him, the familiar pull that had always drawn her to him. “What if I can’t forgive you?” she asked, her voice trembling. “Then I’ll spend every day trying to earn it,” he replied, his gaze
unwavering
. “I’ll show you that I’m worth it.” The intensity of his stare made her heart race, and for a moment, the world outside faded away. She could see the vulnerability in his eyes, the
weight
of his regrets, and the hope that
flickered
there. It was intoxicating, and she felt herself leaning closer, drawn in by the gravity of their shared history. But just as she was about to close the distance, the sound of a key turning in the lock jolted her back to reality. The door swung open, and Eva stepped inside, her laughter trailing behind her as she entered the flat. “Rory! You won’t believe the—” She stopped short, her eyes darting between Rory and Lucien, the atmosphere thick with
unspoken
tension. Rory’s heart sank, the moment shattered. She stepped back, breaking the connection, the warmth of Lucien’s presence
suddenly
feel
ing like a distant memory. “Eva,” she said, forcing a smile, her voice strained. “You’re back early.” Eva raised an eyebrow, a knowing smile creeping onto her face. “Looks like I interrupted something. Should I come back later?” “No,” Rory said
quickly
, her cheeks flushing. “It’s fine. We were just… talking.” Lucien cleared his throat, his expression shifting to one of guarded neutrality. “I should go,” he said, his voice steady but laced with disappointment. “I didn’t mean to intrude.” “Wait,” Rory said, her heart racing as she turned to him. “Can we… can we talk again? Soon?” He hesitated, his eyes searching hers for a moment before he nodded. “I’d like that.” With that, he turned and walked toward the door, leaving Rory standing in the middle of the flat, her heart a tumult of emotions. As the door clicked shut behind him, she felt the
weight
of everything unsaid hanging in the air, the promise of what could be lingering just out of reach. Eva stepped closer, her expression shifting from playful to concerned. “What was that about?” Rory sighed, running a hand through her hair, the reality of the moment crashing down around her. “Just… old wounds, I guess.” “Looks like there’s still something there,” Eva said, her tone teasing but her eyes serious. “You should talk to him. You deserve to be happy, Rory.” Rory nodded, but the uncertainty gnawed at her. She had spent so long building walls, protecting herself from the pain of the past. Could she
really
let him back in? As she turned back to the
simmering
pot, the spices filling the air, she couldn’t shake the
feel
ing that this was only the beginning of a much larger story—one that would force her to confront her past and decide what she
truly
wanted for her future.
Evaluation details
Result
Evaluator
Details
Meta Data
54.9020%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
17
adverbTagCount
4
adverbTags
0
"she said, her voice barely above a whisper [barely]"
1
"he said, his voice low, almost pleading [almost]"
2
"he said quickly [quickly]"
3
"Rory said quickly, her cheeks flushing [quickly]"
52.7984%
AI-ism adverb frequency
Target: <1% AI-ism adverbs (57 tracked)
wordCount
1483
totalAiIsmAdverbs
7
found
0
adverb
"quickly"
count
2
1
adverb
"softly"
count
1
2
adverb
"suddenly"
count
1
3
adverb
"barely above a whisper"
count
1
4
adverb
"really"
count
1
5
adverb
"truly"
count
1
highlights
0
"quickly"
1
"softly"
2
"suddenly"
3
"barely above a whisper"
4
"really"
5
"truly"
100.0000%
AI-ism character names
Target: 0 AI-default names (17 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
100.0000%
AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
0.0000%
AI-ism word frequency
Target: <1% AI-ism words (140 tracked)
wordCount
1483
totalAiIsms
15
found
0
word
"simmering"
count
2
1
word
"flickered"
count
1
2
word
"gleaming"
count
1
3
word
"unwavering"
count
1
4
word
"unspoken"
count
2
5
word
"unreadable"
count
1
6
word
"weight"
count
3
7
word
"echoed"
count
1
8
word
"echoing"
count
2
9
word
"etched"
count
1
highlights
0
"simmering"
1
"flickered"
2
"gleaming"
3
"unwavering"
4
"unspoken"
5
"unreadable"
6
"weight"
7
"echoed"
8
"echoing"
9
"etched"
100.0000%
Cliche density
Target: ≤1 cliche(s) per 800-word window
totalCliches
1
maxInWindow
1
found
0
label
"hung in the air"
count
1
highlights
0
"hung in the air"
100.0000%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
0
narrationSentences
75
matches
(empty)
100.0000%
Filter word density
Target: ≤12% sentences with filter/hedge words
filterCount
2
hedgeCount
2
narrationSentences
75
filterMatches
0
"feel"
hedgeMatches
0
"seemed to"
100.0000%
Overuse of "that" (subordinate clause padding)
Target: ≤10% sentences with "that" clauses
thatCount
2
totalSentences
105
matches
0
"call that checking"
1
"understand that I’ve"
95.4825%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
46
mean
32.13
std
15.56
cv
0.484
sampleLengths
0
75
1
59
2
81
3
30
4
29
5
22
6
25
7
58
8
11
9
30
10
24
11
26
12
17
13
29
14
27
15
30
16
26
17
26
18
33
19
28
20
46
21
8
22
44
23
26
24
36
25
26
26
29
27
37
28
27
29
52
30
21
31
55
32
42
33
21
34
35
35
21
36
13
37
29
38
18
39
15
40
53
41
14
42
22
43
26
44
30
45
46
100.0000%
Passive voice overuse
Target: ≤5% passive sentences
passiveCount
0
totalSentences
75
matches
(empty)
100.0000%
Past progressive (was/were + -ing) overuse
Target: ≤10% past progressive verbs
pastProgressiveCount
0
totalVerbs
199
matches
(empty)
100.0000%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1049
adjectiveStacks
0
stackExamples
(empty)
adverbCount
35
adverbRatio
0.03336510962821735
lyAdverbCount
11
lyAdverbRatio
0.010486177311725452
100.0000%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
105
echoCount
0
echoWords
(empty)
100.0000%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
105
mean
14.08
std
7.62
cv
0.541
sampleLengths
0
26
1
20
2
29
3
10
4
8
5
17
6
20
7
4
8
14
9
12
10
24
11
31
12
17
13
8
14
5
15
7
16
17
17
5
18
13
19
9
20
25
21
13
22
14
23
31
24
11
25
10
26
15
27
5
28
10
29
14
30
11
31
15
32
15
33
2
34
10
35
19
36
12
37
15
38
9
39
21
40
9
41
17
42
12
43
14
44
13
45
20
46
14
47
14
48
17
49
29
49.8413%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
6
diversityRatio
0.3333333333333333
totalSentences
105
uniqueOpeners
35
13.2353%
Dialogue tag variety (said vs. fancy)
Target: ≤30% fancy dialogue tags
totalTags
17
fancyCount
11
fancyTags
0
"he said, his voice steady but lacking the usual confidence (say, lack)"
1
"he said, his voice low, almost pleading (say, plead)"
2
"she shot back, her voice rising (shoot back, rise)"
3
"laughed (laugh)"
4
"he said quickly (say quickly)"
5
"he said, stepping closer, his voice dropping to a whisper (say, step drop)"
6
"he replied, his gaze unwavering (reply, unwaver)"
7
"she said, forcing a smile, her voice strained (say, force strain)"
8
"Rory said quickly, her cheeks flushing (say quickly, flush)"
9
"he said, his voice steady but laced with disappointment (say, lace)"
10
"Rory said, her heart racing as she turned to him (say, race turn)"
80.3682%