What LLM Inference Actually Costs Per Email

The short answer
Triaging one email costs between roughly a tenth of a cent and a cent in tokens; drafting a reply costs two to three times more. The email body is only 200 to 400 tokens. The system prompt, tool schemas, thread history and personal context around it are 3,000 to 6,000, and that is what you actually pay for.
How much does LLM inference cost per email? Roughly a cent to triage, two to three to draft — and your arrival pattern moves it more than the model.
On this page
- 01The short answer: what one email costs
- 02How many tokens is an average email?
- 03Where the tokens actually go
- 04The four things that decide your bill
- 05Which cost lever is worth pulling
- 06Worked example: one inbox for a month
- 07What that means per user, per month
- 08Why AI email tools cap usage
- 09Red flags when someone quotes you a cost per email
- 10What we would pick, and who should pick something else
How much does LLM inference cost per email has a real answer, and it is smaller than most buyers guess and larger than most vendors imply. As of August 2026, triaging one message costs a fraction of a cent. Drafting a reply costs a few times that.
The interesting part is not the headline number. It is that the same email, on the same model, with the same prompt, can cost three times more or less depending on a variable almost no comparison mentions: whether your mail arrives in clusters or one message at a time.
This post walks a single email from raw text to a line on a provider invoice, so you finish with arithmetic you can redo yourself when list prices move — which they do.
The short answer: what one email costs#
Below is a worked cost for two jobs — classifying one incoming message, and writing one reply to it — across three model tiers, with and without a warm prompt cache. The token budgets behind these figures are broken out in the next two sections, so you can substitute your own.
The rates used are round rungs, not quotes: 1, 3 and 10 dollars per million input tokens, with output at five times input. Provider list prices cluster near those rungs, but take the current figure from the provider page before you plan against it.
| Job | Small tier | Mid tier | Frontier tier |
|---|---|---|---|
| Triage one message, warm cache | $0.0014 | $0.0042 | $0.014 |
| Triage one message, no caching | $0.0037 | $0.011 | $0.037 |
| Draft one reply, warm cache | $0.006 | $0.017 | $0.058 |
| Draft one reply, no caching | $0.008 | $0.024 | $0.081 |
How many tokens is an average email?#
There is no single number, but there is a reliable conversion. Anthropic publishes the working estimate that one token is about four characters, or about 0.75 words, in English. Multiply your word count by roughly 1.3 and you are close enough to budget with.
That puts almost every real email in a narrow band. The body of a message is rarely the expensive part of the request, which is the whole point of the section after this one.
| Message | Approximate tokens |
|---|---|
| One-line reply, 15 words | 20 |
| Short business email, 60 words | 80 |
| Typical email, 150 words | 200 |
| Long email with signature and quoted trail, 400 words | 530 |
Tokens per email are a property of the model, not the message
Where the tokens actually go#
An agent does not send the model an email. It sends a request that contains instructions, the actions it is allowed to take, what it knows about you, the thread so far, and then the email. The message is usually under five percent of the input.
Here is a realistic budget for the two jobs. Yours will differ, but the shape will not: a large fixed block that repeats on every request, and a small variable block that is the actual mail.
| Request component | Triage | Draft | Repeats every request |
|---|---|---|---|
| System prompt and action allowlist | 800 | 800 | Yes |
| Tool schemas the model can call | 500 | 500 | Yes |
| Rules and personal context summary | 1,200 | 1,200 | Yes |
| Client profile and style rules | — | 1,500 | No |
| Thread history | 600 | 1,800 | No |
| The message itself | 250 | 250 | No |
| Total input | 3,350 | 6,050 | 2,500 repeat |
| Output | 60 | 400 | — |
The four things that decide your bill#
Once you have the budget above, four variables move the number. They are worth understanding in this order, because the first one is bigger than the other three and gets discussed the least.
- Cache hit rate. The 2,500-token repeating block can be served from cache at a tenth of the input rate — but only if a previous request wrote it and the cache has not expired.
- Model tier. Across the published ladder, base input rates span roughly an order of magnitude. Triage and drafting do not need the same tier.
- The input-to-output split. Email is a long-input, short-output workload. Output is priced several times higher per token, but there is so little of it that the output rate barely moves the total.
- Whether the work can wait. Both major providers publish an asynchronous batch tier at half the standard rate on input and output alike.
| Modifier | Effect on the rate | Where it is published |
|---|---|---|
| Cache read, a hit | 0.1x base input | Anthropic pricing docs; OpenAI publishes a comparable discounted cached-input rate |
| Cache write, 5-minute lifetime | 1.25x base input | Anthropic pricing docs |
| Cache write, 1-hour lifetime | 2x base input | Anthropic pricing docs |
| Batch or async tier | 0.5x input and output | Published by both providers |
| Priority or fast serving | Around 2x standard | OpenAI fast tier; Anthropic fast mode on its top models |
| Regional data residency | 1.1x on every token category | Anthropic pricing docs; OpenAI publishes a comparable uplift |
A cold cache costs more than no cache at all
Which cost lever is worth pulling#
Not all savings are the same size, and the cheapest ones to implement are usually the smallest. This is the honest ordering.

| Lever | Effect on cost per email | Effort | Where it backfires |
|---|---|---|---|
| Route triage to a small model | Cuts triage by about two thirds | Low | Small models miss edge cases; you need an escalation path |
| Prompt caching on a stable prefix | Cuts warm requests by about 60 percent | Medium | Costs more when every request is a cold write |
| Batch the non-urgent half | Halves input and output | Medium | Cannot batch anything a human is waiting on |
| Retrieve thread context instead of sending it all | Cuts 20 to 40 percent of input | Medium | Over-trimming produces replies that miss the thread |
| Cap output length, skip extended reasoning | A few percent | Low | High per-token rate, tiny share of volume |
| Prune unused tool schemas | One to two percent | Low | Free, but do it last |
Worked example: one inbox for a month#
Take 1,000 incoming messages. Triage all of them; draft a reply to 15 percent. The strategy you pick moves the total by more than a factor of ten on identical mail.
| Setup | Triage 1,000 | Draft 150 | Total per 1,000 emails |
|---|---|---|---|
| Small-tier triage, mid-tier drafting, warm cache | $1.40 | $2.61 | $4.00 |
| Mid tier throughout, warm cache | $4.20 | $2.61 | $6.80 |
| Mid tier throughout, no caching | $10.95 | $3.62 | $14.60 |
| Frontier tier throughout, no caching | $36.50 | $12.08 | $48.60 |
What that means per user, per month#
Now scale it by inbox volume. This is the table that explains most of the pricing behaviour you see in this category.
| Inbox volume | Split routing, cached | Mid tier, cached | Frontier, no caching |
|---|---|---|---|
| 30 messages a day, about 900 a month | $3.60 | $6 | $44 |
| 80 messages a day, about 2,400 a month | $9.60 | $16 | $117 |
| 200 messages a day, about 6,000 a month | $24 | $41 | $291 |
Why AI email tools cap usage#
Read the bottom-right cell again. A heavy user running frontier inference with no caching consumes several times a typical seat price in raw tokens before anyone has paid for engineering, storage, sync or support.
That is the entire explanation for usage caps, credit systems and tier-gated AI. A flat seat price is an average bet, and email volume is not distributed evenly — a small share of users generate a large share of messages. Vendors either cap, meter, route to cheaper models, or quietly lose money on their best customers.
The structural moves in this market follow the same logic. Google folded Gemini into Workspace business plans with a per-seat rise; Microsoft made Business Standard and Premium with Copilot permanent SKUs after its July 2026 price change; Superhuman moved AI into a higher business tier post-acquisition; and the helpdesk tier went metered per resolution.
None of that is a pricing trick. It is what happens when a variable cost sits underneath a fixed price.
Red flags when someone quotes you a cost per email#
Most published per-email figures are technically true and practically useless, because they omit the variable that moved them.
- A per-email price with no model tier named. The same prompt spans a tenfold range across the published ladder.
- A per-email price that excludes thread history. Triaging a fresh message and triaging the ninth reply in a thread are not the same request.
- Unlimited AI with no published cap. There is always a fair-use clause; ask to see it in writing before you plan volume around it.
- Credits with no token disclosure. A credit that does not say how many tokens it buys is a unit of account, not a unit of measure. Ask what one triage and one draft consume.
- No answer on whether prompt caching is enabled. It is the biggest single lever and a vendor that has not implemented it is paying two to three times more than it needs to — which eventually reaches you.
Measure before you negotiate
What we would pick, and who should pick something else#
Start with the concession, because for a lot of readers it ends the decision. If you already pay for Microsoft 365 or Google Workspace on a tier where Copilot or Gemini is bundled, your marginal token cost for basic drafting help is zero. Nothing in the arithmetic above beats a cost you have already paid. If drafting assistance inside the mail app you already use is genuinely all you want, stop here and use what you own — the comparison worth having is assistant versus agent, and it is a capability question, not a cost one.
Second scope note: on pure token cost, a self-built pipeline wins. Small-tier triage at batch rates with a well-ordered cache prefix undercuts every subscription here. What a subscription buys is the sync engine, the approval surface, the undo path and the audit trail — not the tokens.
We build AI Emaily, so weigh the next paragraph accordingly. Our answer to this problem is the routing split the table above argues for: calls go through a gateway that picks a model by task and tier, so triage does not pay frontier rates. Usage on our keys is metered against plan caps, and bring-your-own-key is supported, with keys decrypted only in an isolated worker and never client-side or logged — which means if you want to see the raw provider invoice for your own inbox, you can. There is no permanent free tier; it is a 7-day free trial on Pro and Autopilot, card required.
We are the right pick if you want the agent to act — triage, file, draft, follow up — with approve-before-send, undo and an audit trail, across Gmail, Outlook and IMAP in one place. We are the wrong pick if your only question is token cost and you have the engineering time to build the pipeline yourself; if you need a Linux build, which we do not ship; or if you want a native-toolkit Mac client, since our desktop app is an Electron shell around the web interface and will not match a native binary on memory footprint or deep OS integration.
Frequently asked
See it in AI Emaily
Keep reading
Sources

Written by
Nafiul HasanNafiul Hasan is an entrepreneur and AI automation system builder with 10+ years of experience turning messy, manual workflows into reliable automated systems. He designs and ships AI enterprise solutions end-to-end — the agent logic, the data plumbing, and the product people actually use — and founded AI Emaily to give busy professionals their attention back. He writes here from the builder's seat: what works, what breaks, and how to put AI to work without giving up control.