NC Bench
Overview
About
Tests
Models
Vendors
Run: 2026-02-17-01KHMR2CB43EVSJ451X9Q2ZW2X
Run Details
Model:
GPT-4.1 Nano
Test:
Bad Writing Habits
Scenario:
Romance: separated couple reunites
Duration:
9.5s
Cost:
$0.000617
Provider:
OpenAI
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 hesitated just a moment, her hand hovering over the doorknob, before finally twisting it open. The door swung inward with a quiet creak, revealing the narrow hall of Eva’s flat on Brick Lane. Shadows from the dim hallway spilled into her line of sight, but the person standing there—leaning almost
lazily
against the doorframe—was unmistakable. Lucien Moreau. His heterochromatic eyes—one amber, one black—locked onto hers with an intensity that made her stomach tighten, a flood of memories rushing back. His platinum blond hair
was slicked
back to perfection, a sharp contrast to the casual yet meticulously tailored charcoal suit that hugged his frame. She blinked, her thumb unconsciously tracing the crescent-shaped scar on her left wrist as if to steady herself. “What are you doing here?” Her voice was steady, but beneath it edged a cautious wariness, a silent question layered with a thousand
unspoken
things—how long had he been standing there, what exactly had prompted this unannounced visit? Lucien straightened, pushing off the doorframe with a slow, deliberate motion. The ivory-handled cane he carried clicked
softly
against the floor, though his hand lingered on it for a moment before he shifted his
weight
. His eyes
flicked
over her—her tired bright blue eyes, her shoulder-length black hair hanging loose, her
slightly
hesitant stance. “Would you believe me if I said I simply missed you?” His voice was smooth, almost casual, but she caught the faint undercurrent of something else—a hint of regret, maybe, or longing. Rory’s stomach clenched at those words, but she pushed the feeling aside, the guard slipping into place. “You don’t exactly have a reputation for honesty, Lucien. Especially not when it comes to showing up unannounced on my doorstep.” He chuckled
softly
, a sound that sounded genuine but carried that faint grit she’d come to recognize—something beneath the surface, layers of history tangled inside it. “True. But I thought I’d try my luck regardless.” His gaze softened just a little, and he pushed away from the doorframe, stepping inside without waiting for an invitation. The flat was cramped, cluttered with books, scrolls, and research notes, the air
tinged
with the scent of curry from the restaurant downstairs and the sharp tang of ink and paper. Ptolemy—Eva’s tabby cat—leapt gracefully from a pile of papers to watch him with narrow, cautious eyes, twitching his tail before curling up on the windowsill. Aurora closed the door
slowly
, her mind racing as she crossed her arms. “Lucky for you, Eva isn’t here to chase you out. But I am. So, what now?” Lucien’s smile was faint, almost wistful, as he stepped toward her. “I never meant for this to be difficult, Rory.” It was the nickname he rarely used, and it made something tighten painfully in her chest. “I just… needed to see you.” “Why?” Her voice cracked
slightly
, but she caught herself, schooling her expression into something more guarded. “After everything—after you disappeared—what makes you think showing up now is a good idea?” He looked away momentarily, his hand brushing over the cane—something he always did when he
was uncomfortable
. “Because I was a fool. Because I was stupid enough to think I could walk away without consequences. And because I realized I’ve been lying to myself all this time—the truth is, I never stopped thinking about you.” She felt her pulse hammering in her ears. Her eyes
flicked
to the scar on her wrist, the reminder of childhood accidents, of wounds that had long since healed but never quite faded from her memory. That scar meant vulnerability, and right now, her defenses felt razor-thin. “Thinking about me doesn’t fix what happened,” she said
softly
, her voice trembling just a little. “You hurt me, Lucien. You walked away, and I was left with loose ends, mistakes I couldn’t undo. I don’t know if I can just pretend none of that matters.” His jaw tightened, and he took a slow step closer, so close that she could see the faint shimmer of disappointment in his eyes, the
flicker
of something
unspoken
. “It matters,” he admitted quietly. “More than you know. But I’m not here to restart old fights. I’m here—because I need to tell you something. About me. About us.” She swallowed hard, fighting the urge to step back. “What are you talking about?” Lucien’s grip on his cane relaxed just a little, and in that moment, her senses sharpened—she caught the faint scent of his cologne, something dark and spicy that
seemed to
mingle with his natural scent, blending into the layers of memory she’d buried deep beneath reason and hurt. “I’m not just a fixer, Rory,” he said, voice low but steady. “I’m half-demon, and there’s a long road I’ve traveled because of it. Because of me. And I’ve come to
realize that the
parts of me I once tried to hide—those dark corners—are the parts I want you to see. Because I’ve never stopped wanting you.” A silence stretched, thick and heavy with
the weight of words
left unsaid. Ptolemy stretched
lazily
on the windowsill, flicking his tail, indifferent to the tension hanging between them. She felt her breath catch, her fingers trembling at her sides. Her mind spun with the chaos of everything—the hurt, the attraction, the tangled mess of history they couldn’t
unravel
in a moment. Yet something in Lucien’s eyes, that rare vulnerability, pulled at her in ways she couldn’t ignore. “I don’t know if I can just let go of everything,” she whispered, voice barely more than a breath. “Not after all this time.” His smile
flickered
—soft, almost hopeful. “Then let me prove to you that I’m still the man who risked everything for one moment of honesty. Whether you believe me or not—that’s up to you. But I’m not leaving without trying.” She looked at him, at the man who had once been her ally, her dark temptation, her complicated love. The fragile line between past and present stretched tight, waiting for her to cross or to hold tight to her defenses. In the
flicker
ing half-light of Eva’s flat, Rory Carter hesitated, torn and trembling—a woman caught in the storm of what was lost and what might still be found.
created_at
"2026-02-17T02:50:10.312514+00:00"
2/17/2026, 2:50:10 AM
model
"openai/gpt-4.1-nano-2025-04-14"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
400
moderation_latency
(null)
generation_time
9314
tokens_prompt
808
tokens_completion
1641
native_tokens_prompt
754
native_tokens_completion
1355
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.0006174
router
(null)
provider_responses
0
id
"resp_096cf942befc06b0016993d75881388194803242808ca01579"
status
200
is_byok
false
latency
134
endpoint_id
"9251cee5-5503-4be9-9439-7ae21ff062a3"
provider_name
"OpenAI"
model_permaslug
"openai/gpt-4.1-nano-2025-04-14"
api_type
"completions"
id
"gen-1771296600-NNtjTmnXDzbvFKkWS9rR"
upstream_id
"resp_096cf942befc06b0016993d75881388194803242808ca01579"
total_cost
0.0006174
cache_discount
(null)
upstream_inference_cost
0
provider_name
"OpenAI"
Evaluation details
Result
Evaluator
Details
Meta Data
0.0000%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
4
adverbTagCount
3
adverbTags
0
"she said softly, her voice trembling just a little [softly, just]"
1
"he admitted quietly [quietly]"
2
"she whispered, voice barely more than a breath [barely more]"
24.4570%
AI-ism adverb frequency
Target: <1% AI-ism adverbs (57 tracked)
wordCount
1059
totalAiIsmAdverbs
8
found
0
adverb
"lazily"
count
2
1
adverb
"slightly"
count
2
2
adverb
"slowly"
count
1
3
adverb
"softly"
count
3
highlights
0
"lazily"
1
"slightly"
2
"slowly"
3
"softly"
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)
5.5713%
AI-ism word frequency
Target: <1% AI-ism words (140 tracked)
wordCount
1059
totalAiIsms
10
found
0
word
"tinged"
count
1
1
word
"flickered"
count
1
2
word
"flicker"
count
1
3
word
"flicked"
count
2
4
word
"unspoken"
count
2
5
word
"weight"
count
2
6
word
"unravel"
count
1
highlights
0
"tinged"
1
"flickered"
2
"flicker"
3
"flicked"
4
"unspoken"
5
"weight"
6
"unravel"
100.0000%
Cliche density
Target: ≤1 cliche(s) per 800-word window
totalCliches
1
maxInWindow
1
found
0
label
"weight of words/silence"
count
1
highlights
0
"the weight of words"
100.0000%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
1
narrationSentences
41
matches
0
"was uncomfortable"
100.0000%
Filter word density
Target: ≤12% sentences with filter/hedge words
filterCount
0
hedgeCount
1
narrationSentences
41
filterMatches
(empty)
hedgeMatches
0
"seemed to"
100.0000%
Overuse of "that" (subordinate clause padding)
Target: ≤10% sentences with "that" clauses
thatCount
1
totalSentences
52
matches
0
"realize that the"
38.9947%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
24
mean
42.96
std
12.31
cv
0.286
sampleLengths
0
57
1
48
2
56
3
54
4
32
5
38
6
55
7
56
8
29
9
42
10
30
11
55
12
47
13
46
14
58
15
14
16
48
17
57
18
29
19
49
20
24
21
39
22
40
23
28
100.0000%
Passive voice overuse
Target: ≤5% passive sentences
passiveCount
1
totalSentences
41
matches
0
"was slicked"
100.0000%
Past progressive (was/were + -ing) overuse
Target: ≤10% past progressive verbs
pastProgressiveCount
0
totalVerbs
126
matches
(empty)
80.5785%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
752
adjectiveStacks
0
stackExamples
(empty)
adverbCount
43
adverbRatio
0.057180851063829786
lyAdverbCount
19
lyAdverbRatio
0.02526595744680851
100.0000%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
52
echoCount
0
echoWords
(empty)
100.0000%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
52
mean
19.83
std
10.17
cv
0.513
sampleLengths
0
17
1
18
2
22
3
2
4
22
5
24
6
18
7
38
8
11
9
24
10
19
11
32
12
17
13
21
14
26
15
29
16
31
17
25
18
13
19
16
20
11
21
25
22
6
23
16
24
14
25
17
26
38
27
8
28
28
29
11
30
16
31
30
32
29
33
5
34
24
35
9
36
5
37
48
38
12
39
45
40
13
41
16
42
11
43
22
44
16
45
19
46
5
47
5
48
34
49
19
83.9744%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
3
diversityRatio
0.5384615384615384
totalSentences
52
uniqueOpeners
28
0.0000%
Dialogue tag variety (said vs. fancy)
Target: ≤30% fancy dialogue tags
totalTags
4
fancyCount
4
fancyTags
0
"she said softly, her voice trembling just a little (say softly, tremble just)"
1
"he admitted quietly (admit quietly)"
2
"he said, voice low but steady (say, voice)"
3
"she whispered, voice barely more than a breath (whisper, voice barely more)"
72.5633%