AI, LLM & Machine Learning Engineering Training & Fine-Tuning Compute Fixed-versus-variable cost break-even analysis

Fine-Tuning vs Long-Prompt Break-Even Calculator

Fine-tuning trades a one-off training bill, and usually a higher per-token serving rate, against never sending your few-shot examples again. Whether that trade pays depends entirely on request volume. This calculator takes your training cost, the prompt tokens fine-tuning would let you drop, the base and fine-tuned rates and your monthly volume, then returns the cost of each path, the request count at which they cross, and how long it takes to recover the training spend.

Calculator

This calculator runs in your browser. Enable JavaScript for live results — the inputs, formula and worked example below remain fully readable without it.

Inputs this calculator takes, with typical values
InputWhat to enterExample
Fine-tuning training costOne-off cost of the training run, including the epochs you expect to need. Add GPU hours here if you train it yourself.300 $
Fine-tuned serving rate per 1M tokensBlended price for the fine-tuned model. Hosted fine-tunes often carry a premium over the base model.6 $
Prompt tokens fine-tuning removesFew-shot examples and extended instructions you would stop sending once the behaviour is in the weights.4000 tok
Tokens both paths still sendThe unavoidable tokens per request: the user's message, retrieved context and the reply.1000 tok
Base model rate per 1M tokensBlended price for the un-fine-tuned model you would otherwise prompt.3 $
Requests per monthRequests that would carry the long prompt, or hit the fine-tuned model.200000

It returns

  • Break-even request count — Cumulative requests at which fine-tuning has repaid its training cost.
  • Monthly cost with the long prompt
  • Monthly serving cost fine-tuned
  • Monthly difference — Long-prompt cost minus fine-tuned serving cost, before the training charge.
  • Months to recover the training cost
  • Net difference over twelve months

The formula

N*=T(tebt0(fb))/106
mrecover=TRδ

In plain text: Break-even requests = training cost ÷ [(extra tokens × base rate − base tokens × (fine-tuned rate − base rate)) ÷ 1,000,000]

  • N*Cumulative requests at which the two paths cost the same (requests)
  • TOne-off fine-tuning training cost ($)
  • t_ePrompt tokens fine-tuning removes from every request (tokens)
  • t_0Tokens both paths still send per request (tokens)
  • bBase model blended rate per million tokens ($ / 1M tok)
  • fFine-tuned model blended rate per million tokens ($ / 1M tok)

The denominator is the per-request difference: what you stop paying for dropped prompt tokens, minus the serving premium you start paying on the tokens that remain. If it is zero or negative, no request count repays the training cost.

Updated Category Training & Fine-Tuning Compute Verified against published test cases Reading time 11 min

The trade fine-tuning actually offers

Both paths get the model to behave the way you want. The long-prompt path pays for that behaviour on every single request, in tokens: a block of few-shot examples and extended instructions that is re-sent, re-read and re-billed each time. The fine-tuning path pays for it once, in a training run, and then serves shorter requests forever.

That is a classic fixed-versus-variable trade, so it has a break-even and the break-even is measured in requests. Below it the long prompt is cheaper because the training bill has not been amortised. Above it the fine-tune is cheaper because each request costs less.

What makes the comparison less obvious than it looks is a second, opposing term. Hosted fine-tuned models frequently carry a higher per-token rate than the base model they came from, and that premium applies to every token you still send — the user's message, the retrieved context and the whole reply. So fine-tuning does not simply remove cost; it removes the prompt block and adds a surcharge on everything else.

The per-request difference is therefore a subtraction of two effects:

δ = (tokens removed × base rate − tokens remaining × rate premium) ÷ 1,000,000

When δ is positive, fine-tuning is cheaper per request and break-even exists. When δ is zero or negative, no volume repays the training cost, and any case for fine-tuning has to be made on quality or latency instead. That sign check is the first thing to run, and it is the thing spreadsheets usually miss because they compare the prompt saving against zero rather than against the premium.

Working the formula through

Write the cumulative cost of each path over N requests. Let t₀ be the tokens both paths send, t_e the extra prompt tokens only the prompting path sends, b the base rate and f the fine-tuned rate, both per million tokens.

Prompting: N × (t₀ + t_e) × b ÷ 10⁶

Fine-tuned: T + N × t₀ × f ÷ 10⁶

Set them equal and solve for N:

N* = T ÷ [(t_e·b − t₀(f − b)) ÷ 10⁶]

The bracket is δ, the per-request difference, and it decomposes cleanly. The first term, t_e·b, is the saving from tokens you no longer send. The second, t₀(f − b), is the premium on the tokens you still send. Break-even is the training cost divided by their difference.

Three implications follow.

A long request makes fine-tuning worse, not better. Raising t₀ — longer replies, more retrieved context — raises the premium term while leaving the saving term untouched. Teams often assume that a token-heavy workload strengthens the case for fine-tuning; when the fine-tuned rate carries a premium, it weakens it.

When the two rates are equal, the premium term vanishes and break-even is simply T ÷ (t_e·b ÷ 10⁶) — training cost divided by the value of the prompt tokens you removed. This is the case for models you host yourself, where a LoRA adapter serves at the same cost as the base model.

Break-even scales linearly with training cost. Doubling the epochs doubles the requests you need. A cheap adapter train on a few thousand examples has a break-even most production endpoints clear in days; a full-parameter fine-tune of a large model may never clear it.

To estimate the training side from first principles rather than from a vendor quote, use the training compute calculator and the GPU hours cost calculator.

Worked example: dropping a 4,000-token few-shot block

Your classifier prompt carries 4,000 tokens of few-shot examples. The rest of the request — the document to classify and the short answer — is about 1,000 tokens. The base model blends to $3.00 per million; the hosted fine-tune of it blends to $6.00. A fine-tuning run on your labelled set costs $300. You serve 200,000 requests a month.

  1. Cost per request with the long prompt. (1,000 + 4,000) = 5,000 tokens; 5,000 × $3.00 ÷ 1,000,000 = $0.015.
  2. Cost per request fine-tuned. 1,000 × $6.00 ÷ 1,000,000 = $0.006.
  3. Difference per request. $0.015 − $0.006 = $0.009. Decomposed: you save 4,000 × $3 ÷ 10⁶ = $0.012 on dropped tokens and pay 1,000 × $3 ÷ 10⁶ = $0.003 of premium on the rest.
  4. Break-even. $300 ÷ $0.009 = 33,333 requests.
  5. Monthly cost, long prompt. 200,000 × $0.015 = $3,000.
  6. Monthly cost, fine-tuned serving. 200,000 × $0.006 = $1,200.
  7. Months to recover. $300 ÷ $1,800 per month = 0.17 months, about five days.
  8. Net over twelve months. 12 × $1,800 − $300 = $21,300.

At this volume the decision is easy. Now cut the volume to 5,000 requests a month: the monthly difference is 5,000 × $0.009 = $45, and recovering $300 takes 6.7 months. The same fine-tune, the same rates, an entirely different decision — which is why volume is the input that matters most.

Now add prompt caching to the comparison. If the 4,000-token block is cached and read at a 0.1× multiplier, its effective rate is $0.30 per million, so the saving term falls to 4,000 × $0.30 ÷ 10⁶ = $0.0012 while the premium term stays at $0.003. δ becomes $0.0012 − $0.003 = −$0.0018: the cached long prompt is now the cheaper path at every volume, and fine-tuning never repays its training cost on price. Work out your own cached rate with the prompt caching savings calculator before you commit to training.

How to read the result

Check the sign of the per-request difference before anything else. If it is negative the calculator reports no break-even, and that is the correct answer rather than a missing number: at those rates the fine-tuned path costs more on every request, so more volume makes it worse. The lever is either a smaller serving premium — self-hosting an adapter, or a provider that does not charge one — or a larger prompt block to remove.

Compare break-even against a horizon, not against your total traffic. Anything you clear within a month or two is straightforward. A break-even measured in years is a bet that the model, the prices and the task all stay still for years, and none of them has. The calculator warns when break-even exceeds twelve months of your current volume.

Months to recover is the number to put in front of a budget owner. It converts a request count into a time, and it makes the volume sensitivity obvious: halving traffic doubles the payback period exactly.

Remember what the training cost excludes. The figure you enter should cover the runs you actually make, not the one you hope to make first time — data preparation, a failed hyperparameter choice, evaluation and at least one retrain are normal. And fine-tuning is not a one-off in practice: when the base model is deprecated or your task drifts, you train again. A fine-tune with a six-month payback and a three-month useful life does not pay back.

The quality axis is not in this calculation and often outranks it. Fine-tuning can produce behaviour that no prompt reliably elicits, particularly for strict output formats, domain vocabulary and consistent tone. It also shortens prompts, which cuts latency — see the throughput and latency calculator for how prompt length maps to time to first token. When either matters, cost is a constraint rather than the decision.

Break-even request count by training cost and per-request difference

Each cell is training cost ÷ difference per request. The difference is what you save on dropped prompt tokens minus the serving premium on the tokens that remain.
Training cost$0.0015 / request$0.003 / request$0.009 / request$0.02 / request
$10066,66733,33311,1115,000
$300200,000100,00033,33315,000
$1,000666,667333,333111,11150,000
$5,0003,333,3331,666,667555,556250,000

For scale, $0.009 per request is the worked example: a 4,000-token block dropped at $3 per million, less a $3 premium on 1,000 remaining tokens. A per-request difference of $0.0015 is what a modest 500-token block at $3 per million yields with no serving premium.

The serving premium applies to the reply, not just the prompt

It is easy to model the fine-tuned rate as applying only to input tokens, because the prompt is what fine-tuning changes. It is not: the premium applies to every billed token, and on a generation-heavy workload the reply may be most of them. A summarisation endpoint that sends 500 tokens and returns 2,000 pays the premium on 2,500 tokens while saving only on the few-shot block it dropped. Put the full input-plus-output count in the tokens-both-paths-send field, and blend the rates over your real input-to-output mix — the token cost calculator gives that breakdown.

What this comparison leaves out

  • Data preparation. Assembling, cleaning and labelling training examples is usually the largest real cost of a fine-tune, and none of it appears on a GPU bill.
  • Evaluation. You need a held-out set and a way to score it to know the fine-tune is better rather than merely different. Build that before training, not after.
  • Retraining. Base models are deprecated and tasks drift. Amortise the training cost over the fine-tune's realistic life, not over an unlimited horizon.
  • Hosting minimums. Some providers charge to keep a fine-tuned model deployed regardless of traffic, which is a fixed monthly cost this model does not include. Add it to the training cost divided by the months you expect to run.
  • Quality differences in both directions. A fine-tune can be better at the task and worse at everything else. If one endpoint handles several jobs, a narrow fine-tune may need a router in front of it.
  • Prompt caching on the other side. A cached few-shot block is far cheaper than an uncached one, which moves break-even sharply. Compare against the cached alternative, not the naive one.

The order to try things in

Fine-tuning is rarely the first thing to reach for, because three cheaper interventions attack the same cost and take hours rather than days.

Prune the prompt. Few-shot blocks accumulate. Measure how many examples actually change the output — often a fraction of what is there — and delete the rest. This costs nothing and reduces the very term fine-tuning is supposed to remove.

Cache what remains. A static block read at a fraction of the base rate is close to free, and as the worked example shows it can reverse the fine-tuning decision outright. Caching is a configuration change; fine-tuning is a project.

Try a smaller model with the long prompt. A cheaper base model carrying the full few-shot block sometimes beats a fine-tuned larger one on both cost and quality, and it costs one afternoon to test.

After those, fine-tuning earns its place in three situations: when the behaviour cannot be prompted reliably at any prompt length; when latency matters and the prompt is long enough that prefill is the bottleneck; and when volume is high enough that even a modest per-request difference clears the training cost quickly. The first two are quality and latency arguments that this calculator does not price. The third is exactly what it prices.

Finally, put the answer in business terms. A monthly saving is an infrastructure number; the question a pricing decision turns on is cost per user and gross margin. Feed the reduced per-request cost into the cost per user per month calculator to see whether the fine-tune moves the line that actually matters.

Frequently asked questions

Why can there be no break-even at all?

Because the fine-tuned serving premium can exceed the prompt saving. You save the dropped prompt tokens at the base rate, but you pay the rate difference on every token that remains, including the reply. If tokens remaining × premium is larger than tokens dropped × base rate, each fine-tuned request costs more, and more volume increases the loss rather than repaying the training cost. The fix is a lower serving rate or a larger prompt block to remove.

What should I put in the training cost field?

The full realistic cost of getting a usable model: the training runs you expect to make including at least one that does not work, and the GPU hours if you train it yourself. Data preparation and labelling dominate in practice but sit outside the token arithmetic — count them separately when deciding, and be aware that the payback period this page reports ignores them.

Does fine-tuning always let me delete the few-shot examples?

Usually most of them, not always all. A fine-tuned model has learned the task's shape, so the examples that were demonstrating format and tone become redundant. Instructions covering edge cases and any dynamic content still need to be sent. Measure what you can actually remove on a held-out set before entering a number here, because an optimistic token count moves break-even in exactly the wrong direction.

How does prompt caching change the answer?

Substantially, and usually against fine-tuning. Caching prices the static few-shot block at a fraction of the base rate, so the saving from removing it shrinks by the same fraction while the serving premium stays put. In the worked example, caching at a 0.1× read multiplier turns a $0.009 per-request advantage into a $0.0018 disadvantage. Always compute the cached baseline before committing to a training run.

Is a LoRA adapter cheaper than a full fine-tune?

Considerably, on both sides of this calculation. Training updates a small number of adapter parameters rather than all of them, so the GPU hours are a fraction of a full fine-tune. And if you serve the adapter yourself on the base model, there is no serving premium at all, which removes the term that most often blocks break-even. Enter the adapter's training cost and set the fine-tuned rate equal to the base rate to model it.

What if I need the fine-tune for quality rather than cost?

Then this calculator tells you the price of that decision rather than whether to make it. Read the twelve-month net figure as the cost of the quality improvement: if it is negative, that number is what better behaviour is costing you, and the question becomes whether it is worth it. Many fine-tunes are justified this way, and being explicit about the number is more useful than constructing a cost case that does not hold.

How long does a fine-tune stay useful?

Until the base model is deprecated or your task changes, whichever comes first. Both happen faster than most plans assume. Amortise the training cost over that realistic life rather than an open-ended horizon: a fine-tune with a nine-month payback on a base model you expect to migrate off within the year is a loss, even though the arithmetic on an infinite horizon looks positive.

Should I count input and output tokens together?

Yes, in the tokens-both-paths-send field, with a rate blended across your real mix. The serving premium applies to output as much as to input, so a generation-heavy workload carries more premium than a prompt-heavy one of the same total size. Blending the rates keeps a single multiplication valid; keeping input and output separate requires two terms and gives the same answer.

References