Know what every customer actually costs you.
Margin sets what each customer pays you in Stripe against what their AI calls cost you — per customer, and per feature or workflow when you tag them. When a customer falls below your margin line, it suggests a cheaper model and shows the projected margin.
$184,290
617 accounts
$31,842
$51.61 / account
82.7%
+1.6 pts vs January
14
$3,918 MRR
| Account | MRR | Variable | Margin | 8 mo |
|---|---|---|---|---|
| Acme CorpGrowth | $199.00 | $112.11 | 43.7% | |
| NorthwindGrowth | $199.00 | $96.40 | 51.6% | |
| Kestrel DataScale | $799.00 | $341.28 | 57.3% | |
| HalcyonGrowth | $199.00 | $71.55 | 64.0% | |
| Meridian HealthScale | $799.00 | $214.06 | 73.2% | |
| Ridgeline LabsStarter | $99.00 | $21.34 | 78.4% | |
| VantageScale | $799.00 | $143.02 | 82.1% |
- Growth
Account
Acme Corp
- Revenue
- $199.00
- Variable cost
- $112.11
- Gross profit
- $86.89
- Gross margin
- 43.7%
Variable cost by workflow
- $74.82OpenAI · gpt-5.18,412 calls
- Input39.6M tokens$49.44
- Output2.5M tokens$25.38
- Image generation$19.03
- Everything else$18.26
Suggested model switch43.7% → 78.1%- Move gpt-5.1 calls to gpt-5.1-mini, which your team approved−$46.30
- Move claude-sonnet-4.5 calls to claude-haiku-4.5, already used elsewhere in your product−$22.23
Priced on this account's own tokens at each model's list price. Margin suggests; it never switches.
Account
Acme Corp
- Revenue
- $199.00
- Variable cost
- $112.11
- Gross profit
- $86.89
- Gross margin
- 43.7%
Variable cost by workflow
- $74.82OpenAI · gpt-5.18,412 calls
- Input39.6M tokens$49.44
- Output2.5M tokens$25.38
- Image generation$19.03
- Everything else$18.26
- Move gpt-5.1 calls to gpt-5.1-mini, which your team approved−$46.30
- Move claude-sonnet-4.5 calls to claude-haiku-4.5, already used elsewhere in your product−$22.23
Priced on this account's own tokens at each model's list price. Margin suggests; it never switches.
You know your AI bill. You don’t know whose it is.
What you can already see
- OpenAI, February
- $14,208
- Anthropic, February
- $9,104
- Total variable cost
- $31,842
- Blended gross margin
- 82.7%
What nothing tells you
- Which fourteen accounts are under 60% margin.
- Which single workflow is 39% of your model spend.
- Which of those customers a cheaper model would bring back above the line.
A blended margin of 82.7% is healthy and hides fourteen accounts that are not. Averages are where unit economics go to be ignored.
The same $31,842, cut by cause instead of by vendor.
- OpenAI44.6%$14,208
- Anthropic28.6%$9,104
- AWS Bedrock12.5%$3,980
- Replicate8.5%$2,711
- ElevenLabs5.8%$1,839
This is the view your invoices already give you. It tells you the total and nothing about the cause.
| Workflow | Accounts | Share | Cost |
|---|---|---|---|
| Research agent | 412 | 39.2% | $12,480 |
| Bulk enrichment | 38 | 25.8% | $8,214 |
| Document parsing | 191 | 20.1% | $6,390 |
| Image generation | 288 | 9.8% | $3,118 |
| Everything else | 617 | 5.1% | $1,640 |
Bulk enrichment costs $8,214 a month and is used by 38 accounts — $216 each, against an average revenue of $298.69. That is the sentence a provider invoice cannot produce, and it is the reason Margin exists.
From an invoice to a decision.
- 01
Meter
OpenRouter sends Nogu each model call as it happens, with its cost and the customer id your app already sends. Calls from your own backend can be posted with the same tags.
- 02
Attribute
Each call is tied to the Stripe customer it names, and to a feature or workflow when you tag one. Cost nobody tagged is shown as unattributed, never spread across other customers.
- 03
Compare
Each customer's model spend is set against their Stripe revenue for the month. Feature and workflow margins appear once you say what share of revenue each one earns.
- 04
Recommend
For a customer below your line, Margin reprices their own tokens on models you already run or have approved. It suggests; it never switches.
What Margin needs
Stripe for revenue. OpenRouter Broadcast pointed at Nogu with cost reporting on, sending your Stripe customer id as the user on each request. OpenAI and Anthropic admin keys add total spend by model, but cannot say which customer a call was for. The greyed names are sources Margin is built for and cannot be connected yet.
Revenue
- Stripe (available today)
- Chargebee
- Paddle
- Orb
AI providers
- OpenAI (available today)
- Anthropic (available today)
- OpenRouter (available today)
- Replicate
- ElevenLabs
- AWS Bedrock
Find out what your best customer actually costs.
Connect Stripe and turn on OpenRouter Broadcast. Margin shows each customer's margin for the month, and the model switches that would lift the ones below your line.