Enterprise customer support platform · Enterprise software
An enterprise support platform moved 12 power users to usage overages and went from 48% to 76% gross margin.
An established helpdesk vendor launched an AI agent add-on at a flat price. PALM SOUQ showed which accounts were underwater, routed tier-one tickets to a small model and billed the heaviest accounts for their volume.
- Revenue
- $388,000
- LLM spend
- $80,400
- Gross margin
- 76.0%
- Incidents > $500
- 0
($388,000 - $80,400 LLM - $12,720 other COGS) / $388,000 = 76.0%
+28.0 points vs baseline
12 accounts billed an average $8,500 overage through Metronome, adding $102,000.
Gross margin
48.0% to 76.0%
Day 30: 61.1%
Monthly LLM spend
$136,000 to $80,400
down $55,600
Runaway incidents > $500
1 to 0
per month, baseline to Day 90
The challenge
The AI agent add-on sold at a flat monthly price per helpdesk. It drafted replies, summarised threads and auto-resolved routine tickets, and every one of those steps ran on the largest model available.
Finance could see total OpenAI spend rising faster than add-on revenue but could not tie the invoice to accounts. Twelve enterprise accounts with high ticket volume and long thread histories were consuming more tokens than the next 400 accounts.
Leadership did not want to cut anyone off. The question was how to charge fairly for volume without renegotiating 1,140 contracts.
What was configured
The policy, as deployed.
- 01
Account and feature metering
X-PalmSouq-Tenant carries the account ID and X-PalmSouq-Feature tags each call as triage, draft, summary or auto-resolve, so finance sees cost by account and by feature.
- 02
Fallback routing for tier-one tickets
Triage and summary calls route to GPT-4.1 mini by default; drafts stay on GPT-4.1 unless the account passes 90% of its monthly allowance.
- 03
Cache tracking
The prompt cache tracker showed the system prompt and macro library were re-sent uncached. Reordering the prefix raised cached input to 41% of tokens.
- 04
Metronome overage sync
Allowances were set per contract tier. Usage beyond the allowance streams to Metronome as a billable metric, and the 12 heaviest accounts accepted overage terms at renewal.
tenant_policy "ai-addon-enterprise" {
allowance_usd = 2400
fallback_chain = ["gpt-4.1", "gpt-4.1-mini"]
fallback_at = 0.90
feature_routes = {
triage = "gpt-4.1-mini"
summary = "gpt-4.1-mini"
draft = "gpt-4.1"
}
overage = { sync = "metronome", metric = "ai_tokens_usd" }
}- Accounts moved to usage overages
- 12
- Average monthly overage per account
- $8,500
- Overage revenue
- 12 x $8,500 = $102,000
- Day 90 revenue
- $286,000 + $102,000 = $388,000
- Day 90 gross margin
- ($388,000 - $80,400 - $12,720) / $388,000 = 76.0%
LLM spend fell from $136,000 to $80,400 at the same time, from feature routing (triage and summaries on GPT-4.1 mini) and from cached system prompts.
Results, snapshot by snapshot
| Revenue | LLM | GM | |
|---|---|---|---|
| Baseline | $286,000 | $136,000 | 48.0% |
| Day 30 | $286,000 | $98,600 | 61.1% |
| Day 90 | $388,000 | $80,400 | 76.0% |
Other COGS: Baseline $12,720, Day 30 $12,720, Day 90 $12,720. GM = (revenue - LLM - other COGS) / revenue.
“We finally know our exact gross margin per customer. We moved 12 power users to usage overages and took SaaS gross margin from 48% to 76%.”
What the team would tell you.
- Feature tags mattered as much as tenant tags. Summaries were 30% of spend and needed the smallest model.
- Overage terms landed at renewal because account managers could show each customer its own usage curve.
- Cache wins came from prompt ordering, not from new infrastructure.
More customer stories
Don't wait for a surprise $10,000 OpenAI invoice.
Route your agent traffic through PALM SOUQ in 2 minutes. Change one base URL, pass a tenant header, and every token is attributed and governed.
14-day free production trial · 100k requests included · no card required