Skip to content
PALM SOUQ

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.

palmsouq / workspace / enterprise-customer-support-platform
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.

  1. 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.

  2. 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.

  3. 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.

  4. 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.

policies/production.tg
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" }
}
Where the $102,000 of overage revenue came from
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

RevenueLLMGM
Baseline$286,000$136,00048.0%
Day 30$286,000$98,60061.1%
Day 90$388,000$80,40076.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%.”
Head of FinOps, Enterprise customer support platform

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.

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