Guides / price a credit based ai plan

Pricing a credit-based AI plan so a credit covers what it buys

A credit-based AI plan works only when one credit maps to a bounded amount of model spend. Teams usually set the credit price from what feels saleable, then let expensive actions cost the same credit as cheap ones. Culpa, a local-first LLM cost, margin, and forecast ledger, meters the real spend behind each action, so a credit gets priced from measurement.

Why this happens

Credits are attractive because they decouple the price list from the model bill and let you change models without republishing a price. The decoupling is also the danger. Once a credit buys any action, the customer chooses the mix, and the mix decides your margin. A user who only ever runs the cheapest action funds you handsomely. A user who only runs agents on the same credit balance can cost many times what they paid, and nothing in the plan stops them.

What this usually looks like

  • Every action in the product costs one credit regardless of how much work it does.
  • The credit price was set by comparing against a competitor rather than against your own spend.
  • Heavy accounts consume their whole balance on one feature, and it's the most expensive one.
  • Nobody can state the spend behind a single credit without going and measuring it.

Free, no card, no account

Run the free Cost Leak Scan

It shows your most expensive conversation before you install anything.

Run a free scan

Mistakes that cost the most

MistakeWhy it hurtsDo instead
Charging one credit for every action.Actions differ in cost by two orders of magnitude, so a flat credit is a subsidy the customer chooses the size of.Weight credits by measured action cost, and publish the weights so the pricing reads as fair rather than arbitrary.
Letting credits roll over without limit.A large stored balance can be spent all at once on your dearest action, months after you booked the revenue.Expire or cap rollover, and hold a reserve against outstanding balances rather than treating them as banked profit.
Repricing credits without repricing actions.Raising the credit price does nothing about a specific action that costs more than a credit is worth.Fix the weight on the offending action first. That's where the loss actually lives.

Run this check tonight

  1. List every action a credit buys and measure the model spend behind each one for a real week.
  2. Divide plan price by included credits to get revenue per credit, then compare it against each action.
  3. Find the action with the highest spend per credit. Assume some customer will use only that one.
  4. Compute what an account costs if it spends its entire balance on your dearest action.
  5. Check your outstanding credit liability, and what it would cost if it were all spent on that action next month.

One credit, three actions, a 65x spread

Illustrative example

A $49 plan carrying 1,000 credits, so $0.049 of revenue per credit. Actions run on Claude Sonnet 5 at its real introductory rates of $0.002 per 1k input and $0.010 output. Token volumes are modelled.

Short answer, 1 credit: (2 x $0.002) + (0.4 x $0.010) = $0.004 + $0.004 = $0.008
Document analysis, 1 credit: (90 x $0.002) + (2.5 x $0.010) = $0.180 + $0.025 = $0.205
Agent research run, 1 credit: 18 calls x [(12 x $0.002) + (0.5 x $0.010)] = 18 x $0.029 = $0.522
Revenue per credit is $0.049, so the short answer earns $0.041 and the agent run loses $0.473
A customer spending all 1,000 credits on agent runs costs $522 against $49 of revenue

One credit priced at $0.049 buys anywhere from $0.008 to $0.522 of model spend. The plan is profitable, break-even or catastrophic depending entirely on a choice the customer makes and you don't.

Every number, with its confidence and source

FigureWhat it meansConfidenceSource
$0.008 to $0.522modelled model spend behind a single credit, cheapest action against dearestestimatedBoth endpoints at real Claude Sonnet 5 introductory rates per 1k tokens from the price book, effective 2026-07-02. A range because the action token volumes are modelled.
$0.049revenue per credit on a modelled $49 plan carrying 1,000 creditscalculated$49 divided by 1,000 credits. The plan shape is modelled, the rates behind each action are real.

What a generic answer can’t know

Weighting credits needs the measured spend behind each action in your product, and an action is your concept, not a provider's. A provider sees calls and can't tell which feature asked for them. Culpa attaches the feature to the call on your infrastructure, keeps your prompts and responses there, and counts the calls to run your plan.

Questions founders ask next

Should every action cost the same number of credits?

Only when every action costs you roughly the same, which is rare. Once a document analysis costs twenty times a short answer, a flat credit hands the customer a choice about your margin that they'll make in their own interest.

How do I set the price of a credit?

Measure spend per action first, weight the actions, then set the credit price so your worst realistic mix still clears your target margin. Setting it from a competitor's price list prices their cost structure, not yours.

Are unused credits profit?

Not until they expire. An outstanding balance is a claim on future model spend at a rate you already fixed, and it can be spent on your dearest action at the worst possible moment. Treat it as a liability with a reserve behind it.

On your infrastructure

Culpa runs on your infrastructure. Your prompts and responses never leave it. Culpa counts calls to run your plan, and it fails open, so if it ever breaks your app keeps running.


How Culpa works

Find the culprit. Not just the total.

Your dashboard shows what you spent. It stops short of who spent it. Culpa shows the conversation, the user and the feature behind it.

Your prompts stay local.

Culpa runs on your own infrastructure. What you send to a model reaches us at no point.

Every dollar has a name.

Follow any charge to the conversation, the user, the feature and the customer behind it.

See the bill before it lands.

Cost your next feature before you ship it. You get the likely bill and the worst case, at best, median, p90 and p99.

Three steps to your first answer.

1

Change one base URL.

Or drop in the Python or TypeScript library.

2

Find your most expensive conversation.

In the first session, not the first week.

3

Cost your next feature before you ship it.

Base URLhttp://localhost:4545/v1Your traffic keeps flowing if Culpa ever stops.

Why the bill went up

Example dashboard

Calls traced

418,209

across 3 projects

Spend this week

$378.41

+ $182 vs last week

Failed calls

312

74% retried, and you paid for all of them

+ $182 this week traced to one culprit

Spend over 14 days

$0$20$40$60$8024262830020406
user_384report_generatorconv_91fprompt_v1894,220 tokens3 retries$6.81

Most expensive users

user_384$38.42
user_119$21.07
user_562$14.90
user_204$8.30
user_871$5.10

Next week forecast

Best$180
Median$240
p90$310
p99$395

Graded against reality. Accuracy shown as results land.

Free, no card, no account

Run the free Cost Leak Scan

It shows your most expensive conversation before you install anything.

Run a free scan

Keep reading


Sources: Anthropic pricing. Last reviewed 2026-08-01. Plain text version.