OpenAI doesn't bill per-client. Your account gets one invoice at the end of the month — all tokens, all models, all clients pooled together. If you're running an AI agency, this creates a problem: you need per-client cost visibility, and OpenAI doesn't give it to you by default.
Most agencies solve this with a spreadsheet. It works until it doesn't. Here's the real cost of the manual approach — and what automated per-client tracking looks like.
How to Manually Calculate OpenAI API Costs
If you want to figure out what you're spending without a tool, here's the math. OpenAI's pricing is per million tokens, and it varies by model. Here's a reference table for the models most agencies use:
| Model | Input (per 1M tokens) | Output (per 1M tokens) |
|---|---|---|
| GPT-4o | $2.50 | $10.00 |
| GPT-4o Mini | $0.15 | $0.60 |
| GPT-4 Turbo | $10.00 | $30.00 |
| o1 | $15.00 | $60.00 |
| o3 Mini | $1.10 | $4.40 |
To calculate a single API call: take input tokens × input price + output tokens × output price, then divide by 1,000,000. A 500-token prompt with a 200-token response from GPT-4o costs: (500 × $2.50 / 1M) + (200 × $10.00 / 1M) = $0.00125 + $0.002 = $0.00325 per call.
Do that 10,000 times in a month for a client, and you're at $32.50 in raw token costs. With a 25% markup, that's $40.63 to bill them. Not huge — but multiply it across clients, and across more expensive models like o1, and the numbers get meaningful fast.
Why agencies care about this: If you're billing a client $500/month for AI-powered content generation, and their actual token cost is $180, you have $320 in margin. Fine. But if they're running o1 at scale and their token cost is actually $480 — you've priced yourself into a loss. You can't know without per-client tracking.
Why Manual Tracking Breaks at Scale
The spreadsheet approach has three failure modes that show up as agencies grow:
1. Multiple models, no attribution
Most agencies don't use just GPT-4o. They're routing tasks across GPT-4o, GPT-4o Mini, o1, and embedding models. Each has a different price. Without a tracking layer, you have no idea which clients are using which models — so you can't adjust pricing for clients who are consistently calling expensive models.
2. Multiple apps, one bill
If you have a web app, a Slack bot, and a content pipeline — they all hit the same OpenAI account. The monthly invoice shows total spend. Spreadsheets can't break that down by client or by app without manual log parsing, which means you're guessing.
3. Monthly close is too late
When the invoice lands on the 1st of the month, the month is already over. A client who ran $800 in tokens in month one keeps running $800 in month two. You're absorbing the cost for at least a full billing cycle before you can adjust pricing — and only if you catch it.
Automated Per-Client Cost Tracking
The alternative is a tracking system that attributes every API call to a client as it happens. The key components:
- API key or webhook integration — route calls through a layer that captures model, token count, and cost per call in real time
- Client attribution — each call tagged with a client ID, not just a project name
- Markup layer — raw costs inflated by your margin % before surfacing as client costs
- Budget alerts — fire when a client approaches their monthly budget threshold (80%, 100%)
Done right, this means: you open your dashboard, pick a client, and see exactly what they've spent on AI this month — broken down by model, by app, with your markup applied. You can flag overages mid-cycle instead of reading about them on the 1st.
What TokenTally Does for OpenAI API Cost Tracking
TokenTally tracks OpenAI (and Anthropic, Google, Azure) API usage per-client with:
- Real-time cost logging — each API call captured with model, token counts, and calculated cost
- Per-client attribution — costs grouped by client with custom markup applied automatically
- Budget alerts — color-coded thresholds so you catch overages before the month ends
- Monthly CSV and invoice export — bill clients with itemized AI costs, not a flat line item
No manual entry. No spreadsheets. Set it up once, get per-client visibility every month. For a step-by-step walkthrough of the full setup — from centralizing API keys to generating your first billing report — see the multi-client agency setup guide. If you're running Claude or Gemini alongside OpenAI, the LLM API pricing comparison shows exactly how costs stack up across providers — including the Claude API cost tracking guide for the Anthropic-specific setup. The underlying case for why per-client tracking matters financially is covered in why AI agencies are losing money without token cost tracking. Once you have costs tracked, billing clients for AI API usage walks through how to apply markup and invoice accurately.
Get notified when we publish new cost-tracking guides
No fluff. Just practical guides on AI billing, token tracking, and agency margins.