Free during beta

Know what your AI costsper feature.

Spillr sits as a transparent proxy between your app and LLM providers. Log token counts and costs per feature label — without storing your prompts.

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

Start monitoring in 2 minutes.

Sign up, create a project, change one line of code. Done.

Create free account →