Cloud vs Local: The Break-Even Point Where Self-Hosting Stops Losing Money
The Local LLM Lab - Part 14
One controlled experiment. One number. One verdict.
"Local LLMs are cheaper than the cloud" is a claim you see constantly. "The cloud is cheaper" is a claim you see just as often. Both are right, both are wrong, and the answer depends on a number most people have never calculated: their own break-even point.
The break-even point is the monthly usage at which self-hosting costs the same as the API for the same work. Below it, the cloud wins. Above it, local wins.
It is different for every person, because it depends on three things: what your hardware cost, what your electricity costs, and which cloud model you would otherwise be paying for.
I calculated mine from a metered 30-day bill and a current price sheet. Here is the method, so you can run it on your own numbers.
The local side: what the box actually costs
Two components, and only one of them scales with anything.
- Hardware amortisation. A used RTX 3090 runs โฌ800-1,200. Midpoint โฌ1,000, amortised over 36 months:
โฌ27.78/month. If you already own the card for other reasons, this is โฌ0 and the marginal cost of the inference stack is just electricity. - Electricity. This is measured, not estimated. My homelab monitor attributes power per process, and over the 30 days to 2 November the resident inference stack drew:
| Service | Energy (30d) | Cost (BGN) |
|---|---|---|
| Whisper (ASR, 24/7) | 21.73 | 5.67 |
| Text-to-speech (24/7) | 13.47 | 3.51 |
| Embedding model | 5.09 | 1.32 |
| Everything else GPU-side | 0.36 | 0.09 |
| Total | 40.65 | 10.59 |
Tariff: 0.30 BGN/kWh by day, 0.18 BGN/kWh by night (22:00-06:00). The bill above is not priced at either one on its own - it is a blend, and it works out to an effective 0.26 BGN/kWh.
If you quote a single rate against a metered figure, quote the blended one and say it is blended.
Converted at 1.95583 BGN/EUR, that bill is โฌ5.42 for the month.
So the local monthly cost is:
- You already own the card: โฌ5.42/month
- You are buying the card: โฌ27.78 + โฌ5.42 = โฌ33.20/month
Note what that number is: the whole stack, running around the clock, including every transcription queue and embedding job it handled in those 30 days. It is close to flat. It does not move much when you ask it more questions.
The part that does scale, and how I know its size
The card measures 40 W with the models resident and nothing queued - that is measured, and it is most of the month.
What it draws while actually generating I did not meter this month, so I will not pretend otherwise: the 3090's board power limit is 300 W at spec, and that is a ceiling, not a measurement.
At the day tariff, an hour pinned at that ceiling is 0.09 BGN - about โฌ0.046. Two hours a day of it adds โฌ2.76/month, putting the local side at โฌ8.18. Treat that as the worst case for a heavy user, not the typical one.
The cloud side: what the same work costs
List prices, checked against the published price sheets in early November 2026.
A "Q&A pair" is the shape of one typical assistant exchange: 500 input tokens + 200 output tokens, so 1,000 pairs is 0.5M input + 0.2M output.
| Cloud model | $/M input | $/M output | Per 1,000 Q&A pairs |
|---|---|---|---|
| Claude Sonnet 5.5 | $2.00 | $10.00 | $3.00 (โฌ2.69) |
| GPT-6.1 Sol | $2.00 | $10.00 | $3.00 (โฌ2.69) |
| Gemini 3.8 Flash | $0.75 | $3.75 | $1.13 (โฌ1.01) |
| Gemini 3.5 Flash-Lite | $0.30 | $2.50 | $0.65 (โฌ0.58) |
| Claude Haiku 5.5 | $0.10 | $0.50 | $0.15 (โฌ0.13) |
| GPT-6 Luna | $0.10 | $0.50 | $0.15 (โฌ0.13) |
Two things worth knowing before you use these.
First, on the premium models output costs 5x input, so a chatty model is a more expensive model independent of quality.
Second, several of those rates are introductory: Gemini 3.8 Flash goes to $1.50/$7.50 on 1 January, and the Google flagship that matches the premium tier doubles from $2/$10 to $4/$20 on 1 December. The cheap end of the market is not permanently cheap.
The break-even point
Set local cost equal to cloud cost and solve for pairs per month.
Case 1 - you already own the card (โฌ5.42/month flat)
| Comparing against | Break-even | Per day |
|---|---|---|
| Claude Sonnet 5.5 / GPT-6.1 Sol | ~2,000 pairs | ~67 |
| Gemini 3.8 Flash | ~5,400 pairs | ~179 |
| Claude Haiku 5.5 / GPT-6 Luna | ~40,000 pairs | ~1,340 |
Case 2 - you are buying the card (โฌ33.20/month flat)
| Comparing against | Break-even | Per day |
|---|---|---|
| Claude Sonnet 5.5 / GPT-6.1 Sol | ~12,400 pairs | ~412 |
| Gemini 3.8 Flash | ~33,000 pairs | ~1,100 |
| Claude Haiku 5.5 / GPT-6 Luna | ~247,000 pairs | ~8,200 |
Case 3 - you own the card and generate heavily (โฌ8.18/month, two hours of generation a day)
Against Sonnet-class: ~3,000 pairs/month, ~102/day. The adder moves the line, it does not move the conclusion.
What the numbers say
The break-even is not "a few times a day." It is dozens.
The claim that circulates in the local-LLM crowd - that you recoup a GPU by using a local assistant a couple of times a day - does not survive contact with a meter and a price sheet.
Against a premium cloud model, a card you already own pays for its electricity at around 67 exchanges a day. That is a real daily habit, not a casual one.
Against the cheap end, local loses outright. Haiku-class and Luna-class APIs price a Q&A pair at about โฌ0.00013. Your electricity is โฌ5.42 a month before the first token. You would need 40,000 pairs a month to break even - and 247,000 if you had to buy the hardware.
If the model you would actually use is a small fast cloud model, do not buy a GPU to save money. You will never catch up.
The hardware decision dominates everything else. Owning the card already moves the break-even from ~12,400 pairs to ~2,000 - a 6x difference, and it is decided before you send a single request.
If the GPU is already in the machine for gaming, for work, or for something else entirely, the inference stack is nearly free and the arithmetic flips in your favour. If you would be buying it for this, this article is not the reason to do it.
The honest summary
"Local is cheaper" holds if and only if:
- The card is already paid for (or is being bought for some other reason), AND
- You use it at the volume the table demands - dozens of exchanges a day against a premium cloud model, hundreds against a cheap one, AND
- The local model is accurate enough for the task.
A model that is wrong half the time is not cheaper. The cost of a wrong answer does not appear on either side of this equation, and it is usually the largest number in it.
The profile where local genuinely wins is narrower than the community likes to admit: someone who owns a 3090 anyway, runs a local assistant as a daily tool, and is otherwise paying premium-tier API rates. That person is over the break-even line by a wide margin and should keep the box running.
The profile where it loses is the one most often arguing for it: someone considering a first GPU purchase, comparing it against a cheap fast cloud model. That comparison is not close.
Run it on your own numbers
Four inputs, one division:
- Hardware: purchase price รท 36. Zero if you own it.
- Electricity: meter it for 30 days. Do not estimate from a spec sheet's TDP - my stack's real figure is the difference between a card idling warm and a card doing work, and the idle warm part is most of the month.
- Cloud price: your actual model, at the input/output token split your actual usage has. Not the model you wish you were using.
- Break-even: monthly local cost รท cost per 1,000 pairs ร 1,000.
The result is a number of exchanges per month. Compare it against what you really do in a month, and you have your answer - which is the only answer that was ever yours to have.
Verdict
If you own the card, you break even against a premium cloud model at roughly 2,000 Q&A pairs a month - about 67 a day. Against a cheap cloud model, 40,000. If you are buying the card, multiply those by six.
The card in my machine cost me โฌ5.42 in electricity last month. Whether that was cheap or expensive depends entirely on which row of that table I would otherwise be paying for - and now I know which row I am in.
The Local LLM Lab is a series of measured experiments on a home GPU stack. The electricity figures here are pulled from 30 days of per-process power attribution on the box; the cloud figures are published list prices as of early November 2026, and several of them change on 1 December or 1 January.
Comments
No comments yet. Start the discussion.