NC Bench
Overview
About
Tests
Models
Vendors
Run: 2026-02-17-01KHMQX15DRMJWJJ5C5N6K0X0R
Run Details
Model:
GPT-4.1
Test:
Bad Writing Habits
Scenario:
Romance: separated couple reunites
Duration:
46.3s
Cost:
$0.016708
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 froze with her hand on the handle, the groan of the third deadbolt tumbling open
slightly
too loud in the hush of the flat. Beyond the warped old door came a sound—shoes shifting, the soft tap of something against floorboards—and her heart performed a quick arithmetic of dread and hope. Eva wasn’t due home for hours. The curry house downstairs had gone quiet, street sounds muffled by June’s moody drizzle outside. Every instinct screamed not to turn the knob, and yet she did, because she always did. Rory Carter never let fear chase her away from her own life. She cracked the door and the corridor’s fluorescent gloom spilled over someone at her threshold. Lucien Moreau. No sign of a smile, only the ghost of one—a crease at the corner of his mouth, as if he disapproved of the entire hallway. Heterochromatic eyes took her in top to toe, imperious as ever: right one the color of whisky honey, left so black it had no bottom. He leaned against his ivory-handled cane—more affectation than necessity, Rory always thought, and the gleam of it in his pale hand made some unkind part of her want to slam the door and bolt it thrice over. But she didn’t. She set her jaw, blocking most of the gap, and kept her voice even. “I thought London was big enough for the both of us.” Lucien watched her, a little rhythmless click as he rolled the cane’s tip against the grimed wood. “You do have a way of tucking yourself into corners, mademoiselle. But we both know information travels fast.” “Is that what you’re calling it?” Rory shot back, parrying with habit more than intent. “You could’ve called. Or texted. Or sent one of your cryptic espresso-stained notes.” His lips twitched. Those suits always did look sharper when he’d
been caught
in the rain; this one hugged his frame with cruel precision, shadows sharpening his angles, platinum hair
slightly
mussed by the weather. “I prefer in person. Forgive the intrusion. May I come in?” No apology offered, none required. That was how they did things. She moved aside—a movement sharp with old muscle memory, a corded tension that hummed between resentment and pull. Lucien
glided
past her with that predatory grace, not quite human, always aware of the space he stole. Inside, Ptolemy the tabby yawned from the battered armchair and then, unimpressed, burrowed amongst a heap of loose-leaf manuscripts. The living room’s air was thick with dust and forgotten tea mugs, the spines of books crowding every available ledge. “Defense comes with a feline attachment now?” Lucien mused, flicking his gaze at the cat. “He’s a fierce one.” “More than you,” Rory said. She eyed him
warily
, then shut the door. The last deadbolt thunked home like a judge’s gavel. For a second, neither moved. Her own reflection ghosted across a rain-streaked window. She hated how he looked so at ease—hands folded on the cane,
weight
on his good leg, the practiced, thoughtful stillness of a man who could wait you out for days if he saw fit. “Have a seat,” she said, voice taut, as she closed the gap towards the kitchenette. “If you don’t mind the research.” Lucien did not; he set the cane aside and lowered himself onto the edge of a threadbare sofa, somehow making even sagging springs dignified. “You’re well. I’d heard otherwise.” “Don’t flatter yourself. I’m fine.” She busied her hands: kettle, mugs, the automatic choreography of hospitality in Eva’s too-small kitchen. “You didn’t come all this way to check on me.” He watched her over a fortress of occult meant for Eva’s next thesis, eyes
unreadable
. “No. I need your help, Aurora.” She paused, the name scraping along nerves like sandpaper. “You make it sound easy.” “Nothing worth it ever is.” His voice had gone quiet, an old intimacy in his accent—a hint of Marseille salt and smoke curling through. “But yes, I do need your sharp mind. And your discretion.” Rory huffed, grabbing a bag of Oolong that Eva liked—“for emergencies,” not that Lucien would care for distinctions. She brought the cups over, careful not to look at the ivory cane, or the way his gaze lingered on the scar at her wrist, visible beneath the sleeve she’d shoved up in her nervousness. Their hands brushed as she set his tea down. She flinched. He didn’t. He never did. “Let’s skip the overture, Lucien. What’s gone wrong?” A pause. She watched his throat as he considered. “There’s a ledger gone missing from the Golden Empress,” he said, low. “The sort with names in it. Yours. Mine. Many others I would prefer protected.” Her chest contracted. “So this is business.” His smile was an old, wounded thing. “You know better. It’s never just that.” The cat mewed and sprang up, parking itself on Lucien’s lap with all the egotism of a scholar given tenure. He scratched Ptolemy absently, and for a moment his expression softened. She
tried to
recall if he’d ever looked at her like that, relaxed, uncalculating. Flashes surfaced: warmth in the shadowed alcove of some Soho speakeasy; laughter over chess at midnight; his hand in hers before everything with Evan went ugly and she had to run. She didn’t sit at first, only hovered at the book-crammed edge of the coffee table, breathing in time with the rain. “You’re afraid,” she said. “Or you wouldn’t be here.” He met her eyes, and it made her
feel
so seen that she resented him all over again. “You were always better at spotting danger than I. I can charm a snake, but not the venom out of it.” A shudder of anger, or perhaps longing, ran through her. “You could have warned me. When you stopped calling—I thought you’d—" She swallowed the rest, bitterness sharp and familiar. “Doesn’t matter now.” He waited, letting silence run its course. “I should have. But you were with
Evans
, and I thought…” His fingers tensed on the cat’s fur. “It was easier not to complicate your life.” She stared at him, then out the tiny window, where city rain made rivers among the neon and grime. In the glass, their outlines blurred together. “You always think you’re protecting me. What if I never wanted that? What if I just wanted someone who didn’t flinch at the mess?” Lucien stood, unhurried, coming to lean against the wall close enough that she had to turn to face him. Now she felt the heat of him—the inhuman steadiness, the confidence, yes, but beneath that a trembling uncertainty only she had ever
been allowed
to see. “I never flinched, Rory,” he said
softly
, using the name only he made sound like a poem. “You’re the one who ran first.” She did not step back. Her arms had prickled cold with memory; now they warmed with something else as she looked up at him, into those mismatched eyes that had steadied her through too many long, haunted nights. “You’re a bastard, Lucien,” she whispered. He just inclined his head. “That I am. But I’m your bastard, if you’ll have me for it. Help me find the ledger. Let me…try, this time.” The silence between them shifted, that old gravity pulling like the tide. The kettle pinged, but neither moved. Rory saw herself now—her reflection, his silhouette at her shoulder, the
echo
of every ache and possibility unfinished. She heard herself say, “You hurt me.” His hand hovered, not quite touching her cheek. “I know,” he said. Gentle, for once. “Let me make it right.” She closed the distance, letting her forehead rest against his chest, barely trusting herself to breathe—lest the spell break, lest old wounds open anew. Perhaps this was foolishness, flinging herself into the breach a second time. Perhaps it was survival, too. Lucien’s hand slipped to her scarred wrist, thumb tracing the crescent ridge as if mapping her private constellations. In the quiet, the city’s noise faded until all that existed was the soft tap of rain, the rise and fall of his breath on her hair, and the memory—fresh, warm, terrifying—of all the things she’d left unsaid. When she finally looked up, his eyes were safe harbor and danger both. And she, Aurora Carter, was done running. “Alright,” she said. “Let’s see what trouble we can get into together.” He smiled, rare and true. “After you,” he murmured, as if she’d never left at all.
created_at
"2026-02-17T02:47:52.138134+00:00"
2/17/2026, 2:47:52 AM
model
"openai/gpt-4.1-2025-04-14"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
285
moderation_latency
(null)
generation_time
46219
tokens_prompt
808
tokens_completion
2199
native_tokens_prompt
754
native_tokens_completion
1900
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.016708
router
(null)
provider_responses
0
id
"resp_0fa43e0e8fc8e714016993d6a936e88195b9b5ef2856e63e8d"
status
200
is_byok
false
latency
110
endpoint_id
"c235abe8-11cc-42d3-95ad-72f4d198287a"
provider_name
"OpenAI"
model_permaslug
"openai/gpt-4.1-2025-04-14"
api_type
"completions"
id
"gen-1771296425-vZxVyXH8VsYu1p94TPRw"
upstream_id
"resp_0fa43e0e8fc8e714016993d6a936e88195b9b5ef2856e63e8d"
total_cost
0.016708
cache_discount
(null)
upstream_inference_cost
0
provider_name
"OpenAI"
Evaluation details
Result
Evaluator
Details
Meta Data
100.0000%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
10
adverbTagCount
1
adverbTags
0
"he said softly, using the name only he made sound like a poem [softly, only]"
71.9298%
AI-ism adverb frequency
Target: <1% AI-ism adverbs (57 tracked)
wordCount
1425
totalAiIsmAdverbs
4
found
0
adverb
"slightly"
count
2
1
adverb
"softly"
count
1
2
adverb
"warily"
count
1
highlights
0
"slightly"
1
"softly"
2
"warily"
80.0000%
AI-ism character names
Target: 0 AI-default names (17 tracked, −20% each)
codexExemptions
(empty)
found
0
"Evans"
100.0000%
AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
71.9298%
AI-ism word frequency
Target: <1% AI-ism words (140 tracked)
wordCount
1425
totalAiIsms
4
found
0
word
"glided"
count
1
1
word
"unreadable"
count
1
2
word
"weight"
count
1
3
word
"echo"
count
1
highlights
0
"glided"
1
"unreadable"
2
"weight"
3
"echo"
100.0000%
Cliche density
Target: ≤1 cliche(s) per 800-word window
totalCliches
0
maxInWindow
0
found
(empty)
highlights
(empty)
100.0000%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
0
narrationSentences
84
matches
(empty)
100.0000%
Filter word density
Target: ≤12% sentences with filter/hedge words
filterCount
1
hedgeCount
1
narrationSentences
84
filterMatches
0
"feel"
hedgeMatches
0
"tried to"
100.0000%
Overuse of "that" (subordinate clause padding)
Target: ≤10% sentences with "that" clauses
thatCount
0
totalSentences
108
matches
(empty)
100.0000%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
41
mean
34.29
std
22.79
cv
0.665
sampleLengths
0
100
1
104
2
28
3
35
4
28
5
46
6
86
7
19
8
35
9
35
10
21
11
29
12
30
13
21
14
14
15
35
16
53
17
16
18
8
19
35
20
7
21
14
22
76
23
30
24
39
25
32
26
33
27
50
28
45
29
23
30
38
31
6
32
27
33
36
34
7
35
20
36
41
37
56
38
20
39
12
40
16
100.0000%
Passive voice overuse
Target: ≤5% passive sentences
passiveCount
2
totalSentences
84
matches
0
"been caught"
1
"been allowed"
100.0000%
Past progressive (was/were + -ing) overuse
Target: ≤10% past progressive verbs
pastProgressiveCount
0
totalVerbs
193
matches
(empty)
96.3042%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1108
adjectiveStacks
0
stackExamples
(empty)
adverbCount
49
adverbRatio
0.04422382671480144
lyAdverbCount
12
lyAdverbRatio
0.010830324909747292
100.0000%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
108
echoCount
0
echoWords
(empty)
100.0000%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
108
mean
13.02
std
8.77
cv
0.674
sampleLengths
0
25
1
26
2
6
3
15
4
16
5
12
6
15
7
2
8
25
9
25
10
37
11
3
12
14
13
11
14
17
15
18
16
15
17
13
18
3
19
32
20
11
21
5
22
6
23
18
24
18
25
19
26
20
27
15
28
4
29
5
30
8
31
9
32
5
33
8
34
35
35
15
36
6
37
24
38
5
39
20
40
10
41
15
42
6
43
9
44
5
45
24
46
11
47
18
48
35
49
9
65.1235%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
3
diversityRatio
0.4074074074074074
totalSentences
108
uniqueOpeners
44
50.0000%
Dialogue tag variety (said vs. fancy)
Target: ≤30% fancy dialogue tags
totalTags
10
fancyCount
5
fancyTags
0
"she said, voice taut, as she closed the gap towards the kitchenette (say, close)"
1
"he said softly, using the name only he made sound like a poem (say softly, use made sound like)"
2
"she whispered (whisper)"
3
"She heard herself say, (heard herself say)"
4
"he murmured, as if she’d never left at all (murmur, does not never leave)"
90.3110%