Same models.
30% off every token.
Token-Mart is one API for Claude and GPT. Same model IDs, same responses, billed at 70% of each provider’s published rate.
The price list
USD per million tokens. Your rate is pegged to 70% of each provider’s list price, including cached input and long-context tiers.
| Model | Input | Output | |
|---|---|---|---|
| Anthropic | |||
Claude Fable 5.1claude-fable-5-1 | |||
Claude Opus 5.5claude-opus-5-5 | |||
Claude Sonnet 5.5claude-sonnet-5-5 | |||
Claude Opus 5claude-opus-5 | |||
Claude Sonnet 5claude-sonnet-5 | |||
| OpenAI | |||
GPT-6.1 Solgpt-6.1-sol | |||
GPT-6 Astragpt-6-astra | |||
GPT-6 Solgpt-6-sol | |||
GPT Image 2gpt-image-2 | |||
Struck-through figures are the providers’ published list prices. Need a model that isn’t listed? Ask sales.
What would you keep?
Drag to your current monthly bill. The estimate goes straight into an email to sales, so you can start from a real number.
- With Token-Mart
- $17,500/mo
- Saved per year
- $90,000
Change one line.
Token-Mart speaks the OpenAI and Anthropic protocols natively. Swap the base URL and API key; model IDs, streaming, tool use and prompt caching work as they do today.
- OpenAI SDK
- Anthropic SDK
- Claude Code
- Codex
- Cursor
- Cline
- LangChain
- LlamaIndex
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.token-mart.io/v1",
api_key=os.environ["TOKENMART_API_KEY"],
)
resp = client.chat.completions.create(
model="claude-sonnet-5-5",
messages=[{"role": "user", "content": "Hello"}],
)Cheaper, without the catch.
A discount only matters if you can trust what you’re paying for. Here is what happens when a request goes wrong.
req_7f3c91a0billed $0.0186- Request receivedclaude-opus-5-5 · 2,400 input tokens
0 ms - Channel timed outNo output produced, nothing billed
1.2 s - Retried on another channelSame model. Never a substitute.
+24 ms - Completed850 output tokens · billed once, $0.0186
2.6 s
The model you asked for, every time
If a channel fails, we retry on another channel serving the same model. We never swap in a cheaper one, and the model field in each response is exactly what you requested.
No output, no charge
Requests that fail before producing anything are not billed. Retries we run on your behalf are billed once.
A receipt for every call
Each response carries an x-request-id and its cost in x-gw-cost, so any line on your invoice traces back to a single request.
Native endpoints, not translations
OpenAI Chat Completions and Responses, Anthropic Messages, and embeddings, each served on its own protocol with its own error format.
Getting set up
Onboarding goes through a person, not a sign-up form. Here is how it works.
- 1
Tell us what you run
Email carl@anz.io with the models you use and your rough monthly spend.
- 2
Get your keys
We set up your account, API keys and billing terms. Keys support IP allowlists and rotation with a grace period.
- 3
Change the base URL
Point your SDK or tool at Token-Mart. Your code, prompts and model IDs stay as they are.
Questions
Are these the actual models?
Yes. You call a model by its ID and that model answers. Failover only moves between channels serving the same model, and the model field in every response matches your request.
What does list price mean?
The per-token rate each provider publishes for its own API. Your rate is 70% of it for input and output tokens, and the same discount applies to cached tokens.
Do failed requests cost anything?
A request that fails before producing any output is not billed. If we retry on another channel for you, you pay for one completion, not two.
Which tools and SDKs work?
Anything that lets you set a base URL: the OpenAI and Anthropic SDKs, Claude Code, Codex, Cursor, Cline, LangChain and LlamaIndex.
How do we get started?
Email carl@anz.io with the models you use and your approximate monthly volume. We will set up your account and send your keys.