Free during beta

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.

01

Point at Spillr

Change your OpenAI base URL to the Spillr proxy — or wrap any LLM call with track(). No other code changes.

02

Tag by feature

Add X-Spillr-Feature: email-summary to any call. Mix and match feature names however your app is structured.

03

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
Get started free

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 →