Tokenator is a drop-in replacement for the OpenAI and Anthropic APIs. Point your app, IDE, or SDK at it and instantly spend less, with full governance and analytics — with no code changes.
https://api.tokenator.aiIf it can set an API base URL, it works. No SDK to adopt, no rewrite.
Change one URL. Keep your code. Everything else stays the same.
Every call is cheaper, governed, and fully accounted for — automatically.
Ask the same thing again and the answer comes back instantly — at no cost.
Similar questions come back instantly, so you’re never billed for the same work twice.
Requests are kept lean — and your code is always left untouched.
Long conversations stay cheap automatically, however far they run.
You pay premium prices only when the work actually needs them.
Budgets, rate limits, and per-key governance — overspend stops before it happens.
Know exactly where every token goes, per key, per project, per model.
Every response shows what it cost and exactly what was saved.
Cut your coding bill without changing how you work:
Tokenator does the rest — your dashboard shows exactly what you saved, with the same quality you expect.
Settings → Models → enable OpenAI API Key, paste your tk_ key, tick Override OpenAI Base URL and set it to the URL below. Add a model name (e.g. gpt-4o).
Base URL: https://api.tokenator.ai API Key: tk_your_key_here
Two settings point Claude Code at Tokenator. Easiest everywhere (including the Mac app): add this env block to ~/.claude/settings.json — create the file if it doesn't exist, or merge the env key if it does — then restart Claude Code. Prefer a terminal? export the same two variables and run claude.
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.tokenator.ai",
"ANTHROPIC_API_KEY": "tk_your_key_here"
}
}Add a model to ~/.continue/config.json with provider openai and an apiBase.
{
"models": [{
"title": "Tokenator",
"provider": "openai",
"model": "gpt-4o",
"apiKey": "tk_your_key_here",
"apiBase": "https://api.tokenator.ai"
}]
}Extension settings → API Provider OpenAI Compatible → Base URL + API Key + a Model ID.
Base URL: https://api.tokenator.ai API Key: tk_your_key_here Model ID: gpt-4o
Any code using the openai library — change two arguments.
from openai import OpenAI
client = OpenAI(base_url="https://api.tokenator.ai", api_key="tk_your_key_here")
client.chat.completions.create(model="gpt-4o",
messages=[{"role":"user","content":"hi"}])Same idea — set baseURL (JS) / base_url and your key. Everything else is unchanged.
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.tokenator.ai",
apiKey: "tk_your_key_here",
});Point aider at the OpenAI-compatible endpoint via env vars (or the matching flags).
export OPENAI_API_BASE="https://api.tokenator.ai" export OPENAI_API_KEY="tk_your_key_here" aider --model gpt-4o
Sanity-check the endpoint from a terminal.
curl https://api.tokenator.ai/chat/completions \
-H "Authorization: Bearer tk_your_key_here" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-4o","messages":[{"role":"user","content":"hi"}]}'You pay your provider directly for tokens. Tokenator never marks up your BYOK usage — keys are encrypted at rest and never logged; we only charge a share of what Tokenator measurably saves you.
Direct providers, an aggregator, and any OpenAI-compatible or self-hosted endpoint.
Consumer desktop apps connect straight to their own backend and can't point at a custom inference endpoint — there's no setting for it. Tokenator covers them a different way, no configuration needed:
Streams token-by-token and shows what Tokenator did beside each answer.
A chat side-panel on any page, page-aware — download it and add to Chrome or Edge (Mac or Windows).
Expose Tokenator to MCP-aware desktop apps as a model source.
tokenator-chat folder.chrome://extensions (or edge://extensions) in your browser.tokenator-chat folder.tk_ key.One-click install from the Chrome Web Store is coming soon — this download works today on any Chromium browser.
Where we're expanding next — nothing hidden.
Point your tools at Tokenator and keep everything else exactly as it is.