OpenProfit

· Raphael Morency

AI token cost per user: how to work it out before you price

On a $20 plan, a user who sends 20 chat messages a day to Claude Sonnet 5.5 costs you about $5 a month in tokens. A user who also runs five agent tasks a day costs about $62. Both pay $20, and your OpenAI or Anthropic bill shows one total for the two of them.

You can work out the cost of each user before you set a price, with four numbers per feature and the model's price list.

The formula

Each API call costs its input tokens at the input price plus its output tokens at the output price:

Cost of one call = input tokens × input price + output tokens × output price
Cost per user per month = calls per month × cost of one call

Prices are per million tokens, so divide by 1,000,000. If you use prompt caching, add a line for cached input, which the provider bills at a lower rate when you resend the same prompt prefix.

Claude and OpenAI API pricing in October 2026

Standard prices per million tokens, from the Claude pricing page and the OpenAI pricing page on October 19, 2026:

Model Input Cached input Output
Claude Opus 5.5 $4.00 $0.20 $20.00
Claude Sonnet 5.5 $2.00 $0.10 $10.00
Claude Haiku 5.5 $0.10 $0.01 $0.50
GPT-6 Astra $10.00 $1.00 $50.00
GPT-6.1 Sol $2.00 $0.10 $10.00
GPT-6 Luna $0.10 $0.01 $0.50

Haiku 5.5's price applies to prompts up to 100,000 tokens, and Claude's cache reads assume the five-minute cache. Output costs five times the input on each model here, so a feature that writes long answers costs more than one that reads long documents.

Three features, priced

Take three common features and an estimate of their tokens per call:

Feature Input tokens Output tokens Sonnet 5.5 Haiku 5.5 Opus 5.5
Chat reply 2,000 500 $0.009 $0.0005 $0.018
Summary of a 20-page document 20,000 1,000 $0.05 $0.0025 $0.10
Agent task, 10 steps 150,000 8,000 $0.38 $0.019 $0.76

GPT-6.1 Sol costs the same as Sonnet 5.5 on these calls, and GPT-6 Luna the same as Haiku 5.5.

The agent task costs about 40 times a chat reply because each step sends the conversation so far back to the model. Ten steps over a context that grows to 25,000 tokens add up to 150,000 input tokens. A long chat thread grows the same way, so measure your own average instead of using 2,000.

Light, typical and heavy users

Put the three features on a $20 monthly plan built on Sonnet 5.5:

User Usage per month Token cost Left from $20 after Stripe's fee
Light 150 chat replies $1.35 $17.63
Typical 600 chat replies and 10 summaries $5.90 $13.08
Heavy 600 chat replies and 150 agent tasks $62.40 −$43.42

Stripe's fee on a $20 subscription paid with a US card is 2.9% + 30¢ plus 0.7% for Stripe Billing, or $1.02.

One heavy user wipes out the margin of more than three typical users. If a few users drive most of your token spend, your average cost per user looks fine while those few lose you money. Sort users by cost and check your top 10% before you look at the average.

Measure it in your own app

Your provider's usage page shows spend by project, workspace or API key, by day. You won't find your users there. Each API response includes its token counts, so record them next to the user who made the call:

Store one row per call with the user, the feature, the model and those counts. Multiply by the price table once a day, and you have cost per user, per feature and per plan. Compare the total with your provider's usage page each month, and you'll catch calls your logging missed.

Keep heavy users profitable

Once you know the cost per user, you can cut it or make heavy users pay for it in five ways:

Watch the total for each app

Your per-user log shows who costs what. The provider's total is what you pay, and it includes retries, failed calls and test traffic your log may skip.

OpenProfit reads that total from OpenAI, Anthropic, OpenRouter and xAI every day, split by project, workspace or API key, and puts it next to the app's revenue from Stripe or Polar. You see each app's margin after tokens, and OpenProfit alerts you by email, Slack or SMS when a provider's daily spend doubles against its average for the week before. Claude API usage and costs by workspace and OpenAI usage dashboard by project show what each connector reads.

See revenue, costs and profit for every product you run.