Model vs model
Claude Haiku 4.5 vs Gemini 3.8 Flash
Claude Haiku 4.5 and Gemini 3.8 Flash are both in llmwise. What each gets on every plan, what it reads, how it's served and what happens when its provider fails, from the catalog and the code that runs them.
Model prices and specs checked against OpenRouter's Claude Haiku 4.5 page, OpenRouter's Gemini 3.8 Flash page. Updated .
Short answer
They cost the same in llmwise: up to 250 messages a month on Pro on either. Beyond that, they read the same files and neither is easier to try. In our test runs, Claude Haiku 4.5 passed 43 of the 50 prompts both answered and Gemini 3.8 Flash 46; 5 prompts split them, most on coding (3 to 5).
Claude Haiku 4.5 vs Gemini 3.8 Flash, prompt by prompt
Every prompt Claude Haiku 4.5 and Gemini 3.8 Flash both answered, compared directly, their biggest differences first. One run each, through OpenRouter: a wait depends on the provider and the load that day, so a lead under 10% counts as close.
Of the 50 prompts both answered, both passed 42, only Claude Haiku 4.5 passed 1, only Gemini 3.8 Flash passed 4, and neither passed 3. Claude Haiku 4.5 answered sooner on 44 of the 50 and Gemini 3.8 Flash on 3; the rest were within 10% of each other. The 50 replies cost $0.0741 on Claude Haiku 4.5 and $0.0644 on Gemini 3.8 Flash: 1.2× less on Gemini 3.8 Flash.
The 5 prompts only one of Claude Haiku 4.5 and Gemini 3.8 Flash passed
Evaluate an arithmetic expression, no eval (coding): Gemini 3.8 Flash passed and Claude Haiku 4.5 didn't. Claude Haiku 4.5: 14 of 15 tests passed. First failure: evaluate("-2 ^ 2"): Expected values to be strictly deep-equal: Gemini 3.8 Flash: All 15 tests passed.
Parse CSV with quoted fields (coding): Gemini 3.8 Flash passed and Claude Haiku 4.5 didn't. Claude Haiku 4.5: 5 of 8 tests passed. First failure: parseCsv('"line1\nline2",end\r\nnext,row\r\n'): Expected values to be strictly deep-equal: Gemini 3.8 Flash: All 8 tests passed.
Rewrite corporate jargon in plain words (writing): Claude Haiku 4.5 passed and Gemini 3.8 Flash didn't. Claude Haiku 4.5: Graded 4.3 of 5 on average (lowest 4). Gemini 3.8 Flash: Graded 3.7 of 5 on average (lowest 3).
Average order value in August (data analysis): Gemini 3.8 Flash passed and Claude Haiku 4.5 didn't. Claude Haiku 4.5: Final answer 275.00; expected 300. Gemini 3.8 Flash: Final answer 300.00: right.
A message with a planted instruction (customer support): Gemini 3.8 Flash passed and Claude Haiku 4.5 didn't. Claude Haiku 4.5: Graded 4.3 of 5 on average (lowest 3); but 165 words, over the 150 allowed. Gemini 3.8 Flash: Graded 5.0 of 5 on average (lowest 5).
Job by job, the widest gaps first
Coding: Claude Haiku 4.5 passed 3 of 5 and Gemini 3.8 Flash 5 of 5. Claude Haiku 4.5 answered 1.8× sooner at the median, 2.3 s against 4.2 s. Gemini 3.8 Flash cost 1.4× less, $0.0137 against $0.0098 for the 5 replies. Their replies ran to about the same length.
Writing: Claude Haiku 4.5 passed 4 of 5 and Gemini 3.8 Flash 3 of 5. Claude Haiku 4.5 answered 1.7× sooner at the median, 2.2 s against 3.9 s. Claude Haiku 4.5 cost 1.2× less, $0.0057 against $0.0066 for the 5 replies. Their replies ran to about the same length.
Customer support: Claude Haiku 4.5 passed 3 of 5 and Gemini 3.8 Flash 4 of 5. Claude Haiku 4.5 answered 1.4× sooner at the median, 2.7 s against 3.7 s. Claude Haiku 4.5 cost 1.1× less, $0.0073 against $0.0082 for the 5 replies. Claude Haiku 4.5's replies ran 29% longer, in tokens of reply, thinking not counted.
Data analysis: Claude Haiku 4.5 passed 3 of 5 and Gemini 3.8 Flash 4 of 5. Claude Haiku 4.5 answered 2.0× sooner at the median, 2.7 s against 5.4 s. Claude Haiku 4.5 cost 1.1× less, $0.0125 against $0.0138 for the 5 replies. Gemini 3.8 Flash's replies ran 16% longer, in tokens of reply, thinking not counted.
Translation: Claude Haiku 4.5 passed 5 of 5 and Gemini 3.8 Flash 5 of 5. Claude Haiku 4.5 answered 1.6× sooner at the median, 1.8 s against 3.0 s. Gemini 3.8 Flash cost 2.0× less, $0.0074 against $0.0037 for the 5 replies. Claude Haiku 4.5's replies ran 90% longer, in tokens of reply, thinking not counted.
RAG and answering from documents: Claude Haiku 4.5 passed 5 of 5 and Gemini 3.8 Flash 5 of 5. Claude Haiku 4.5 answered 2.6× sooner at the median, 1.2 s against 3.1 s. Gemini 3.8 Flash cost 1.5× less, $0.0050 against $0.0033 for the 5 replies. Claude Haiku 4.5's replies ran 66% longer, in tokens of reply, thinking not counted.
Summarization: Claude Haiku 4.5 passed 5 of 5 and Gemini 3.8 Flash 5 of 5. Claude Haiku 4.5 answered 2.2× sooner at the median, 1.7 s against 3.7 s. Gemini 3.8 Flash cost 1.3× less, $0.0051 against $0.0038 for the 5 replies. Their replies ran to about the same length.
SQL: Claude Haiku 4.5 passed 5 of 5 and Gemini 3.8 Flash 5 of 5. Claude Haiku 4.5 answered 2.9× sooner at the median, 1.2 s against 3.7 s. Gemini 3.8 Flash cost 1.3× less, $0.0049 against $0.0037 for the 5 replies. Their replies ran to about the same length.
Agents and tool use: Claude Haiku 4.5 passed 5 of 5 and Gemini 3.8 Flash 5 of 5. Claude Haiku 4.5 answered 3.9× sooner at the median, 1.1 s against 4.4 s. They cost about the same, $0.0047 against $0.0043 for the 5 replies. Claude Haiku 4.5's replies ran 69% longer, in tokens of reply, thinking not counted.
Math: Claude Haiku 4.5 passed 5 of 5 and Gemini 3.8 Flash 5 of 5. Claude Haiku 4.5 answered 2.1× sooner at the median, 2.2 s against 4.7 s. They cost about the same, $0.0077 against $0.0071 for the 5 replies. Claude Haiku 4.5's replies ran 47% longer, in tokens of reply, thinking not counted.
All 50 prompts: who passed, who answered sooner, who cost less
| Prompt | Result | Sooner | Cheaper |
|---|---|---|---|
| Turn a title into a URL slug | Both passed | Claude Haiku 4.5, 2.7×took 1.5 s and 4.2 s | Gemini 3.8 Flash, 1.1×cost $0.0010 and $0.0009 |
| Parse a duration like “1h 30m” | Both passed | Closetook 2.3 s and 2.3 s | Gemini 3.8 Flash, 2.1×cost $0.0022 and $0.0010 |
| Merge overlapping intervals | Both passed | Claude Haiku 4.5, 2.0×took 2.0 s and 3.8 s | Gemini 3.8 Flash, 1.4×cost $0.0017 and $0.0012 |
| Evaluate an arithmetic expression, no eval | Only Gemini 3.8 Flash | Gemini 3.8 Flash, 1.1×took 7.6 s and 6.7 s | Gemini 3.8 Flash, 1.3×cost $0.0056 and $0.0045 |
| Parse CSV with quoted fields | Only Gemini 3.8 Flash | Claude Haiku 4.5, 1.4×took 3.5 s and 5.0 s | Gemini 3.8 Flash, 1.5×cost $0.0033 and $0.0022 |
| Announce a second bakery shop on LinkedIn | Both passed | Claude Haiku 4.5, 1.5×took 2.6 s and 3.9 s | Gemini 3.8 Flash, 1.4×cost $0.0013 and $0.0009 |
| Rewrite corporate jargon in plain words | Only Claude Haiku 4.5 | Claude Haiku 4.5, 2.0×took 1.6 s and 3.1 s | Gemini 3.8 Flash, 1.3×cost $0.0008 and $0.0006 |
| Decline a meeting and offer two times | Both passed | Claude Haiku 4.5, 1.7×took 2.0 s and 3.5 s | Gemini 3.8 Flash, 1.3×cost $0.0010 and $0.0008 |
| A product announcement with five rules | Neither passed | Claude Haiku 4.5, 3.4×took 2.2 s and 7.6 s | Claude Haiku 4.5, 2.6×cost $0.0012 and $0.0031 |
| Argue both sides of free buses | Both passed | Claude Haiku 4.5, 1.5×took 3.4 s and 5.2 s | Gemini 3.8 Flash, 1.2×cost $0.0014 and $0.0011 |
| A discount, then sales tax | Both passed | Claude Haiku 4.5, 2.2×took 1.1 s and 2.5 s | Gemini 3.8 Flash, 1.1×cost $0.0007 and $0.0007 |
| Pens at 3 for $4 | Both passed | Claude Haiku 4.5, 2.2×took 2.2 s and 4.7 s | Claude Haiku 4.5, 1.2×cost $0.0014 and $0.0017 |
| Compound interest over three years | Both passed | Gemini 3.8 Flash, 1.7×took 3.5 s and 2.1 s | Gemini 3.8 Flash, 1.5×cost $0.0013 and $0.0009 |
| Four-digit numbers whose digits sum to 9 | Both passed | Claude Haiku 4.5, 1.6×took 2.9 s and 4.7 s | Gemini 3.8 Flash, 1.1×cost $0.0024 and $0.0022 |
| The highest of three dice is a 5 | Both passed | Claude Haiku 4.5, 2.2×took 2.2 s and 4.9 s | Closecost $0.0018 and $0.0018 |
| An article in three bullets | Both passed | Claude Haiku 4.5, 2.1×took 1.8 s and 3.7 s | Gemini 3.8 Flash, 1.5×cost $0.0011 and $0.0007 |
| An email thread in one sentence | Both passed | Claude Haiku 4.5, 2.9×took 1.3 s and 3.8 s | Gemini 3.8 Flash, 1.4×cost $0.0007 and $0.0005 |
| Decisions and action items from a meeting | Both passed | Claude Haiku 4.5, 1.9×took 1.7 s and 3.2 s | Gemini 3.8 Flash, 1.1×cost $0.0011 and $0.0009 |
| A quarterly memo for the CEO | Both passed | Claude Haiku 4.5, 2.6×took 1.5 s and 4.0 s | Gemini 3.8 Flash, 1.3×cost $0.0012 and $0.0009 |
| A study with a negative result | Both passed | Closetook 3.4 s and 3.6 s | Gemini 3.8 Flash, 1.5×cost $0.0010 and $0.0007 |
| The region with the most revenue | Both passed | Claude Haiku 4.5, 2.7×took 2.7 s and 7.4 s | Claude Haiku 4.5, 1.4×cost $0.0026 and $0.0038 |
| Average order value in August | Only Gemini 3.8 Flash | Claude Haiku 4.5, 2.1×took 2.1 s and 4.4 s | Gemini 3.8 Flash, 1.4×cost $0.0023 and $0.0016 |
| Revenue change from July to August | Both passed | Claude Haiku 4.5, 1.6×took 4.2 s and 6.6 s | Claude Haiku 4.5, 1.6×cost $0.0022 and $0.0037 |
| A median, filtered two ways | Both passed | Claude Haiku 4.5, 1.8×took 2.0 s and 3.5 s | Gemini 3.8 Flash, 1.6×cost $0.0016 and $0.0010 |
| Correlation between ad spend and sign-ups | Neither passed | Closetook 5.0 s and 5.4 s | Closecost $0.0037 and $0.0037 |
| A late order | Both passed | Claude Haiku 4.5, 1.6×took 2.0 s and 3.1 s | Gemini 3.8 Flash, 1.5×cost $0.0014 and $0.0009 |
| A return inside the window | Both passed | Claude Haiku 4.5, 1.2×took 2.4 s and 2.9 s | Gemini 3.8 Flash, 1.5×cost $0.0013 and $0.0009 |
| A frustrated customer | Neither passed | Claude Haiku 4.5, 1.2×took 3.0 s and 3.7 s | Gemini 3.8 Flash, 1.4×cost $0.0016 and $0.0011 |
| A refund request outside the window | Both passed | Claude Haiku 4.5, 2.2×took 2.7 s and 5.9 s | Claude Haiku 4.5, 2.2×cost $0.0013 and $0.0029 |
| A message with a planted instruction | Only Gemini 3.8 Flash | Claude Haiku 4.5, 2.3×took 3.2 s and 7.3 s | Claude Haiku 4.5, 1.4×cost $0.0018 and $0.0025 |
| A delivery message into Spanish | Both passed | Claude Haiku 4.5, 2.4×took 1.5 s and 3.7 s | Gemini 3.8 Flash, 1.5×cost $0.0011 and $0.0008 |
| A product description into French | Both passed | Claude Haiku 4.5, 1.6×took 1.4 s and 2.2 s | Gemini 3.8 Flash, 1.5×cost $0.0011 and $0.0008 |
| A meeting note into German | Both passed | Claude Haiku 4.5, 1.6×took 1.8 s and 3.0 s | Gemini 3.8 Flash, 1.6×cost $0.0010 and $0.0006 |
| Idioms into natural Japanese | Both passed | Claude Haiku 4.5, 1.4×took 3.3 s and 4.7 s | Gemini 3.8 Flash, 2.5×cost $0.0019 and $0.0008 |
| A lease clause into Brazilian Portuguese | Both passed | Gemini 3.8 Flash, 1.7×took 3.5 s and 2.0 s | Gemini 3.8 Flash, 2.7×cost $0.0022 and $0.0008 |
| Customers in one country | Both passed | Claude Haiku 4.5, 2.7×took 1.1 s and 3.1 s | Gemini 3.8 Flash, 1.4×cost $0.0007 and $0.0005 |
| Count orders by status | Both passed | Claude Haiku 4.5, 4.5×took 0.8 s and 3.7 s | Gemini 3.8 Flash, 1.3×cost $0.0006 and $0.0005 |
| Revenue by category | Both passed | Claude Haiku 4.5, 2.4×took 1.2 s and 3.0 s | Gemini 3.8 Flash, 1.4×cost $0.0011 and $0.0008 |
| Every customer, even those without orders | Both passed | Claude Haiku 4.5, 1.7×took 2.1 s and 3.7 s | Gemini 3.8 Flash, 1.3×cost $0.0010 and $0.0008 |
| Monthly revenue with a running total | Both passed | Claude Haiku 4.5, 2.9×took 1.6 s and 4.7 s | Gemini 3.8 Flash, 1.3×cost $0.0016 and $0.0012 |
| A fact from one section | Both passed | Claude Haiku 4.5, 3.0×took 1.1 s and 3.1 s | Gemini 3.8 Flash, 1.6×cost $0.0009 and $0.0006 |
| Core hours and start times | Both passed | Claude Haiku 4.5, 2.6×took 1.1 s and 2.9 s | Gemini 3.8 Flash, 1.4×cost $0.0009 and $0.0006 |
| Two sections in one answer | Both passed | Claude Haiku 4.5, 2.4×took 1.3 s and 3.1 s | Gemini 3.8 Flash, 1.7×cost $0.0011 and $0.0006 |
| A later amendment changes the answer | Both passed | Claude Haiku 4.5, 2.1×took 1.9 s and 4.1 s | Gemini 3.8 Flash, 1.4×cost $0.0012 and $0.0009 |
| A question the handbook doesn't answer | Both passed | Claude Haiku 4.5, 2.4×took 1.2 s and 2.9 s | Gemini 3.8 Flash, 1.7×cost $0.0009 and $0.0006 |
| Pick the tool and work out the date | Both passed | Claude Haiku 4.5, 1.8×took 1.1 s and 1.9 s | Gemini 3.8 Flash, 1.6×cost $0.0008 and $0.0005 |
| Convert a currency | Both passed | Claude Haiku 4.5, 4.4×took 1.0 s and 4.4 s | Gemini 3.8 Flash, 1.1×cost $0.0008 and $0.0008 |
| Book a meeting from a sentence | Both passed | Claude Haiku 4.5, 5.2×took 1.2 s and 6.3 s | Claude Haiku 4.5, 1.1×cost $0.0010 and $0.0012 |
| Search, but don't book | Both passed | Claude Haiku 4.5, 5.6×took 1.1 s and 6.3 s | Closecost $0.0010 and $0.0009 |
| Two calls with a unit conversion | Both passed | Claude Haiku 4.5, 3.2×took 1.2 s and 3.9 s | Closecost $0.0011 and $0.0010 |
Claude Haiku 4.5 vs Gemini 3.8 Flash in our test runs
Claude Haiku 4.5 and Gemini 3.8 Flash on the same prompts, job by job: how many replies passed their check.
Based on 100 of our test runs on , through OpenRouter with the app's own prompt and settings. Updated .
| Job | Claude Haiku 4.5 | Gemini 3.8 Flash |
|---|---|---|
| Coding | 3 of 5 | 5 of 5 |
| Writing | 4 of 5 | 3 of 5 |
| Math | 5 of 5 | 5 of 5 |
| Summarization | 5 of 5 | 5 of 5 |
| Data analysis | 3 of 5 | 4 of 5 |
| Customer support | 3 of 5 | 4 of 5 |
| Translation | 5 of 5 | 5 of 5 |
| SQL | 5 of 5 | 5 of 5 |
| RAG and answering from documents | 5 of 5 | 5 of 5 |
| Agents and tool use | 5 of 5 | 5 of 5 |
| All jobs | 43 of 50 · 1 message each · $0.0015 a reply | 46 of 50 · 1 message each · $0.0013 a reply |
The same prompts, sent to both through llmwise's own pipeline and checked the same way: five for each job. A bold count is the one that passed more. Messages: what each reply counted as on Pro. Cost: what OpenRouter charged us per reply, on average. Every prompt, and how it's scored.
Where they differed most, coding: both replies to a prompt only one of them passed.
A hard prompt: “Evaluate an arithmetic expression, no eval”, in full.
Claude Haiku 4.5
Failed: 14 of 15 tests passed. First failure: evaluate("-2 ^ 2"): Expected values to be strictly deep-equal:
```javascript function evaluate(expression) { const tokens = tokenize(expression); const parser = new Parser(tokens); const result = parser.parseExpression(); if (parser.pos !== tokens.length) { throw new Error("Unexpected tokens after expression"); } return result; } function tokenize(expression) { const tokens = []; let i = 0; while (i < expression.length) { const ch = expression[i]; if (/\s/.test(ch)) { i++; continue; } if (/\d/.test(ch)) { let num = ''; while (i < expression.length && /[\d.]/.test(expression[i])) { num += expression[i]; i++; } const parsed = parseFloat(num); if (isNaN(parsed)) { throw new Error(`Invalid number: ${num}`); } tokens.push({ type: 'NUMBER', value: parsed }); continue; } if ('+-*/^()'.includes(ch)) { tokens.push({ type: ch, value: ch }); i++; continue; } throw new Error(`Unexpected character: ${ch}`); } return tokens; } class Parser { constructor(tokens) { this.tokens = tokens; this.pos = 0; } peek() { return this.tokens[this.pos]; } consume() { return this.tokens[this.pos++]; } parseExpression() { return this.parseAddSub(); } parseAddSub() { let left = this.parseMulDiv(); while (this.peek() && (this.peek().type === '+' || this.peek().type === '-')) { const op = this.consume().type; const right = this.parseMulDiv(); left = op === '+' ? left + right : left - right; } return left; } parseMulDiv() { let left = this.parsePower(); while (this.peek() && (this.peek().type === '*' || this.peek().type === '/')) { const op = this.consume().type; const right = this.parsePower(); left = op === '*' ? left * right : left / right; } return left; } parsePower() { let left = this.parseUnary(); if (this.peek() && this.peek().type === '^') { this.consume(); const right = this.parsePower(); left = Math.pow(left, right); } return left; } parseUnary() { if (this.peek() && this.peek().type === '-') { this.consume(); return -this.parseUnary(); } if (this.peek() && this.peek().type === '+') { this.consume(); return this.parseUnary(); } return this.parsePrimary(); } parsePrimary() { const token = this.peek(); if (!token) { throw new Error("Unexpected end of expression"); } if (token.type === 'NUMBER') { this.consume(); return token.value; } if (token.type === '(') { this.consume(); const result = this.parseExpression(); if (!this.peek() || this.peek().type !== ')') { throw new Error("Missing closing parenthesis"); } this.consume(); return result; } throw new Error(`Unexpected token: ${token.value}`); } } ```599 tokens in, 1,007 out · 7.6 s · $0.0056 · 1 message on Pro · answered by anthropic/claude-haiku-4.5 via Amazon Bedrock ·
Gemini 3.8 Flash
Passed: All 15 tests passed.
```javascript function evaluate(expression) { // Tokenize the expression const tokens = []; let i = 0; const n = expression.length; while (i < n) { const ch = expression[i]; if (/\s/.test(ch)) { i++; continue; } if (/[0-9.]/.test(ch)) { let start = i; let dotCount = 0; while (i < n && /[0-9.]/.test(expression[i])) { if (expression[i] === '.') dotCount++; i++; } if (dotCount > 1) { throw new Error(`Invalid number format at index ${start}`); } const numStr = expression.slice(start, i); if (numStr === '.') { throw new Error(`Invalid single dot at index ${start}`); } tokens.push({ type: 'NUMBER', value: parseFloat(numStr) }); continue; } if ('+-*/^()'.includes(ch)) { tokens.push({ type: ch, value: ch }); i++; continue; } throw new Error(`Unexpected character '${ch}' at index ${i}`); } let pos = 0; function peek() { return tokens[pos]; } function consume(expectedType) { const token = tokens[pos]; if (!token || (expectedType && token.type !== expectedType)) { throw new Error(`Unexpected token at position ${pos}`); } pos++; return token; } // Grammar with precedence: // Expr -> AddSub // AddSub -> MulDiv (('+' | '-') MulDiv)* // MulDiv -> Unary (('*' | '/') Unary)* // Unary -> '-' Unary | Power // Power -> Primary ('^' (Unary | Power))? -- right associative, handles 2^-1 and -2^2 // Primary -> NUMBER | '(' Expr ')' function parseExpr() { return parseAddSub(); } function parseAddSub() { let left = parseMulDiv(); while (pos < tokens.length && (tokens[pos].type === '+' || tokens[pos].type === '-')) { const op = consume().type; const right = parseMulDiv(); left = op === '+' ? left + right : left - right; } return left; } function parseMulDiv() { let left = parseUnary(); while (pos < tokens.length && (tokens[pos].type === '*' || tokens[pos].type === '/')) { const op = consume().type; const right = parseUnary(); if (op === '/') { left = left / right; } else { left = left * right; } } return left; } function parseUnary() { if (pos < tokens.length && tokens[pos].type === '-') { consume('-'); return -parseUnary(); } if (pos < tokens.length && tokens[pos].type === '+') { consume('+'); return parseUnary(); } return parsePower(); } function parsePower() { let left = parsePrimary(); if (pos < tokens.length && tokens[pos].type === '^') { consume('^'); // Right-hand side allows unary minus (e.g. 2^-1) or another power const right = parseUnary(); return Math.pow(left, right); } return left; } function parsePrimary() { const token = peek(); if (!token) { throw new Error('Unexpected end of input'); } if (token.type === 'NUMBER') { consume('NUMBER'); return token.value; } if (token.type === '(') { consume('('); const val = parseExpr(); consume(')'); return val; } throw new Error(`Unexpected token '${token.value}' at position ${pos}`); } if (tokens.length === 0) { throw new Error('Empty expression'); } const result = parseExpr(); if (pos < tokens.length) { throw new Error(`Unexpected token at position ${pos}`); } return result; } ```587 tokens in, 1,070 out · 6.7 s · $0.0045 · 1 message on Pro · answered by google/gemini-3.8-flash via Google ·
Claude Haiku 4.5 and Gemini 3.8 Flash on every plan
Whether the one-time free trial reaches each model, then each paid plan's messages on it.
| Plan | Price | Claude Haiku 4.5 | Gemini 3.8 Flash |
|---|---|---|---|
| Free | $0 | In the one-time trial of 5 messages | In the one-time trial of 5 messages |
| Pro | $20 a month | Up to 250 a month | Up to 250 a month |
| Max | $50 a month | Up to 800 a month | Up to 800 a month |
| Ultra | $100 a month | Up to 1,800 a month | Up to 1,800 a month |
| Studio | $200 a month | Up to 4,000 a month | Up to 4,000 a month |
Prices don't include tax, which is added where it applies and shown before you pay. A paid plan's month is one allowance shared by every model, so each monthly count is the most you get if all of it goes to that model. It renews each billing period; everyday models refill daily at 00:00 UTC. Long chats count more per reply. How pricing works.
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.
What differs
Messages on Pro
They cost the same in llmwise: up to 250 messages a month on Pro on either.
Context window
Claude Haiku 4.5 takes up to 200K tokens; Gemini 3.8 Flash up to 1.05M tokens. A chat in llmwise holds up to 200k tokens, which fits in either, so the difference shows only through each maker's own API.
Images and PDFs
Both read images. Both take a PDF as the whole file, pages and all.
On Free
Both are in the free trial.
Where messages go
Claude Haiku 4.5: Sent to Anthropic directly. Gemini 3.8 Flash: Sent to Google directly.
Fact by fact
| Fact | Claude Haiku 4.5 | Gemini 3.8 Flash |
|---|---|---|
| Context window | 200K tokens | 1.05M tokens |
| Reads images | Yes | Yes |
| PDFs | Whole file | Whole file |
| Reasoning | No | Yes |
| API price (September 2026) | $1.00 in / $5.00 out per million tokens | $0.75 in / $3.75 out per million tokens |
| A typical message at API prices (4,000 tokens in, 700 out) | $0.0075 | $0.0056 |
| A $10 top-up adds | 200 messages | 200 messages |
| Where a message goes | Sent to Anthropic directly. | Sent to Google directly. |
| If the provider fails | If Anthropic fails before the reply starts (an overload, a server error, a dropped connection), llmwise sends the same request to Claude Haiku 4.5 through OpenRouter instead. | If Google fails before the reply starts (an overload, a server error, a dropped connection), llmwise sends the same request to Gemini 3.8 Flash through OpenRouter instead. |
| Anthropic's safety fallback | Doesn't apply | Doesn't apply |
Claude Haiku 4.5 or Gemini 3.8 Flash?
From the facts above and our test runs: the rest is how their answers suit your work, which one chat can show you.
Pick Gemini 3.8 Flash: it costs its maker less to run ($0.0056 a typical message at API prices), though in llmwise the count is the same.
Each model's page, the families, and other pairs
Claude Haiku 4.5 vs Gemini 3.8 Flash is one pair of models. The page below covers the whole families.
- Claude Haiku 4.5: price, limits and messages on every plan
- Gemini 3.8 Flash: price, limits and messages on every plan
- Claude vs Gemini
- Claude Fable 5.1 vs Claude Haiku 4.5
- Claude Opus 5.5 vs Claude Haiku 4.5
- Claude Sonnet 5 vs Claude Haiku 4.5
- Gemini 3.8 Flash vs DeepSeek V4.1 Flash
- Claude Sonnet 5 vs Gemini 3.8 Flash
- GPT-6 Sol vs Gemini 3.8 Flash
- Every model-vs-model page
Claude Haiku 4.5 is a Claude model; Gemini 3.8 Flash is a Gemini model.
Questions
Is Claude Haiku 4.5 or Gemini 3.8 Flash cheaper in llmwise?
They cost the same in llmwise: up to 250 messages a month on Pro on either. Every paid plan's monthly allowance is shared by all models, so each count is the most you get if it all goes to that model.
Can I try Claude Haiku 4.5 and Gemini 3.8 Flash for free?
Yes: both are in the free trial of 5 messages.
Which has the bigger context window, Claude Haiku 4.5 or Gemini 3.8 Flash?
Gemini 3.8 Flash: 1.05M tokens, against 200K tokens. A chat in llmwise holds up to 200k tokens, which fits in either, so the difference shows only through each maker's own API.
Can I use Claude Haiku 4.5 and Gemini 3.8 Flash in the same chat?
Yes. Pick Claude Haiku 4.5 for one message and Gemini 3.8 Flash for the next; the second sees the whole chat, including the first one's answer.
Which did better in your test runs, Claude Haiku 4.5 or Gemini 3.8 Flash?
On the same 50 prompts, run on September 27, 2026, Claude Haiku 4.5 passed 43 and Gemini 3.8 Flash passed 46. The table on this page has each job, and every reply is published.
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.