Know what your AI costsper feature.
Spillr is a transparent LLM proxy and SDK that tracks token usage and USD cost per X-Spillr-Feature label — across OpenAI, Anthropic, and Google Gemini. Budget alerts and hard stops. No prompt storage.
Works with OpenAI · Anthropic · Google Gemini · No prompt storage
// Change one line — your existing code stays the same.
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://proxy.spillr.io/v1', // ← Spillr proxy
defaultHeaders: {
'X-Spillr-Key': process.env.SPILLR_KEY,
'X-Spillr-Feature': 'email-summary', // ← tag by feature
},
});
const res = await client.chat.completions.create({
model: 'gpt-4.1-nano',
messages: [{ role: 'user', content: prompt }],
stream: true, // streaming works too
});How it works
Up and running in 2 minutes.
Point at Spillr
Change your OpenAI base URL to the Spillr proxy — or wrap any LLM call with track(). No other code changes.
Tag by feature
Add X-Spillr-Feature: email-summary to any call. Mix and match feature names however your app is structured.
Watch costs in real time
Open your dashboard to see cost per feature, per day. Set budgets, get alerts, block runaway spend.
Features
Everything you need. Nothing you don't.
Cost per feature
Tag any call with X-Spillr-Feature. See exactly how much email-summary, chat, or onboarding costs — not just a total bill.
Budget alerts & hard stop
Set monthly or daily limits per feature. Alert at 80%, hard stop at 100% with a 429 response — before costs spiral.
Streaming support
OpenAI and Anthropic streaming passes through unchanged. Token counts are extracted from the final SSE chunk.
OpenAI · Anthropic · Google
One proxy, three providers. Same headers, same dashboard, same budget logic — regardless of which model you call.
Zero prompt storage
Spillr logs token counts and costs. Never the prompt text, never the response content. What you send stays between you and your provider.
Proxy or SDK
Route via the proxy for hard stops and zero code changes. Or use the SDK wrapper to report usage async with full control.
Integration
Drop-in for any provider.
Spillr speaks the same API as each provider. Change the base URL and add two headers. That's it.
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://proxy.spillr.io/v1',
defaultHeaders: {
'X-Spillr-Key': process.env.SPILLR_KEY,
'X-Spillr-Feature': 'email-summary',
},
});
const res = await client.chat.completions.create({
model: 'gpt-4.1-nano',
messages: [{ role: 'user', content: prompt }],
});Pricing
Free during beta.
Full access while we build the billing layer. Pricing will be usage-based and announced before launch.
Beta access
$0 / month
- ✓Unlimited projects
- ✓Unlimited API calls tracked
- ✓Budget alerts (email)
- ✓Hard stop on budget exceeded
- ✓OpenAI, Anthropic & Google support
- ✓Streaming support
- ✓SDK + proxy integration
- ✓14-day cost history
FAQ
Common questions about Spillr.
Is there an alternative to Helicone?
Yes — Spillr is a lighter-weight alternative to Helicone for solo developers. Like Helicone, Spillr proxies your LLM calls to track usage and cost. Unlike Helicone, Spillr never stores prompt or completion content — only token counts, model, feature label, and calculated USD cost — and ships budget alerts with a hard-stop (429) option per feature.
Is there an alternative to Portkey?
Yes — Spillr covers the cost-tracking and budget-control slice of what Portkey offers, without the full gateway/routing feature set. If you need per-feature USD cost, budget alerts, and hard spend stops across OpenAI, Anthropic, and Google Gemini — and want zero prompt storage by default — Spillr is a simpler, narrower alternative to Portkey.
Start monitoring in 2 minutes.
Sign up, create a project, change one line of code. Done.
Create free account →