What the Claude Opus 5.5 API Costs - Rates, Thinking, Caching and Code
Claude Opus 5.5 API pricing next to Sonnet 5 and Haiku 4.5: per-token rates, how thinking and caching change the bill, model choice, Python and Node.
On Kadraris, Claude Opus 5.5 is billed at $3.78 / $18.90 per 1M tokens and Claude Sonnet 5 at $3.24 / $16.20 per 1M tokens, charged by the token against dollars you load up front, with nothing billed monthly and no minimum spend. How I divide the work: Sonnet covers the daily bulk, Opus 5.5 takes the long autonomous runs and huge repositories, and the small Claude Haiku 4.5 ($1.35 / $6.75 per 1M tokens) for short, high-volume requests.
Everything here concerns calling Claude from software you write. If you are after the terminal agent instead, read what Claude Code costs and the base URL setup.
Rates for every Claude model on Kadraris
A single key covers the whole list, whichever of the two SDKs (Anthropic's or OpenAI's) your code uses.
| Model | Id | Per 1M tokens (in / out) | Reach for it when |
|---|---|---|---|
| Claude Fable 5.1 | claude-fable-5.1 | $9.45 / $47.25 per 1M tokens | Opus 5.5 keeps failing your tests |
| Claude Opus 5.5 | claude-opus-5.5 | $3.78 / $18.90 per 1M tokens | long agent runs, big repos, many documents |
| Claude Opus 4.8 | claude-opus-4.8 | $3.78 / $18.90 per 1M tokens | pipelines already tuned on 4.8 |
| Claude Sonnet 5 | claude-sonnet-5 | $3.24 / $16.20 per 1M tokens | daily code, writing, tool-using agents |
| Claude Haiku 4.5 | claude-haiku-4.5 | $1.35 / $6.75 per 1M tokens | support chat, tagging, background subtasks |
Fable 5.1, both Opus models and Sonnet 5 read up to 1M tokens of context; Haiku 4.5 reads 200K. The catalog also lists Claude Sonnet 5.5, the newer Sonnet, which is compared with its predecessor in Sonnet 5.5 vs Sonnet 5. For the current lineup, open the models page or call GET /v1/models?category=chat.
Opus 5.5 in brief
Opus 5.5 came out on 22 September 2026 and opened Anthropic's 5.5 generation. It reads 1M tokens, writes as many as 128K per reply, and knows events up to June 2026. Its maker recommends trying it first for nearly any job and claims Fable 5.1-level results on most work for less money.
What it means for your bill: adaptive thinking cannot be switched off on Opus 5.5. The model decides how long to think, and those thinking tokens are charged as output. A brief answer to a difficult question may therefore cost more than its visible length suggests.
Sonnet 5 in brief
Sonnet 5 launched in June 2026; it too reads 1M tokens and can answer with 128K. Anthropic positions it near Opus 4.8 for less money. Two things bite when you move older code onto it:
- any non-default
temperature,top_portop_kis rejected with a 400, so delete those parameters, - by Anthropic's own account its tokenizer turns the same text into roughly 30% more tokens than Sonnet 4.6 did, so compare the price of whole requests, not just the rate.
Splitting work between the models
- Haiku 4.5: simple customer questions, ticket labels, pulling fields out of emails. Wherever speed and volume count more than depth.
- Sonnet 5: my standard pick for programming, reports and docs, small tool-using agents, bug fixes and test writing.
- Opus 5.5: refactors spanning hundreds of files, loading an entire codebase or a pile of agreements at once, agents that run for hours on their own.
- Fable 5.1: a last resort when Opus 5.5 cannot pass my checks, since few chat models here cost more.
A pattern I like: let Opus plan and a smaller model execute. Opus splits the job into steps, and Sonnet or Haiku works through them. Since every model shares the key and balance, the whole workflow's cost shows up in one place. A direct comparison is on Opus 5.5 vs Sonnet 5, and the top end on Fable 5.1 vs Opus 5.5.
Estimating what a request costs
Same formula for every model:
cost = in_tokens / 1,000,000 × in_rate
+ out_tokens / 1,000,000 × out_rateTry it with real rates: an agreement of 30K tokens analysed, 3K tokens back including the reasoning, equals 0.03 × the input rate and 0.003 × the output rate. Watch three extras on top:
- thinking tokens, billed as output,
- earlier turns of the conversation, resent as input each time,
- a lengthy system prompt, billed again with every call.
The last item is what prompt caching is for.
Prompt caching and how it bills here
With caching you flag the unchanging front section of a request (system prompt, standing instructions, a reference file, tool schemas), and later calls reuse that work instead of recomputing it. Anthropic's own rates:
| Cache action | Multiple of Anthropic's input rate |
|---|---|
| write, 5-minute lifetime | 1.25× |
| write, 1-hour lifetime | 2× |
| read, most models | 0.1× |
| read, Opus 5.5 | 0.05× |
There is also a minimum length per model (512 tokens for Opus 5.5). Shorter blocks are silently not cached, and you get no error.
On Kadraris it depends on the model. Opus 5.5, Sonnet 5.5, Haiku 4.5 and Fable 5.1 show a third rate on their model pages, input from cache: for Opus 5.5 it is a twentieth of the input rate, for the other three a tenth. Sonnet 5 and Opus 4.8 have no cache rate, so a cached token there costs the same as normal input. Writing to the cache is billed at 1.25× input on every model. Test it on your traffic first: run one batch with caching and one without, then compare usage and the balance from GET /v1/balance. The gain appears when a long prefix gets reused again and again within minutes. A request you send once only pays the write premium.
Flagging a section in Anthropic's Python SDK:
# a long text that stays the same between calls
policy = open("refund_policy.md", encoding="utf-8").read()
msg = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
system=[
{"type": "text",
"text": "Answer shop customers using this policy."},
{"type": "text", "text": policy,
"cache_control": {"type": "ephemeral"}},
],
messages=[{"role": "user",
"content": "How long do I have to return a jacket?"}],
)
u = msg.usage
print(u.cache_creation_input_tokens,
u.cache_read_input_tokens, u.input_tokens)Call number one stores the document (cache_creation_input_tokens); calls within the next 5 minutes read it (cache_read_input_tokens).
Calling Claude from Python and Node
Two protocols are available, Anthropic's /v1/messages and OpenAI's /v1/chat/completions. Existing Anthropic SDK code needs nothing more than a different address and key:
pip install anthropic
export KADRARIS_API_KEY=sk-kd-...import os
from anthropic import Anthropic
client = Anthropic(
base_url="https://kadraris.com",
api_key=os.environ["KADRARIS_API_KEY"],
)
msg = client.messages.create(
model="claude-opus-5.5",
max_tokens=2048,
system="Be specific and brief.",
messages=[{"role": "user",
"content": "Outline a Django to FastAPI "
"migration in 6 steps."}],
)
print(msg.content[-1].text)
print(msg.usage) # input, output and cache token countsThe Anthropic SDK wants https://kadraris.com without /v1, because it appends the path itself. I print content[-1] because a thinking model may put a thinking block first, with the text last.
Node.js:
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
baseURL: "https://kadraris.com",
apiKey: process.env.KADRARIS_API_KEY,
});
const msg = await client.messages.create({
model: "claude-sonnet-5",
max_tokens: 1024,
messages: [{
role: "user",
content: "Write unit tests for slugify(title: str).",
}],
});
const text = msg.content.find((b) => b.type === "text");
console.log(text?.text);Prefer OpenAI's client? Point it at https://kadraris.com/v1 and pass model="claude-sonnet-5". That suits projects where Claude sits next to GPT or Gemini in the same codebase. Reference pages: messages endpoint, completions endpoint.

Want to poke at a model manually first? The chat tab of Kadraris Studio draws from the same funds.
Paying and keeping spend in check
The terms in short:
- dollar rates shown up front,
- loading starts at $10, with buttons for $10, $25, $50, $100 and $250,
- nothing recurring, and money on the account never lapses,
- an errored call is free,
- your inputs and results stay out of model training.

Getting going takes three steps: register, load funds, and generate a key under the dashboard. Attach a monthly ceiling to it. Any call that would break the ceiling gets 403, which halts a runaway agent while money remains. Other vendors' rates are covered in GPT-6 API pricing and in ranking chat models by cost.
Questions
Why did a short Opus 5.5 answer cost more than I expected?
Opus 5.5 reasons before every reply, and that hidden reasoning counts toward output tokens. Check usage to see the real output count.
My code sets temperature and Sonnet 5 returns 400. What do I change?
Remove temperature, top_p and top_k, or leave them at their defaults. Sonnet 5 rejects custom values for all three.
Is prompt caching worth it on Kadraris?
On Opus 5.5, yes, when the same long prefix is reused many times in a few minutes: a cache read costs a twentieth of the input rate. On Sonnet 5 there is no cache rate, so reads cost as much as normal input and the 1.25× write only adds cost. For one-off requests the write premium makes it more expensive on any model. Measure with usage and your balance before relying on it.
Can I keep my Anthropic SDK code as it is?
Almost entirely. Swap base_url for https://kadraris.com, pass your sk-kd-... key and pick an id from the catalog, for example claude-opus-5.5. Streaming and tools behave exactly as before.


























