Skip to content

For B2B SaaS with AI in the product

See which customers your AI is losing money on.

This customer is unprofitable.

OpenAI sends one bill. It does not show cost per customer. CostSlice does: by customer and by feature. Then you change the price.

No credit card needed for Starter.

  • Keep your OpenAI API key
  • We never store prompts or completions
  • Fail-open. Forgotten tags never drop the call

No SOC 2. No HIPAA. Fail-open if we are slow.

acme-health · this month

clinical-summary · prod

UnprofitableSample data

This customer is unprofitable.

LLM cost
$4,812
Plan
$2,400
Margin
−101%
Requests
18,240

Cost vs plan

2.0×

  • harbor-support−9%Unprofitable
  • lumen-chat81%Healthy

OpenAI does not show cost per customer

You can’t raise the price until you know which customer is expensive.

One OpenAI bill hides the expensive customer

The OpenAI dashboard is one total. The Costs API is still one total. Neither is cost per customer. CostSlice is.

See cost by feature, not only by model

Tag the feature on the call. Clinical summary, support copilot, docs search — the expensive line is often not the one the team is talking about.

See who is expensive. Then raise the price, or change the feature.

Unprofitable is a badge, an icon, and the word. We do not cap or block LLM traffic. Starter has a hard request cap on the plan, not a kill switch on a customer.

OpenAI invoice · this month

$7,127

One line. Not attributed.

CostSlice · by feature

  • clinical-summaryacme-health$4,812
  • copilotharbor-support$978
  • chatlumen-chat$612
  • everyone elseuntagged$725

Your OpenAI API key

Stays yours

Install

One base_url

Starter

Free, no card

Prompt bodies

Never stored

Three sample customers. What you would do next.

Sample tenants, labeled. These are the same rows you get in a new workspace. Quotes live on the cards.

acme-health · sample

Unprofitable

−101%

This customer needs a higher price on summaries

Plan price $2,400. LLM cost $4,812. Margin −101%. The row is Unprofitable before anyone asks finance.

We thought the big logo accounts were the problem. The sample P&L put acme-health at the top of the list.

VP Product, sample

harbor-support · sample

Unprofitable

−9%

This feature costs too much because the prompt is long

Cost $978 on a $900 plan. A small miss, still Unprofitable. Catch it while it is still 9%.

Nine percent under is still red. Trim the window before this row looks like acme-health.

Staff engineer, sample

lumen-chat · sample

Healthy

81%

This customer can pay for chat instead of getting it free

Cost $612 on a $3,200 plan. Healthy — sage badge, check, and the word. Same stack, different unit economics.

Chat is healthy here. Stop giving it away on the accounts that are not.

Head of CS, sample

OpenAI cost per customer this month

Two customers unprofitable

Sample data
acme-healthsampleUnprofitable
AI cost
$4,812
Plan price
$2,400
Margin
-101%
Requests
18,240
harbor-supportsampleUnprofitable
AI cost
$978
Plan price
$900
Margin
-9%
Requests
6,402
lumen-chatsampleHealthy
AI cost
$612
Plan price
$3,200
Margin
81%
Requests
44,110
northwind-analyticssampleHealthy
AI cost
$441
Plan price
$1,800
Margin
76%
Requests
3,901
pebble-docssampleHealthy
AI cost
$188
Plan price
$600
Margin
69%
Requests
2,104
untaggedsampleYour AI still answersSet price
AI cost
$96
Plan price
Margin
set price
Requests
412

Tenant

acme-health

−101%

Unprofitable · talk pricing

Feature · acme-health

clinical-summary$4,190
chat$622

The leak is the SKU, not the model.

Download a cost spreadsheet for finance

acme-health,clinical-summary,4190,-101%
harbor-support,copilot,978,-9%
lumen-chat,chat,612,81%

Prompt bodies: never stored

See which customer costs more than they pay

This customer needs a higher price on summaries

When LLM cost is 2× the plan, the row is Unprofitable — badge, icon, and the word. Change the price or cut the feature from the SKU. We report it. We do not cap the tenant.

This feature costs too much because the prompt is long

harbor-support is a small miss. A shorter context window, a cheaper model, or a cache on the hot path. Catch it while the bar is still 9%.

This customer can pay for chat instead of getting it free

lumen-chat is Healthy on the same stack. The decision is not “turn off AI.” It is stop bundling the expensive line into the cheap plan.

How it works?

Keep your OpenAI API key. This is a pass-through. Not a virtual key, not a gateway.

Today this is OpenAI. Claude and other models come later. Ten minutes. One header. CostSlice is a pass-through OpenAI proxy plus tenant P&L, not an AI gateway. No routing, fallbacks, cache, or virtual keys.

Open the 10-minute setup →

OpenAI SDK · this project

api_keysk-••••••••

OpenAI API key. Yours. We never hold it.

base_urlapi.costslice.com/v1
x-cs-keycs_live_••••

01

We do not replace your key with a virtual one.

Set base_url to CostSlice and send x-cs-key. Your OpenAI API key still authenticates the model call.

Request · 412ms

200

gpt-4o-mini

tenant
acme-health
feature
clinical-summary
x-cs-env
prod
prompt
never stored

02

Put the customer name on every request

Pass opaque ids. Forget a tag and the completion still returns. It lands in untagged so you can fix instrumentation, not firefight dropped calls.

Tenant P&L · this month

acme-health

−101%

Unprofitable · talk pricing

03

See cost versus what they pay. Then change the price.

See which accounts and features eat LLM margin. Raise a SKU, trim a window, or export CSV for a board pack.

The 10-minute setup

CostSlice is a pass-through. Keep your OpenAI API key. Keys go in your product’s environment variables, not in chat.

  1. Copy x-cs-key from Get Started (or Settings → Keys).
  2. Put OPENAI_API_KEY and COSTSLICE_KEY in your product’s environment variables.
  3. Point the existing OpenAI client at https://api.costslice.com/v1 and send x-cs-key, x-cs-tenant (opaque id, never an email), x-cs-feature, x-cs-env (prod or staging).
  4. Send one real completion. Refresh the P&L.

Already calling OpenAI in your product? An engineer changes the OpenAI address in that product to https://api.costslice.com/v1 and sends x-cs-key.

api.costslice.com/v1

from openai import OpenAI
import os

client = OpenAI(
    base_url="https://api.costslice.com/v1",
    api_key=os.environ["OPENAI_API_KEY"],
    default_headers={
        "x-cs-key": os.environ["COSTSLICE_KEY"],
        "x-cs-tenant": tenant_id,       # opaque id, never an email
        "x-cs-feature": "support-copilot",
        "x-cs-env": "prod",
    },
)

resp = client.chat.completions.create(
    model="gpt-5.6-terra",
    messages=[{"role": "user", "content": "Summarize this ticket"}],
)

What we keep. What we never keep.

We store

org, request id, timestamp, provider, model, tenant, feature, x-cs-env (prod or staging), token counts, cost, latency, status, cost source. Hashed workspace keys. Optional plan prices.

We don’t

Prompts. Completions. Your OpenAI API key (Authorization is forwarded, never logged). Training on customer data — we do not keep bodies to train on.

Ingest is fail-open. Forgotten tags never drop the call. We do not claim SOC 2 or HIPAA. The DPA is public. For a signed copy, email hello@costslice.com.

Request · metadata only

gpt-4o-mini · 412ms · 200

Sample data
tenant
acme-health
feature
clinical-summary
x-cs-env
prod
tokens
1,204
prompt
never stored
completion
never stored

Before you start

Journal

Profit is per customer, not the company bill

What you charged them, minus OpenAI cost per customer.

Seven days of receipts is enough to see a customer P&L this month. That’s why Pro keeps 90 days.

Why we don’t store bodies

If we kept prompts we would become a different company. Usage metadata is enough to price a tenant.

Fail-open is a product decision

A meter that can take down chat is not a meter. Untagged traffic still completes.

Starter is free. Most teams run on Pro.

Starter is free without a card. Overage on Pro and Scale is $6 / 100k requests.

Starter

$0

  • 10,000 requests / month
  • 7-day retention
  • 1 seat
  • No overage — hard cap
  • See a customer P&L this month. No credit card needed.
Start free

Pro

Recommended

$79/mo

  • 250,000 requests / month
  • 90-day retention
  • Unlimited seats
  • Overage $6 / 100k
Start Pro

Scale

$199/mo

  • 2,000,000 requests / month
  • 365-day retention
  • Unlimited seats
  • Overage $6 / 100k
  • A year of tenant P&L. Same overage as Pro.
Start Scale

FAQ

Does OpenAI show cost per customer?
No. The dashboard is one bill. The Costs API is still one bill. The user field is a label, not an invoice. CostSlice is OpenAI cost per customer.
How do I see OpenAI cost per customer?
Keep your OpenAI API key. An engineer points your product at CostSlice and puts the customer name on each request. You get a customer P&L: cost versus what they pay.
Do I need an AI gateway to track LLM costs?
No. Gateways route models, cache, and issue virtual keys. CostSlice does none of that. OpenAI only. Keep your OpenAI API key. We count, then show which customer is unprofitable.
How is this different from Helicone?
Helicone logs and routes. We show OpenAI cost per customer so you can change a price. We do not store prompts. We are not an AI gateway.
Can I track OpenAI spend per feature?
Yes. Put a feature name on the request, such as chat, summaries, or copilot. The P&L splits OpenAI cost by customer and by feature.
Do you store what people type?
No. We store counts: model, tokens, how long it took, the names you sent, timestamps. What people typed, and what the model wrote back, are not saved.
Do I replace my OpenAI API key?
No. Keep your OpenAI API key. An engineer changes the OpenAI address in your product to CostSlice and sends our key next to yours. We never hold your OpenAI API key, and we don’t replace it with a virtual one.
Does this work with Claude?
Not today. CostSlice only sits in front of OpenAI. Claude and other models come later.
What if we forget to name a customer?
The completion still returns. We record untagged so you can fix the header. Fail-open ingest.
Is Starter actually free?
Yes. No credit card needed. 10,000 requests per month, 7-day retention, 1 seat. There is no overage — it is a hard cap.

See which customers your AI is losing money on.

No credit card needed for Starter.