Know which customers are quietly unprofitable before the bill arrives.

Most AI SaaS founders discover they are losing money on a user when the OpenAI invoice lands. Weckr tells you in real time: per user, per feature, per LLM call. Plus Slack alerts the moment a user goes unprofitable, and an MCP server so you can ask Claude about your cost data.

All nine pages live in the demo. No signup required.

drop-in
The problem

Your most active users are often your least profitable ones.

A user on your $9 starter plan who hits your AI features 50 times a day can cost you $40 a month to serve. They look like an engaged power user. They are actually your most expensive liability. You will not know until Stripe settles and the OpenAI bill arrives on the same day.

Zero added latency

Logs fire after your LLM call returns. Failures don't bubble to your code.

Per-user margin

See exactly which users cost more than they pay. Plan revenue minus AI cost.

Provider-agnostic

OpenAI, Anthropic, Gemini. One SDK, one dashboard, one set of units.

What makes Weckr different

Most observability tools sit between you and your LLM provider. We sit beside your code.

Where we sit
Most LLM tools proxy your calls. You swap your base URL or rotate keys.
Weckr is an SDK that wraps your existing client. No DNS change, no SLA on your critical path.
What we measure
Most tools group cost by request or session. Useful for traces, useless for margin.
Weckr groups by (user, plan). You see exactly which customer costs more than they pay.
What we do
Most tools observe and report. They tell you the bill once it's already run up.
Weckr enforces. Caps block or downgrade the call before the model bills you for it.
What we keep
Most tools capture full prompts and responses to power traces and replays.
Weckr captures only metadata: tokens, model, latency, cost. No prompt body ever leaves your server.

Watch costs as they happen

See dollars-per-user and dollars-per-feature update in real time. Catch a runaway customer before your AI bill arrives. No end-of-month surprises.

  • Live spend by user, model, and feature
  • Instant cost-per-request from token counts
  • Sortable user table with the worst-margin user always on top
app.useweckr.com/dashboard/overviewOverviewCost, revenue, and margin across all SDK calls in Acme.⚠ 3 users are costing you more than they pay. Combined loss: -$42.30/month.View users →TOTAL COST$142.50TOTAL REVENUE$2,900NET MARGIN$2,757.50UNPROFITABLEACTION3LAST 30 DAYSCostRevenue$120$80$40$0

One line, zero infra

Wrap your existing OpenAI, Anthropic, or Gemini client and you're done. The log POST is fire-and-forget after your call returns. No queue, no broker, no SLA on your critical path.

  • Framework-agnostic SDK
  • Edge-compatible (Vercel, Cloudflare Workers)
  • Cost & margin recalculated server-side, so clients can't lie
INSIDE wk.chat( )YOUR APPopenai.chat.create(...your prompt)@WECKR/SDK · wk.chatdetect provider · run call(returns immediately)result returned · 0 ms addedINGEST APIPOST /api/v1/logx-api-key: wk_…POSTGRES (RLS)public.requestscost · margin · planyou log inYOUR DASHBOARDcost · revenue · marginper user · per feature · per planPAYLOAD (FIRE-AND-FORGET){ userId, feature, model, provider, inputTokens, outputTokens, latencyMs, planName, planRevenueUsd, /* cost + margin recalc'd server-side */ }
Real-time alerts

Catch the runaways before they cost you money.

Three background jobs fire automatically the moment a user crosses a threshold, whether that's token velocity, monthly margin, or a Monday-morning summary. All dispatched through your own Slack workspace and email.

Agent loop detection

Sums tokens per user over a rolling window. If a single user crosses your threshold (the default is 50,000 tokens in 5 minutes), we Slack you immediately. Catches runaway CrewAI / LangChain loops before the bill lands.

Margin alerts

Set a negative-margin threshold per project. When a user's monthly margin drops below it (say -$5, meaning “they are losing me more than five dollars”), we ping Slack and email. Cooldown prevents spam.

Weekly digest

Optional Monday 09:00 UTC summary email: last-week cost, revenue, margin, top-3 users, top-3 features, and week-over-week delta. Enable in Settings, paste an address, done.

We never need a Slack OAuth or app install. You paste an incoming webhook URL and we POST to it. Same pattern Sentry and Linear use.
Token velocity·u_42_alice
live
50k / 5min
Velocity anomaly
Slackposted
Emaildelivered
Spending caps

Cap costs before they hit you

Set a monthly spend cap per plan. The SDK checks it before every LLM call. When a user hits their cap, you choose what happens. Silently downgrade to a cheaper model, or throw WeckrCapError so you can show your own upgrade prompt.

  • Per-user, per-plan monthly caps
  • Block the call, or swap to a cheaper model in the same provider
  • 60-second per-user cache, so at most one extra request per minute
  • Fails open: if our service is down, your LLM call still goes through
import { isWeckrCapError } from '@weckr/sdk';

try {
  await wk.chat(openai, opts);
} catch (err) {
  if (isWeckrCapError(err)) return upgradePrompt();
  throw err;
}
app.useweckr.com/dashboard/settingsSettingsSpending caps for Acme. The SDK checks these before every LLM call.PLANMONTHLY CAP (USD)WHEN CAP IS HITfree$2.00Block callstarter$5.00Downgrade modelpro$20.00Downgrade modelbusiness$100.00Block callSave capsSaved ✓SDK BEHAVIOURblock → throws WeckrCapError · downgrade → swaps to cheaper model

Get started in 60 seconds

Wrap your client. Or let Claude do it.

Two lines in TypeScript or Python. Or paste one prompt and let Claude wire Weckr into your codebase end-to-end.

$ npm install @weckr/sdk
// before
const result = await openai.chat.completions.create(opts);
// after @weckr/sdk
import { Weckr } from '@weckr/sdk';
const wk = new Weckr({ apiKey: 'wk_…', plans: { pro: 29 } });

const result = await wk.chat(openai, { ...opts, userId, feature, plan });

Two added lines in app.ts. Logs fire after your LLM call returns, with zero added latency.

Simple, transparent pricing

Start with a 7-day free trial. Cancel anytime from inside the dashboard.

Beta launch pricing: $49/month. Locked in for early adopters.

Hobby

$0/mo

For founders shipping their first AI feature.

  • Up to 50k requests/month
  • 7-day log retention
  • Basic cost analytics
Get started for free
Popular

Pro

$49/mo
7 days free, then $49/month. Cancel anytime.

For scaling applications that need deep insights.

  • Up to 1M requests/month
  • Unlimited log retention
  • Per-user margin tracking
  • Custom alerts & webhooks
Start 7-day free trial

The founder

Ghiles Asmani

Founder · Stockholm, Sweden

AI engineer in Stockholm, working as a consultant on production LLM systems. Across multiple projects I kept running into the same problem: a handful of users were quietly costing more in OpenAI calls than they paid in subscription, and nobody noticed until the invoice arrived. I looked for an off-the-shelf tool that catches it in real time. There wasn't one, so I built Weckr.

Two lines of code. Know before the bill arrives.

Install in two minutes. No credit card. No SDR call.

Get started for free