TokenKiln is under maintenance. Logins and new accounts are paused. Existing API keys continue to work. Contact TokenKiln

Open weight models · run on hardware we operate

Premium inference.
Absolute privacy.

Your prompts reach an inference engine and nothing else. No model vendor receives them, no content is written to our database, and there is no archive to leak or hand over. TokenKiln meters the tokens, never what is inside them.

Under maintenanceSee models & pricing
OpenAI SDKPythonTypeScriptcurlvLLMOllama

7

models live

0

prompts or completions stored

0

third-party model vendors in the path

100%

engine-reported billing

Why TokenKiln

Privacy that survives an audit, not a marketing page.

Nothing is retained

Prompts and completions pass through to the engine and are never written to our database. We record how many tokens moved, never what was in them. There is no archive to leak, subpoena, or mine.

No model vendor in the path

Open weight models run on hardware we operate. Your text is never handed to a third-party model provider for scoring, safety review, or training, because there is no such party between you and the GPU.

Encrypted on both hops

TLS from your application to the gateway, and TLS pinned to our own certificate authority from the gateway to the GPU, terminating inside the inference process. No middlebox reads it in between.

Exact metering

Billing settles against the engine's own token counts, never estimates. Every request carries a traceable id you can reconcile against your own logs.

Spend controls

Prepaid balances, per-key monthly caps, and per-key rate limits. Nobody can outrun their budget, and there is no invoice at the end of the month you did not expect.

Accounts that reconcile

Every micro-dollar lands in an append-only ledger with a running balance, and any account can be issued as a signed statement of activity on request.

Catalog

Models & pricing

Full catalog

Three steps

Live in five minutes.

  1. 1

    Create an account

    Verify your email, grab your dashboard. No sales call, no invoices.

  2. 2

    Top up & mint a key

    Prepaid credits via Stripe. Keys are hashed at rest with optional monthly caps.

  3. 3

    Point your SDK here

    Change baseURL and the key. Streaming, usage, and errors behave exactly like the API you already know.

curl https://tokenkiln.com/api/v1/chat/completions \
  -H "Authorization: Bearer tk_..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Qwen/Qwen2.5-7B-Instruct",
    "messages": [{"role": "user", "content": "Hello!"}],
    "stream": true
  }'

Responses include an x-request-id that matches your activity log, so every token is accounted for.

FAQ

Fair questions.

Do you read or store my prompts?

No. The API proxies your request straight to the inference engine and never writes prompt or completion content to our database, only token counts, cost, and latency for billing. Transport is encrypted on both hops: TLS from your app to the gateway, and TLS pinned to our own certificate authority from the gateway to the GPU, terminating inside the inference process with no middlebox between. The dashboard playground keeps your own chat history so you can resume it, and the batch API stores queued job content until it runs; both are deletable from your account.

How is this different from a closed model API?

Structurally, not just by policy. Calling a closed model means sending your text to the company that owns the weights, which is a party with its own retention, safety-review and training practices you have to trust and cannot inspect. Open weight models remove that party: the weights run on machines we operate, so there is nobody between you and the GPU to form a view about your data. The privacy question stops being what a vendor promises and starts being what the architecture makes possible.

Can you prove any of this?

That is the intended standard. Prompt content is absent from our schema, so there is no table to produce. Any account can be issued a signed statement of its own activity, showing every payment and every metered request with the identifiers returned to your client at the time, so our records can be checked line by line against yours. If you need a data processing agreement or a security review before you send us anything real, ask and you will get one.

How does billing actually work?

Credits are prepaid. Before a request is dispatched, a worst-case hold is taken atomically; after the engine responds, you're charged for actual reported usage and the remainder returns to your balance. Failed requests are never billed.

Is it really OpenAI-compatible?

Yes. /chat/completions (streaming and non-streaming), /embeddings, and /models follow the OpenAI shapes, including error formats. Point any official SDK at the base URL and change nothing else.

What runs the inference?

Our own GPUs, fronted by vLLM-class engines. There are no third-party resellers in the path; the gateway talks straight to the hardware.

What happens when my balance runs out?

Requests are rejected up front with a clear 402 before touching the GPU, so you're never billed into the negative by surprise. Top up and the same key keeps working.

The kiln is lit.

Create an account and make your first metered request in minutes. If your data is the kind that needs an agreement and a conversation first, that is the normal way to start here, not an exception.

Under maintenanceTalk to us