NC Bench
Overview
About
Tests
Models
Vendors
Run: 2026-02-17-01KHMR7EHMG824XQK5K1H3SAMP
Run Details
Model:
GPT-4.1 Nano
Test:
Bad Writing Habits
Scenario:
Romance: separated couple reunites
Duration:
11.6s
Cost:
$0.000677
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
The knock rattled the door with an unrelenting streak of impatience. Aurora Carter, lounging on a threadbare armchair in the cluttered chaos of Eva’s flat, glanced toward the doorway, her pulse quickening despite herself. The tiny space was thick with the scent of cumin and old paper, Ptolemy’s tabby silhouette curled atop a stack of research notes. She lifted her chin, steadying her nerves, and then
reluctantly
pushed to her feet. The knocking persisted, louder now— deliberate, almost insistent—as if whoever stood outside refused to be ignored. Aurora hesitated, her fingers tightening around the worn edge of the table. She knew who it was. But knowing didn’t soften the ache that curled in her stomach. She moved to the door, her boots silent on the uneven floorboards. The chain was long gone, replaced by the three deadbolts—an added layer of security after Evan had haunted her dreams for too long. With a slow breath, she unlocked the first bolt, then the second, and finally the deadbolt clicked free. The door swung open. He
was standing
there in the dim light—a man wrapped in an air of cool confidence, tailored charcoal suit impeccably pressed, platinum blond hair slicked back as if he’d stepped straight out of some noir film. His cane rested against his leg, ivory-handled blade concealed within; even in the shadowed doorway, his eyes gleamed with sharp alertness, one amber, one black. Lucien Moreau. Aurora’s breath hitched. Not because she
was surprised
—no, she’d seen him arrive unannounced before—but because of what that unannounced presence always did to her. Her skin prickled with a mixture of
apprehension
and something else. Something she would never quite allow herself to call hope. He studied her in silence, those mismatched eyes
flicker
ing like blinking lamps. The briefest hint of a smile tugged at his lips, but he said nothing. A
flicker
of disbelief, perhaps—
surprise that she
was there, that she was still standing, still breathing, after everything. “Lucien,” she said, her voice calmer than she felt, cool enough to coat her discomfort in coolness. “What are you doing here?” He stepped inside just enough to block the doorway, that tailored form exuding a subtle danger. “I could ask you the same thing,” he replied, voice velvety but edged with something
unreadable
. “Haven’t seen you around for a while. Thought I’d check in.” Aurora closed the door behind him, quietly but firmly. Her eyes darted over his face, searching for clues she refused to acknowledge might still linger beneath that polished veneer. Her mind
cataloged
memories—the way he’d looked at her once, the way his voice had made her stomach tighten—long buried beneath layers of bitterness and survival. “I’m not sure what you expect me to say,” she managed, voice faint but steady. “I’m busy.” He smirked
slightly
, stepping closer, and for a moment, she caught the faint scent of citrus and something darker—demon’s blood, maybe, or just the perfume of a man who lived on secrets. “Busy isn’t exactly the word I’d use. But I get it. People change.” Her lips pressed into a thin line. “People hurt each other too. That’s what I remember.” He paused, eyeing her with an intensity that made her shoulders stiffen. “I didn’t come here to reopen old wounds. Well, not entirely. Just… to see if you’re still the person I knew.” Aurora’s gaze hardened. She didn’t want this—didn’t want the
weight
of those past memories pressing down on her. “What do you want, Lucien?” His smile grew, slow and deliberate, as if tasting her words. “Truthfully? I want to know why you walked away. Why you’ve been hiding behind this”—he gestured vaguely at the small space, the cluttered tables, the books—“world of research and solitude. Because I haven’t forgotten what we had. And I don’t believe you have either.” Her eyes
flickered
with defiance, but beneath that, something softer—hazards of old history. She shifted, stepping away from the door and into the cramped room. “What I wanted… what I need… isn’t what you think it is. The past, Lucien — it’s better left where it belongs.” He tilted his head, the faint curl of a smile playing around his lips. “Better left buried? Or better ignored?” His tone was almost gentle—an
unspoken
challenge. Aurora looked away for a moment, eyes catching on Ptolemy, the tabby curled silently on a heap of books. Her heart thudded, uneven, as she grappled with this mess of feelings—the
unspoken
longing, the years of loss, the anger she kept buried so deep she barely remembered how to feel anything else anymore. And then she drew a breath, steadier. “I’ve changed, Lucien. Maybe I was someone else before. Someone who believed in things—people—who could hurt you in ways you don’t even understand yet. I can’t go back to that. Not anymore.” He stepped closer, invading her space without seeming to do so, his gaze steady. “We don’t have to go back. Just… tell me what’s real now. That’s all I want.” A cruel part of her wanted to push him away, to slam the door shut on all those memories threatening to surface. But another part—one she thought she’d crushed long ago—wanted this, wanted to hear some scrap of truth, some fragment of the person she’d once almost believed she was. Her voice was quieter now, almost resigned. “Some things are better kept secret. Some ghosts… they don’t stay dead no matter how much you wish they would.” Lucien’s eyes softened just
slightly
, as if in acknowledgment of her pain. He reached into his coat pocket, producing a small object—something shiny, wrapped in a cloth. “Just… for a moment. A reminder,” he said
softly
. “No matter what’s happened, I haven’t forgotten what we shared. Or what you mean to me.” He extended it toward her, a fragile offering, and she hesitated—caught between instinct and surrender. Her hand
fluttered
up, trembling
slightly
, before she reached out and accepted the gift. Her fingertips brushed against the cloth as she unwrapped it
cautiously
. Inside was an old, silver locket—familiar, battered, bearing the initials they’d carved into it as teenagers. Her breath caught, eyes watering despite herself. “Don’t pretend,” he said quietly. “That it doesn’t still mean something. Because it does. To both of us.” Aurora swallowed the thick lump rising in her throat. Her fingers brushed the tiny scar on her wrist, a childhood accident that still
echoed
in small, silent ways. She looked back at Lucien, her eyes bright with unshed emotions she refused to name. For a moment, the world outside the cramped flat
seemed to
hush. The noise of London dimmed, and in that fragile silence, she wondered if maybe—just maybe—some ghosts weren’t meant to be buried forever.
created_at
"2026-02-17T02:52:58.859109+00:00"
2/17/2026, 2:52:58 AM
model
"openai/gpt-4.1-nano-2025-04-14"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
427
moderation_latency
(null)
generation_time
11467
tokens_prompt
808
tokens_completion
1807
native_tokens_prompt
754
native_tokens_completion
1504
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.000677
router
(null)
provider_responses
0
id
"resp_00d6003298ca6389016993d7fe9e8c8197be76a2b460db1e0a"
status
200
is_byok
false
latency
186
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-1771296766-EnRg2KwegaFngKgJWMAT"
upstream_id
"resp_00d6003298ca6389016993d7fe9e8c8197be76a2b460db1e0a"
total_cost
0.000677
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
5
adverbTagCount
3
adverbTags
0
"she said, her voice calmer than she felt, cool enough to coat her discomfort in coolness [enough]"
1
"he said softly [softly]"
2
"he said quietly [quietly]"
47.2759%
AI-ism adverb frequency
Target: <1% AI-ism adverbs (57 tracked)
wordCount
1138
totalAiIsmAdverbs
6
found
0
adverb
"cautiously"
count
1
1
adverb
"reluctantly"
count
1
2
adverb
"slightly"
count
3
3
adverb
"softly"
count
1
highlights
0
"cautiously"
1
"reluctantly"
2
"slightly"
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)
12.1265%
AI-ism word frequency
Target: <1% AI-ism words (140 tracked)
wordCount
1138
totalAiIsms
10
found
0
word
"flickered"
count
1
1
word
"flicker"
count
1
2
word
"fluttered"
count
1
3
word
"cataloged"
count
1
4
word
"unspoken"
count
2
5
word
"unreadable"
count
1
6
word
"apprehension"
count
1
7
word
"weight"
count
1
8
word
"echoed"
count
1
highlights
0
"flickered"
1
"flicker"
2
"fluttered"
3
"cataloged"
4
"unspoken"
5
"unreadable"
6
"apprehension"
7
"weight"
8
"echoed"
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
1
narrationSentences
61
matches
0
"was surprised"
100.0000%
Filter word density
Target: ≤12% sentences with filter/hedge words
filterCount
0
hedgeCount
1
narrationSentences
61
filterMatches
(empty)
hedgeMatches
0
"seemed to"
100.0000%
Overuse of "that" (subordinate clause padding)
Target: ≤10% sentences with "that" clauses
thatCount
1
totalSentences
74
matches
0
"surprise that she"
87.6776%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
31
mean
36
std
16.45
cv
0.457
sampleLengths
0
71
1
44
2
53
3
4
4
61
5
2
6
45
7
44
8
22
9
43
10
55
11
17
12
45
13
16
14
33
15
23
16
55
17
47
18
27
19
60
20
32
21
30
22
50
23
27
24
27
25
25
26
40
27
23
28
18
29
43
30
34
100.0000%
Passive voice overuse
Target: ≤5% passive sentences
passiveCount
1
totalSentences
61
matches
0
"was surprised"
100.0000%
Past progressive (was/were + -ing) overuse
Target: ≤10% past progressive verbs
pastProgressiveCount
1
totalVerbs
163
matches
0
"was standing"
88.7402%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
889
adjectiveStacks
0
stackExamples
(empty)
adverbCount
47
adverbRatio
0.052868391451068614
lyAdverbCount
14
lyAdverbRatio
0.015748031496062992
100.0000%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
74
echoCount
0
echoWords
(empty)
100.0000%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
74
mean
15.08
std
8.12
cv
0.539
sampleLengths
0
11
1
23
2
23
3
14
4
16
5
12
6
5
7
11
8
12
9
23
10
18
11
4
12
36
13
25
14
2
15
3
16
21
17
11
18
10
19
12
20
14
21
18
22
17
23
5
24
16
25
16
26
11
27
9
28
20
29
26
30
15
31
2
32
32
33
13
34
7
35
9
36
12
37
21
38
3
39
15
40
5
41
11
42
44
43
13
44
12
45
22
46
14
47
13
48
19
49
34
59.0090%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
3
diversityRatio
0.3783783783783784
totalSentences
74
uniqueOpeners
28
0.0000%
Dialogue tag variety (said vs. fancy)
Target: ≤30% fancy dialogue tags
totalTags
5
fancyCount
5
fancyTags
0
"she said, her voice calmer than she felt, cool enough to coat her discomfort in coolness (say, feel, coat)"
1
"he replied, voice velvety but edged with something unreadable (reply, voice edge)"
2
"she managed, voice faint but steady (manage)"
3
"he said softly (say softly)"
4
"he said quietly (say quietly)"
76.1664%