Prompt sensitivity illustration showing a robustness gauge dial
AI Evals

Why o4-mini Is 2x More Brittle Than Claude (And What It Costs You in Production)

Sunny Pal Singh · · 8 min read

I ran 10 phrasings of the same task across 4 models. o4-mini's scores ranged from 1 to 10 on identical problems depending on phrasing. Here's what prompt sensitivity actually costs and how to measure it.

Why o4-mini Is 2× More Brittle Than Claude (And What It Costs You in Production)

I ran 10 phrasings of the same task across 4 models. o4-mini's scores ranged from 1 to 10 on identical problems depending on phrasing. Here's what prompt sensitivity actually costs and how to measure it.

Three weeks ago I was debugging a production pipeline for a client — a B2B SaaS company whose support-ticket classifier had quietly started misfiring. The model was o4-mini, the task hadn't changed, and no code had been touched. What had changed was a copywriter's well-intentioned rewrite of the system prompt to "sound more professional." That single edit dropped classifier accuracy from 87% to 51% overnight. Seven hours of incident review later, we traced every misfired ticket to one brittle model and one carelessly rephrased prompt.

That incident sent me straight to the Prompt Sensitivity Eval tool on ByteWaveNetwork. I ran the same core task — classify a support ticket into one of five categories — across 10 systematically varied phrasings and four models. The results were not what I expected, even for someone who thinks about this stuff daily.

Key Takeaways

  • o4-mini's standard deviation (3.13) is more than 2× Claude's (1.31), meaning phrasing luck dominates quality on that model.
  • o4-mini recorded a minimum score of 1/10 on some phrasings of tasks where it scored 10/10 on others — for identical inputs.
  • Average score alone is dangerously misleading; minimum score is the production-relevant number.
  • Adding even 2–3 few-shot examples collapses variance across all four models tested.
  • You need at least 10 phrasings to get a statistically meaningful standard deviation.

The Benchmark Setup: How I Tested Four Models

I used the ByteWaveNetwork Prompt Sensitivity Eval tool to generate and score 10 semantically equivalent but stylistically varied phrasings of the same classification task. The tool handles phrasing generation, model dispatch, and scoring automatically — I'll walk through what that looks like in practice in a moment.

The task: classify a customer support ticket into one of five categories (billing, technical, feature request, abuse, general). Scoring was done on a 1–10 rubric measuring label correctness and confidence calibration. Each phrasing was tested against the same 20 held-out tickets per model. Total: 800 scored outputs.

The Results Table Nobody Wants to Show You

Model Avg Score (1–10) Std-Dev Min Score Max Score API Cost / 800 runs Verdict
GPT-4.1 8.4 1.23 6 10 ~$1.80 Stable
Claude 3.7 Sonnet 8.7 1.31 6 10 ~$2.10 Stable
DeepSeek V3 Pro 8.1 1.59 5 10 ~$0.40 Moderate
o4-mini 8.0 3.13 1 10 ~$0.55 Brittle
Stop reading average scores. Every model in this table has an average between 8.0 and 8.7 — they look virtually identical. Standard deviation and minimum score are what actually tell you whether your prompt is safe to ship.

That last column is the one that matters for production. When o4-mini scores 1/10 on a phrasing that scores 10/10 on a structurally identical phrasing, you don't have a model problem — you have a prompt fragility problem that will eventually detonate in production, exactly as it did in my client's classifier.

What the Tool Actually Looks Like

The Prompt Sensitivity Eval UI is deliberately minimal. You paste your base prompt, choose which models to test, set a phrasing count (I recommend 10 as a baseline — more on why below), and hit Run. The tool then:

  • Auto-generates semantically equivalent phrasing variants (terse, verbose, imperative, polite, structured, unstructured, etc.).
  • Dispatches each phrasing to each selected model against your test cases.
  • Returns a results grid showing avg, std-dev, min, max, and a per-phrasing breakdown you can drill into.

The output looks like a heat map table: green cells for high-scoring phrasings, amber for middling, red for failures. Within 90 seconds of hitting Run, you can see exactly which phrasing styles destroy o4-mini and which ones Claude handles gracefully. There's also a "variance delta" column showing how much each individual phrasing deviates from that model's own average — useful for spotting structural patterns without needing a statistics background.

Practical tip: The tool exports results as CSV. I pipe that into a Notion database that auto-flags any prompt with std-dev > 2.0 before it goes to code review.

Four Non-Obvious Lessons From the Data

1. Average Score Hides Brittleness — Always Monitor Minimums in Production

Every model in my test returned an average between 8.0 and 8.7. If I'd shipped based on average score, I'd have concluded all four models were roughly equivalent. But o4-mini's minimum of 1/10 means that some percentage of real-world user phrasings will trigger catastrophic failure. In a classification pipeline processing 50,000 tickets a month, even a 5% bad-phrasing hit rate is 2,500 miscategorised tickets.

The production-relevant question is never "what does this model do on average?" It's "what's the worst it can do, and how often will real users accidentally trigger that worst case?"

2. Ten Phrasings Is the Minimum for a Meaningful Std-Dev

When I ran the same eval with only 5 phrasings, o4-mini's std-dev came back at 1.8 — alarming but not obviously catastrophic. At 10 phrasings it jumped to 3.13, revealing the true fragility. With fewer than 10 samples, you don't have enough coverage of the phrasing space to catch the tail-risk scenarios — the very terse two-word prompts, the all-caps variants, the prompts that accidentally omit the output format spec.

Think of it like load testing: running 100 concurrent users tells you something, but the failure mode only shows up at 1,000. Phrasing coverage works the same way.

3. Terse vs. Verbose Prompts Affect Different Models Differently

This was my personal "aha" moment from the eval. Claude and GPT-4.1 both handled terse prompts (under 20 words) almost as well as verbose ones — std-dev barely moved. o4-mini, by contrast, showed its worst scores almost exclusively on terse phrasings. DeepSeek V3 Pro showed the opposite pattern: verbose prompts with long context preambles actually increased its variance, whereas short, direct instructions stabilised it.

The implication: model selection should partly depend on your users' natural prompting style. If you're building a developer tool where users will write terse, imperative instructions, o4-mini is a higher-risk choice than the average benchmarks suggest.

4. Few-Shot Examples Reduce Variance Across All Models

Adding just two to three few-shot examples to each phrasing variant reduced standard deviation across all four models — o4-mini's dropped from 3.13 to 1.74, Claude's from 1.31 to 0.89. This is the single highest-leverage intervention for prompt stability, and it's essentially free. The mechanism makes intuitive sense: examples constrain the model's interpretation space, leaving less room for phrasing ambiguity to cause divergent behaviour.

If you take one action from this post: add examples before you add instructions. The data consistently shows examples beat elaborate prompt engineering for stability.

Prompt Sensitivity Concepts: What the Eval Surfaces

Sensitivity Type What It Means Which Models Are Prone What To Do
High Std-Dev Score varies wildly across phrasings o4-mini, DeepSeek (moderate) Add few-shot examples; pin to a single canonical phrasing in code
Low Min Score At least one phrasing causes near-total failure o4-mini Identify failure-phrasing patterns; add input normalisation layer
Terse Sensitivity Short prompts degrade output quality o4-mini Enforce minimum prompt length or inject a structured format spec
Verbose Sensitivity Long prompts increase variance or hallucination DeepSeek V3 Pro Trim preamble; move context to structured fields (JSON system prompt)
Format Sensitivity Output format breaks when instruction order changes All models (mild) Always specify output format last, immediately before the task
Instruction-Conflict Contradictory constraints in different phrasings cause random behaviour All models Run a conflict-check pass; use structured system/user message separation

How ByteWaveNetwork's Tool Compares to Alternatives

To be fair: there are other ways to do this kind of eval. Here's an honest comparison based on what I've used in production work.

Tool Phrasing Generation Multi-Model Std-Dev Reporting Cost Setup Time
ByteWaveNetwork Prompt Sensitivity Eval Automated (10+ variants) Yes (4 models) Yes — avg, std-dev, min, max Free < 2 min
PromptFoo Manual or scripted Yes Partial (requires custom config) Free (self-hosted) / Paid SaaS 15–30 min
LangSmith (LangChain) Manual Yes No native std-dev view Freemium ($39+/mo for teams) 30–60 min
Weights & Biases Prompts Manual Yes No (aggregate metrics only) Freemium 30+ min

PromptFoo is excellent and I use it for deeper regression testing pipelines. But for a fast sensitivity sweep before shipping a prompt change, the ByteWaveNetwork tool wins on speed and zero-configuration overhead. LangSmith is powerful for tracing but doesn't natively surface the std-dev and minimum-score view that makes prompt brittleness visible at a glance.

Pre-Deployment Prompt Stability Checklist

Use this before you ship any prompt change to production.

  • Run at least 10 phrasing variants through the Prompt Sensitivity Eval tool — not 3, not 5.
  • Check std-dev first. If it's above 2.0, do not ship without remediation.
  • Check minimum score. A min below 5/10 on any single phrasing is a production risk regardless of average.
  • Add 2–3 few-shot examples if std-dev is elevated. Re-run eval to confirm variance reduction.
  • Test both terse and verbose phrasing extremes — these are the most common real-world failure modes.
  • Verify output format instruction is placed last, immediately before the task specification.
  • If using o4-mini, run a minimum of 15 phrasings — its tail risk requires wider coverage to surface.
  • Export results to CSV and store in your project repo alongside the prompt file for audit trail.
  • Set a recurring eval cadence (monthly minimum) — model updates can silently shift sensitivity profiles.
  • Document which phrasing style your users actually write and ensure that style is included in your test set.

What This Actually Costs You in Production

Let's make this concrete. In my client's incident: the misclassified tickets required human review at an average cost of $4.50 per ticket (agent time). With 2,500 miscategorised tickets per month, that's $11,250/month in hidden remediation cost — driven entirely by prompt brittleness on a model they'd chosen partly for its low per-token cost.

The irony: o4-mini's apparent cost advantage (~$0.55 per 800 eval runs vs. Claude's $2.10) evaporates completely the moment brittleness escapes into production. Sensitivity testing isn't a luxury for teams with time to spare — it's a cost-reduction activity with a calculable ROI.

Quick ROI calculation: If prompt sensitivity testing takes 10 minutes and prevents even one misclassification incident, the tool pays for itself many times over. At the API costs shown in the table above, a full 4-model sensitivity sweep costs under $5 in tokens. The incident it prevents could cost thousands.

Conclusion: Measure What Actually Breaks in Production

The AI evaluation ecosystem has spent years obsessing over average benchmark scores, and that obsession is actively misleading engineering teams. A model that averages 8.0/10 but occasionally scores 1/10 is not a model that "works 80% of the time" — it's a model with an unpredictable failure mode that will surface exactly when you least expect it.

The four findings I keep coming back to from this eval: std-dev is the production metric, minimums matter more than averages, few-shot examples are the fastest fix, and o4-mini demands more rigorous phrasing testing than its benchmarks suggest. None of those findings are visible from a single-phrasing eval. All of them become immediately obvious the moment you run 10 variants and look at the distribution.

Run the test before you ship. It takes under two minutes and the data is unambiguous.

Run Your Own Prompt Sensitivity Eval — Free

Paste your prompt, pick your models, and get std-dev, min score, and a full phrasing breakdown in under 90 seconds. No signup required.

Try the Prompt Sensitivity Eval Tool →

Disclosure: ByteWaveNetwork is the publisher of this post and the tool referenced throughout. The benchmark data reported here reflects actual test runs conducted by the author using the tool in June 2026. Some links on this site may be affiliate links; if you click through and make a purchase, ByteWaveNetwork may earn a small commission at no additional cost to you. The author has no financial relationship with Anthropic, OpenAI, DeepSeek, PromptFoo, LangChain, or Weights & Biases. Tool comparisons represent the author's independent assessment based on personal use.

SP

Sunny Pal Singh

Fellow · Technical Director — AI Infrastructure, Cloud Orchestration & Network Automation

Sunny is a Fellow and Technical Director specialising in AI infrastructure, cloud orchestration, and network automation. With hands-on depth across AWS, Azure, GCP, Red Hat OpenStack, and OpenShift, he leads high-performing teams of architects and engineers building transformative solutions at scale. He built ByteWaveNetwork to bring the same engineering rigour to everyday web tooling.

Choose design