The five numbers
- Input tokens per call. System prompt plus user input plus any retrieved context. One token is roughly four characters of English.
- Output tokens per call. Your
max_tokenscap, or a typical response length if you have not set one. Set one. - Input price and output price for your model, per million tokens. Use current numbers, not remembered ones: the free live LLM pricing feed at useweckr.com/pricing.json exists for exactly this.
- Calls per active user per month. Your weakest guess. Write it down explicitly so it can be argued with.
cost_per_call = (input_tokens / 1e6) * input_price
+ (output_tokens / 1e6) * output_price
cost_per_user_month = cost_per_call * calls_per_user_monthWorked example: a support ticket summarizer
On gpt-5.4-mini ($0.75 input, $4.50 output per million): a 1,200 token system prompt plus an 800 token ticket in, about 350 tokens out.
input: 2000 / 1e6 * 0.75 = $0.001500
output: 350 / 1e6 * 4.50 = $0.001575
cost_per_call = $0.003075 (about a third of a cent)An active user summarizing 8 tickets a day over 20 working days makes 160 calls:
160 * $0.003075 = $0.49 per active user per monthOn a $19 plan that is a comfortable margin. But present it as the range it really is: a light user at 80 calls costs about $0.25, the typical user $0.49, a heavy user at 400 calls about $1.23. And a runaway loop that re-summarizes forever is not on this chart at all, which is what LLM spending caps are for.
The three honesty rules
- Never one number. A point estimate hides the assumption that drives it. Light, typical, heavy, with calls per user stated next to each.
- Respect output prices. Output is five or six times input on most current models and often dominates the bill. Note where output is more than half your per call cost, because that is where a tighter cap pays.
- Account for caching and growth. A repeated system prompt priced at the cached input rate can cut input cost heavily, and a chat history that grows each turn costs more than the first call suggests. Both belong in the estimate, not the postmortem.
Or let your assistant do it
This method is mechanical enough to delegate. The free Weckr Claude Skills include a cost estimator: ask Claude Code “how much will this summarizer cost per user?” and it reads the actual call in your code, estimates the tokens, applies current prices from the live feed, and returns the same math you just read, as a range, with assumptions stated. Two commands to install:
/plugin marketplace add Ghiles3232/weckr-sdks
/plugin install weckr@weckrFrom forecast to fact
An estimate answers can we ship it. It cannot answer what is it actually costing, because real users are a distribution and the expensive ones hide behind averages. The follow up is measuring AI cost per userin production and comparing it to each user’s plan, which is the audit described in calculating margin per user.
FAQ
How do I estimate what an AI feature will cost before launch?
Break it into five numbers: input tokens per call, output tokens per call, price per million tokens for each, and calls per user per month. Multiply the tokens by the prices for cost per call, multiply by monthly calls for cost per user, and always present the result as a range across light, typical, and heavy users rather than a single figure.
How many tokens is my prompt?
Rough rule: one token is about four characters of English, or about three quarters of a word. Sum your system prompt, the user input, and any retrieved context for input tokens. For output, use your max_tokens cap or a typical response length. A 1,200 word prompt is roughly 1,600 tokens. Precision beyond that rarely changes the decision.
What is the biggest source of error in AI cost estimates?
Calls per user per month, by far. Token counts are usually within two times of your guess, but usage per user routinely varies ten times or more between a light user and a power user. That is why a single point estimate is dangerous: the average can be fine while the heavy tail loses money on every call.
Why do output tokens matter more than input tokens?
Because providers price output several times higher than input. On gpt-5.4-mini output is six times input, on Claude Sonnet 4.6 it is five times. A feature that generates long responses is often dominated by output cost, which also means an output cap like max_tokens is usually the single cheapest cost control you can add.
Can my AI assistant do the estimate for me?
Yes. The free Weckr Claude Skills include a cost estimator: ask Claude Code how much will this feature cost per user and it reads your actual code, estimates tokens, applies current prices from a live feed, and shows the math as a range with stated assumptions. Install with plugin marketplace add Ghiles3232/weckr-sdks then plugin install weckr@weckr.
Keep reading
Ship it, then watch the real number
Weckr picks up where the estimate stops: it records the real cost of every call, per user and per feature, against what each user pays, so the forecast gets checked by production instead of by the invoice. Try the break even calculator with your own plan price, click through the live demo, or read the AI cost and margin guide.