Claude Haiku vs GPT-4o-mini and GPT-6 Luna (October 2026)
Claude Haiku 5.5 and GPT-6 Luna both list $0.10 input and $0.50 output per million tokens. Where the real costs differ, plus Haiku 4.5 vs GPT-4o-mini today.
If you searched for Claude Haiku vs GPT-4o-mini, both vendors now list a newer model at a lower price. As of October 12, 2026, Anthropic's current Haiku model is Claude Haiku 5.5, released October 7, 2026, and OpenAI's models page points cost-sensitive, high-volume work to GPT-6 Luna. Their list prices are identical: $0.10 per million input tokens and $0.50 per million output tokens for normal-length prompts. So the question is no longer which one is cheaper per token. It is which one bills fewer tokens, and fewer expensive tokens, on your requests.
This post covers the status of the old models, the price table for the new pair, the five places their costs differ, what to test for each task type, and a short section for teams still running Haiku 4.5 or GPT-4o-mini. Every price and status below was read on October 12, 2026 from the vendors' own pages, and every cost example shows its arithmetic.
Status of each model, checked October 12, 2026
| Model | Status | Source |
|---|---|---|
Claude Haiku 3.5 (claude-3-5-haiku-20241022) |
Retired on the Claude API on February 19, 2026. Anthropic's pricing page marks it "retired, except on Google Cloud". | Model deprecations, Claude pricing |
Claude Haiku 4.5 (claude-haiku-4-5-20251001) |
Legacy, still available. Retirement not sooner than October 15, 2026. | Model deprecations, models overview |
Claude Haiku 5.5 (claude-haiku-5-5) |
Active, the latest Haiku. Retirement not sooner than October 7, 2027. | Models overview |
GPT-4o-mini (gpt-4o-mini) |
Still listed, at $0.15 input and $0.60 output. Shuts down January 14, 2027 (announced October 14, 2026), replaced by GPT-6 Luna. | OpenAI pricing, OpenAI deprecations |
GPT-6 Luna (gpt-6-luna) |
Current. A featured model "for cost-sensitive, high-volume workloads". | OpenAI models |
Three notes on the table. Anthropic deprecated Haiku 3.5 on December 19, 2025, and says requests to a model past its retirement date fail, so requests to it on the Claude API now fail. The Haiku 4.5 date is a floor, not a shutdown date: Anthropic says it gives at least 60 days' notice before retiring a publicly released model, and its deprecations page shows no deprecation notice for Haiku 4.5 yet. For GPT-4o-mini, OpenAI announced on October 14, 2026 that the chat model (gpt-4o-mini-2024-07-18) shuts down on January 14, 2027, and recommends GPT-6 Luna in its place; the gpt-4o-mini audio, realtime, TTS, transcription and search preview variants have dates of their own.
Claude Haiku 5.5 vs GPT-6 Luna: the price table
Prices per million tokens, from Anthropic's pricing page and the Claude Haiku 5.5 page, and from OpenAI's pricing page and the GPT-6 Luna page. Our price pages for Claude Haiku 5.5 and GPT-6 Luna show the same rates.
| Claude Haiku 5.5 | GPT-6 Luna | |
|---|---|---|
| Input | $0.10 | $0.10 |
| Output | $0.50 | $0.50 |
| Cache read | $0.01 | $0.01 |
| Cache write | $0.125 (5-minute cache), $0.20 (1-hour cache) | $0.125 |
| Higher prices start | Prompt over 100,000 tokens | More than 272K input tokens |
| Input / output above that | $0.50 / $2.50 | $0.20 / $0.75 |
| Cache read / write above that | $0.05 / $0.625 (5-minute), $1 (1-hour) | $0.02 / $0.25 |
| Batch input / output | $0.05 / $0.25 | $0.05 / $0.25 (Flex is the same) |
| Context window | 1M tokens | 1,050,000 tokens (922,000 max input) |
| Max output | 128K tokens | 128,000 tokens |
| Reasoning by default | Adaptive thinking on, effort medium |
Reasoning effort medium |
For every other Claude model's rates, see Claude API Pricing (October 2026).
Where the costs actually differ
1. Prompts over 100,000 tokens
Haiku 5.5 is priced by prompt length. Once a request's prompt is over 100,000 tokens, the whole request pays $0.50 input and $2.50 output, five times the normal rates. Anthropic counts all input tokens toward that line, including cache reads and cache writes, so caching a long prefix does not keep you under it. GPT-6 Luna keeps its normal price up to 272K input tokens. Above that it charges 2x input and cache rates and 1.5x output for the full request.
One request with 1,000 output tokens at different prompt sizes, assuming the same token count on both models:
| Prompt tokens | Claude Haiku 5.5 | GPT-6 Luna |
|---|---|---|
| 10,000 | $0.00150 | $0.00150 |
| 99,000 | $0.01040 | $0.01040 |
| 101,000 | $0.05300 | $0.01060 |
| 150,000 | $0.07750 | $0.01550 |
| 300,000 | $0.15250 | $0.06075 |
The 150,000 row: Haiku 5.5 is 150,000 x $0.50 / 1,000,000 = $0.075 for input plus 1,000 x $2.50 / 1,000,000 = $0.0025 for output, $0.0775 in total. GPT-6 Luna is 150,000 x $0.10 / 1,000,000 = $0.015 plus 1,000 x $0.50 / 1,000,000 = $0.0005, $0.0155 in total. Haiku 5.5 costs 5 times as much ($0.0775 / $0.0155). Going from 99,000 to 101,000 prompt tokens multiplies the Haiku 5.5 request by about 5.1 ($0.053 / $0.0104). At 300,000 tokens GPT-6 Luna also pays its higher rates: 300,000 x $0.20 / 1,000,000 = $0.06 plus 1,000 x $0.75 / 1,000,000 = $0.00075, $0.06075, which is still well under Haiku 5.5's $0.1525.
To check every row:
const haiku = (p, o) => (p > 100000 ? p * 0.5 + o * 2.5 : p * 0.1 + o * 0.5) / 1e6;
const luna = (p, o) => (p > 272000 ? p * 0.2 + o * 0.75 : p * 0.1 + o * 0.5) / 1e6;
for (const p of [10000, 99000, 101000, 150000, 300000]) {
console.log(p, haiku(p, 1000).toFixed(5), luna(p, 1000).toFixed(5));
}
// 10000 0.00150 0.00150
// 99000 0.01040 0.01040
// 101000 0.05300 0.01060
// 150000 0.07750 0.01550
// 300000 0.15250 0.06075
If long-document work runs on Haiku 5.5, either keep prompts under 100,000 tokens (split documents, retrieve fewer chunks) or test whether GPT-6 Luna's answers on those requests pass your checks.
2. The same text is not the same number of tokens
Anthropic says Claude 4.7 and later models use a newer tokenizer that produces approximately 30% more tokens for the same text, with the exact increase depending on the content. Haiku 5.5 uses it, so a prompt that was 1,000 tokens on Haiku 4.5 is about 1,300 tokens on Haiku 5.5 (1,000 x 1.30). OpenAI counts with its own tokenizer, and neither pricing page gives a conversion between the two. Identical per-token prices therefore do not mean identical per-request prices. Send a sample of your real prompts to both and compare the token counts in each response's usage data.
3. Reasoning tokens are billed as output on both
Both models have reasoning on by default. GPT-6 Luna defaults to medium reasoning effort, and OpenAI's reasoning guide says reasoning tokens are billed as output tokens even though the API does not show them. Claude Haiku 5.5 has adaptive thinking on by default at medium effort, and Anthropic's thinking page says thinking tokens are billed as output tokens even when the thinking text is not returned. On Haiku 5.5 it is hidden by default.
So a request with a 200-token answer can be billed for many more than 200 output tokens. The controls differ. GPT-6 Luna accepts reasoning.effort values from none to max. Haiku 5.5 accepts thinking: {type: "disabled"} at effort high or below. Anthropic warns that with thinking off, the model can skip a tool call it needs when you also request JSON output, so test that combination before you rely on it.
Two more details. On GPT-6 Luna, Chat Completions supports function calling only with reasoning_effort set to none; for tools with reasoning, OpenAI points you to the Responses API. On Haiku 5.5, thinking blocks from earlier turns stay in the context when you pass the conversation back and are billed as input tokens, which adds up in long chats.
4. Tool definitions carry a fixed overhead on Claude
When a request includes tools, Anthropic adds a tool-use system prompt on top of your tool definitions. For Haiku 5.5 it lists 286 tokens when tool_choice is auto or none, and 406 tokens when it is any or tool. Over one million requests, 286 tokens each is 286 million tokens, and 286 x $0.10 = $28.60. At 406 tokens it is 406 x $0.10 = $40.60. That is small at Haiku 5.5's price. OpenAI's pricing page lists no comparable fixed figure for GPT-6 Luna, so read it from the usage of one request sent with and without your tools.
5. Caching and batch cost the same, with two exceptions
Cache reads cost $0.01 per million tokens on both (10% of input), and a cache write costs $0.125 on both (1.25x input). The exceptions are on the Claude side: Anthropic also offers a 1-hour cache at $0.20 per million tokens to write, and on Haiku 5.5 the over-100,000 rates apply to cache reads and writes too. Haiku 5.5 caches only prompts of at least 512 tokens. Batch processing is 50% off on both, and OpenAI prices Flex at 50% of standard as well.
Let each request use the cheapest model that's just as good
PromptUnit checks each request your app sends. When a cheaper model is just as good for that request, it uses it; otherwise your model answers. Free until it has saved you money.
Try it free →Which tasks to test on each model
Anthropic describes Haiku 5.5 as built "for high-volume, latency-sensitive tasks such as classification, extraction, and routing". OpenAI calls GPT-6 Luna its "most efficient model for focused, high-volume tasks". Neither page compares the two models, so this table is about what to measure, not which model wins.
| Task type | Cost factor that decides it | What to test |
|---|---|---|
| Classification, tagging, short extraction | Same list price, so tokens per request decide it, reasoning tokens included | Accuracy on a labeled sample at the lowest reasoning setting that holds it, and billed output tokens per request |
| Long documents and RAG over 100,000 tokens | Haiku 5.5 pays 5x above 100,000 prompt tokens; GPT-6 Luna keeps its normal price up to 272K | Answer quality on your longest real inputs, or whether shorter prompts on Haiku 5.5 keep the quality |
| Tool calling and agents | Claude's 286 to 406 token tool prompt; GPT-6 Luna needs the Responses API for tools with reasoning | Right tool chosen, valid arguments, and turns per finished task |
| Code generation | Output and reasoning tokens per working answer | Share of answers that pass your unit tests, then cost per passing answer |
| Research and open-ended writing | Long outputs and heavy reasoning | A side-by-side review against the larger model you use today |
For the last row, format checks are not enough. In one app the PromptUnit team runs itself (checks up to October 12, 2026), Claude Haiku 4.5 served the app's web-research step for five days with no errors and answers that passed the automatic format checks, yet it was judged worse than Claude Sonnet 5 in 2 of 3 checks, so PromptUnit stopped moving that step and kept it on Sonnet 5. Claude Haiku 5.5 was judged as good in only 4 of 8 checks on the same step. These are small samples, and the judge was Claude Sonnet 5, the model the app asked for, so it is not an independent judge. The data says nothing about GPT-6 Luna. It does show that "no errors" is not the same as "as good". For more on when a step needs the larger Claude model, see Claude Haiku vs Sonnet: Routing Guide.
Still running Haiku 4.5 or GPT-4o-mini?
Current prices per million tokens, from the same vendor pages and the Claude Haiku 4.5 and GPT-4o-mini model pages. Our GPT-4o-mini price page has the same numbers.
| Claude Haiku 4.5 | GPT-4o-mini | |
|---|---|---|
| Input | $1.00 | $0.15 |
| Cached input | $0.10 | $0.075 |
| Cache write | $1.25 (5-minute), $2 (1-hour) | None listed |
| Output | $5.00 | $0.60 |
| Batch input / output | $0.50 / $2.50 | $0.075 / $0.30 |
| Context window | 200K tokens | 128,000 tokens |
| Max output | 64K tokens | 16,384 tokens |
| Tool-use system prompt | 496 tokens (auto, none), 588 (any, tool) |
None listed |
| Status | Legacy, retirement not sooner than October 15, 2026 | Shuts down January 14, 2027 |
The first version of this post priced a request with 500 input and 200 output tokens, assuming both models count the same text as the same number of tokens. With today's prices:
- GPT-4o-mini: 500 x $0.15 / 1,000,000 = $0.000075, plus 200 x $0.60 / 1,000,000 = $0.00012, so $0.000195 per call, or $195 per million calls.
- Claude Haiku 4.5: 500 x $1 / 1,000,000 = $0.0005, plus 200 x $5 / 1,000,000 = $0.001, so $0.0015 per call, or $1,500 per million calls. That is about 7.7 times GPT-4o-mini ($0.0015 / $0.000195), a difference of $1,305 per million calls.
Moving each to the newer model from the same vendor changes that picture:
- Claude Haiku 5.5: the same text is about 30% more tokens, so roughly 650 input and 260 output. 650 x $0.10 / 1,000,000 = $0.000065, plus 260 x $0.50 / 1,000,000 = $0.00013, so $0.000195 per call, or $195 per million calls. That is 87% less than Haiku 4.5 (1 - 195 / 1,500 = 0.87) and the same as GPT-4o-mini, before thinking tokens. Thinking would have to add about 2,610 tokens per call before Haiku 5.5 cost as much as Haiku 4.5: ($0.0015 - $0.000065) / $0.50 per million = 2,870 output tokens, minus the 260-token answer.
- GPT-6 Luna, at the same 500 and 200 tokens (an assumption to check on your own prompts): 500 x $0.10 / 1,000,000 = $0.00005, plus 200 x $0.50 / 1,000,000 = $0.0001, so $0.00015 per call, or $150 per million calls. That is 23% less than GPT-4o-mini (1 - 150 / 195 = 0.23), before reasoning tokens. Above 90 reasoning tokens per call, GPT-6 Luna costs more than GPT-4o-mini: ($0.000195 - $0.00005) / $0.50 per million = 290 output tokens, minus the 200-token answer.
So for short, high-volume calls, moving from GPT-4o-mini to GPT-6 Luna saves money only if reasoning stays low. Test effort none or low against your accuracy bar before you switch. For Haiku 4.5 users, Haiku 5.5's list price is one tenth, which leaves plenty of room for extra tokens, but test quality first: on the research step above, Haiku 5.5 was judged as good in only 4 of 8 checks.
Where PromptUnit fits
PromptUnit checks each request. When a cheaper model is just as good for that request, it uses it; otherwise the request goes to the model you asked for. It works with OpenAI, Anthropic, Google, Groq and DeepSeek keys, and if you connected keys for more than one provider, the cheaper model can be at another of those providers. Setup is two settings: point your app's AI API base URL at PromptUnit and add your PromptUnit key. Your own provider key stays. Requests with tool results in the conversation stay on the model you asked for, and requests with tool definitions usually do too.
The dashboard shows every request with the model you asked for, the model that answered, what it cost and what it saved. Optional side-by-side checks (off by default, paid on your own provider keys within a daily budget you set) let the model you asked for judge cheaper answers on a sample of your real requests. A step of your app moves to a cheaper model on its own only after at least 20 judged checks with 9 in 10 as good and at least 10% lower cost, and it moves back if fewer than 7 in 10 stay as good. PromptUnit is free until it has saved you money, then it takes 20% of what it saves. Create an account to see which of your requests could run on a cheaper model.