Claude Haiku 5.5 · Coding
Claude Haiku 5.5 for coding: our test runs
Claude Haiku 5.5 ran our 5 coding prompts in llmwise, through the same pipeline your messages take. Here's every reply as it came, whether it passed, what it cost and what it counts as on Pro, next to the other models.
Based on 5 of our test runs on , through OpenRouter with the app's own prompt and settings. Updated .
Short answer
In our test runs on October 7, 2026, Claude Haiku 5.5 passed 5 of 5 of our coding prompts (both hard ones): tied 1st of 18 models. Each reply counted as 1 message on Pro, where it has 60 a day, and cost $0.0005 to run on average.
Prompt by prompt
Each of the 5 coding prompts, and how Claude Haiku 5.5's reply did.
| Prompt | Result | Cost | Time |
|---|---|---|---|
| Turn a title into a URL slugEveryday | Passed: All 7 tests passed. | $0.0001 | 1.5 s |
| Parse a duration like “1h 30m”Everyday | Passed: All 10 tests passed. | $0.0005 | 5.4 s |
| Merge overlapping intervalsEveryday | Passed: All 7 tests passed. | $0.0002 | 1.3 s |
| Evaluate an arithmetic expression, no evalHard | Passed: All 15 tests passed. | $0.0006 | 3.9 s |
| Parse CSV with quoted fieldsHard | Passed: All 8 tests passed. | $0.0008 | 8.1 s |
Every coding reply from Claude Haiku 5.5
Turn a title into a URL slug
An everyday prompt: “Turn a title into a URL slug”, in full.
Passed: All 7 tests passed.
```javascript function slugify(title) { return String(title) .normalize("NFD") .replace(/[\u0300-\u036f]/g, "") .toLowerCase() .replace(/[^a-z0-9]+/g, "-") .replace(/^-+|-+$/g, ""); } ```672 tokens in, 112 out · 1.5 s · $0.0001 · 1 message on Pro · answered by anthropic/claude-haiku-5.5 via Anthropic ·
Parse a duration like “1h 30m”
An everyday prompt: “Parse a duration like “1h 30m””, in full.
Passed: All 10 tests passed.
```javascript function parseDuration(text) { if (typeof text !== 'string') return null; const m = /^\s*(?:(\d+)h)?\s*(?:(\d+)m)?\s*(?:(\d+)s)?\s*$/.exec(text); if (!m || m.slice(1).every(v => v === undefined)) return null; const [, h = 0, mi = 0, s = 0] = m; return Number(h) * 3600 + Number(mi) * 60 + Number(s); } ```627 tokens in, 868 out (688 of them reasoning) · 5.4 s · $0.0005 · 1 message on Pro · answered by anthropic/claude-haiku-5.5 via Anthropic ·
Merge overlapping intervals
An everyday prompt: “Merge overlapping intervals”, in full.
Passed: All 7 tests passed.
```javascript function mergeIntervals(intervals) { const sorted = intervals .map(([start, end]) => [start, end]) .sort((a, b) => a[0] - b[0] || a[1] - b[1]); const merged = []; for (const [start, end] of sorted) { const last = merged[merged.length - 1]; if (last && start <= last[1]) { last[1] = Math.max(last[1], end); } else { merged.push([start, end]); } } return merged; } ```622 tokens in, 185 out · 1.3 s · $0.0002 · 1 message on Pro · answered by anthropic/claude-haiku-5.5 via Anthropic ·
Evaluate an arithmetic expression, no eval
A hard prompt: “Evaluate an arithmetic expression, no eval”, in full.
Passed: All 15 tests passed.
```javascript function evaluate(expression) { const s = String(expression); const tokens = []; let i = 0; while (i < s.length) { const c = s[i]; if (c === ' ' || c === '\t' || c === '\n' || c === '\r') { i++; continue; } if ((c >= '0' && c <= '9') || c === '.') { let j = i; while (j < s.length && ((s[j] >= '0' && s[j] <= '9') || s[j] === '.')) j++; const text = s.slice(i, j); if (!/^(\d+\.?\d*|\.\d+)$/.test(text)) throw new Error(`Invalid number "${text}"`); tokens.push({ type: 'num', value: Number(text) }); i = j; continue; } if ('+-*/^()'.includes(c)) { tokens.push({ type: c }); i++; continue; } throw new Error(`Unexpected character "${c}"`); } let pos = 0; const peek = () => tokens[pos] ? tokens[pos].type : null; const next = () => tokens[pos++]; // expr := term (('+'|'-') term)* function parseExpr() { let value = parseTerm(); while (peek() === '+' || peek() === '-') { const op = next().type; const rhs = parseTerm(); value = op === '+' ? value + rhs : value - rhs; } return value; } // term := unary (('*'|'/') unary)* function parseTerm() { let value = parseUnary(); while (peek() === '*' || peek() === '/') { const op = next().type; const rhs = parseUnary(); value = op === '*' ? value * rhs : value / rhs; } return value; } // unary := '-' unary | power function parseUnary() { if (peek() === '-') { next(); return -parseUnary(); } return parsePower(); } // power := primary ('^' unary)? (right-associative; exponent may be signed) function parsePower() { const base = parsePrimary(); if (peek() === '^') { next(); const exp = parseUnary(); return Math.pow(base, exp); } return base; } // primary := number | '(' expr ')' function parsePrimary() { const t = tokens[pos]; if (!t) throw new Error('Unexpected end of expression'); if (t.type === 'num') { pos++; return t.value; } if (t.type === '(') { pos++; const value = parseExpr(); if (peek() !== ')') throw new Error('Expected ")"'); pos++; return value; } throw new Error(`Unexpected token "${t.type}"`); } if (tokens.length === 0) throw new Error('Empty expression'); const result = parseExpr(); if (pos !== tokens.length) throw new Error(`Unexpected token "${tokens[pos].type}"`); return result; } ```763 tokens in, 1,074 out · 3.9 s · $0.0006 · 1 message on Pro · answered by anthropic/claude-haiku-5.5 via Anthropic ·
Parse CSV with quoted fields
A hard prompt: “Parse CSV with quoted fields”, in full.
Passed: All 8 tests passed.
```javascript function parseCsv(text) { const rows = []; if (text === '') return rows; let row = []; let field = ''; let inQuotes = false; let fieldStart = true; // true only at the very beginning of a field let i = 0; const n = text.length; while (i < n) { const c = text[i]; if (inQuotes) { if (c === '"') { if (text[i + 1] === '"') { field += '"'; i += 2; } else { inQuotes = false; i++; } } else { field += c; i++; } continue; } if (c === '"' && fieldStart) { inQuotes = true; fieldStart = false; i++; continue; } if (c === ',') { row.push(field); field = ''; fieldStart = true; i++; continue; } if (c === '\n' || c === '\r') { row.push(field); rows.push(row); row = []; field = ''; fieldStart = true; if (c === '\r' && text[i + 1] === '\n') i += 2; else i++; continue; } field += c; fieldStart = false; i++; } // Flush the last row unless the text ended with a line break if (row.length > 0 || field !== '' || !fieldStart) { row.push(field); rows.push(row); } return rows; } ```670 tokens in, 1,464 out (948 of them reasoning) · 8.1 s · $0.0008 · 1 message on Pro · answered by anthropic/claude-haiku-5.5 via Anthropic ·
How it compares on coding
Claude Haiku 5.5 beside the job's picks among every model. 17 models share the hard-problems pick, Claude Haiku 5.5 among them.
| Model | Passed | On Pro | Cost per reply |
|---|---|---|---|
| GLM 5.3Our pick: hard problems (shared), best value | 5 of 5 | 250 a month on Pro | $0.0015 |
| GLM 5.3 FlashOur pick: hard problems (shared), everyday | 5 of 5 | 60 a day on Pro | $0.0003 |
| Claude Haiku 5.5Our pick: hard problems (shared) | 5 of 5 | 60 a day on Pro | $0.0005 |
Every limit is published. Paid plans also have a monthly fair-use limit on AI cost: Pro $7.50, Max $20, Ultra $42, Studio $85. Using every message on your plan at typical sizes stays under it; very large messages and heavy research use it faster. Every limit, explained.
Claude Haiku 5.5 next to each model on coding
Claude Haiku 5.5 against each model on the same 5 coding prompts. One run each, through OpenRouter: a wait depends on the provider and the load that day, so a lead under 10% counts as close.
Against Claude Fable 5.1: Claude Haiku 5.5 answered 1.4× sooner (3.9 s to 5.5 s), cost 93.9× less, and passed 5 of 5 to its 5.
Against Claude Opus 5.5: Claude Haiku 5.5 answered 1.8× sooner (3.9 s to 7.2 s), cost 37.7× less, and passed 5 of 5 to its 5.
Against Claude Sonnet 5.5: Claude Haiku 5.5 answered 2.0× later (3.9 s to 2.0 s), cost 13.8× less, and passed 5 of 5 to its 5.
Against Claude Sonnet 5: Claude Haiku 5.5 answered 1.5× later (3.9 s to 2.7 s), cost 22.4× less, and passed 5 of 5 to its 5.
Against Claude Haiku 4.5: Claude Haiku 5.5 answered 1.7× later (3.9 s to 2.3 s), cost 6.1× less, and passed 5 of 5 to its 3. Only Claude Haiku 5.5 passed Evaluate an arithmetic expression, no eval; Parse CSV with quoted fields.
Against GPT-6 Astra: Claude Haiku 5.5 answered 2.1× sooner (3.9 s to 8.2 s), cost 49.3× less, and passed 5 of 5 to its 5.
Against GPT-6.1 Sol: Claude Haiku 5.5 answered 1.2× sooner (3.9 s to 4.8 s), cost 5.1× less, and passed 5 of 5 to its 5.
Against GPT-6 Sol: Claude Haiku 5.5 answered 1.2× sooner (3.9 s to 4.8 s), cost 11.6× less, and passed 5 of 5 to its 5.
Against GPT-6 Luna: Claude Haiku 5.5 answered 1.2× sooner (3.9 s to 4.6 s), cost 1.6× more, and passed 5 of 5 to its 5.
Against Gemini 3.1 Pro (preview): Claude Haiku 5.5 answered 2.6× sooner (3.9 s to 10.3 s), cost 43.0× less, and passed 5 of 5 to its 5.
Against Gemini 3.8 Flash: Claude Haiku 5.5 answered within 10% of its time (3.9 s to 4.2 s), cost 4.3× less, and passed 5 of 5 to its 5.
Against DeepSeek V4.1 Flash: Claude Haiku 5.5 answered 1.6× later (3.9 s to 2.5 s), cost 4.1× less, and passed 5 of 5 to its 5.
Against DeepSeek V4 Pro: Claude Haiku 5.5 answered 30.3× sooner (3.9 s to 119.6 s), cost 53.0× less, and passed 5 of 5 to its 5.
Against Grok 4.7: Claude Haiku 5.5 answered 8.0× sooner (3.9 s to 31.6 s), cost 54.3× less, and passed 5 of 5 to its 5.
Against Kimi K3: Claude Haiku 5.5 answered within 10% of its time (3.9 s to 4.1 s), cost 14.0× less, and passed 5 of 5 to its 5.
Against GLM 5.3: Claude Haiku 5.5 answered 3.7× later (3.9 s to 1.1 s), cost 3.2× less, and passed 5 of 5 to its 5.
Against GLM 5.3 Flash: Claude Haiku 5.5 answered 2.1× sooner (3.9 s to 8.4 s), cost 1.8× more, and passed 5 of 5 to its 5.
How these runs were done
Tests. Automatic. The function runs against the prompt's tests in a separate Node.js process with a time limit and no file, network or child-process access; it passes when every test passes.
Claude Haiku 5.5, and coding, elsewhere
- Claude Haiku 5.5: price, limits and messages on every plan
- The best AI for coding: our picks among every model
- Claude for coding
- Claude Haiku 5.5 for writing: our test runs
- Claude Haiku 5.5 for math: our test runs
- Claude Haiku 5.5 for data analysis: our test runs
- Claude Haiku 5.5 vs GPT-6 Luna
- Claude Haiku 5.5 vs Claude Haiku 4.5
- Claude Sonnet 5.5 vs Claude Haiku 5.5
- Claude Haiku 5.5 vs GLM 5.3 Flash
- Claude Haiku 5.5 vs DeepSeek V4.1 Flash
- Analyze a CSV with code: the prompt, and its price
- AI prompts for coding, checked by running the code
- Our test runs: 50 prompts on every model
Questions
Is Claude Haiku 5.5 good for coding?
In our test runs it passed 5 of 5 coding prompts, tied 1st of the 18 models in llmwise. Every reply is on this page, so you can judge them yourself.
How many of my messages does a coding reply from Claude Haiku 5.5 use?
1 message each on Pro, where it has 60 a day on Pro. The price of a message is fixed and shown before you send it, however long the reply.
How were these runs done?
The same way for every model: each prompt sent through llmwise's own pipeline, each reply checked the same way. The methods page has every prompt and how each is scored.
Claude, GPT, Gemini, DeepSeek, Grok, Kimi, and GLM, in one chat.
See what a message costs before you send it. Free is 5 messages to try; sign in with an email link, no password or card.