FLUX local vs API: the break-even in images per day
Running FLUX yourself and buying FLUX images cross at one daily volume. This page computes it. The inputs are dated: which FLUX weights you may run at home, what a card costs, what power it draws, and what hosted rates print per image. The answer lands in images per day.
Most "local vs API" pages for FLUX stop at two sentences: local is free after the hardware, and the API bills per image. This page divides one by the other. The open FLUX you can run at home is the cheap tier, so the rate it competes with is also cheap, and cheap hosted rates push the break-even out to hundreds of images a day. The premium tier, where a card would pay back fast, is closed: those weights cannot run at home at any price.
All amounts are United States dollar amounts, written as bare numerals. This platform's two FLUX rates are never typed here; they render live from the catalog fence below. Every outside number carries its source and its read date, 28 October 2026.
The answer in three sentences
A 12 GB card bought at the 329 launch price breaks even near 167 images a day; a 1,599 top-tier card breaks even near 814. Both use the cheap fence tier, power included, on a 24 month payback. Both sit far above typical output, so for most work the hosted lane wins on money.
Before celebrating, read the premium column. Against premium per-image rates, the same 1,599 card would break even near 56 images a day. That is the case for local generation, and the row you cannot act on, because the premium weights are closed. The break-even exists only for the open model, and the open model carries the cheap hosted rate.
That asymmetry is the whole page in one line: local FLUX only competes against the open model's hosted rate.
Which FLUX can you actually run at home
The FLUX family is three tiers with three licenses, and only one clears commercial use. The schnell model card and the dev model card are the authority, read 28 October 2026.
| FLUX.1 tier | Weights | License, per its model card | Runs at home? | Card example steps |
|---|---|---|---|---|
| schnell | open download, 12B params | Apache 2.0, personal, scientific, and commercial use | yes | 4 |
| dev | open download, 12B params | non-commercial license | yes, non-commercial only | 50 |
| pro 1.1 | closed, no download | API only, no self-host offer | no | - |
Two facts fall out of that table. One: schnell is the only tier a business can self-host without a separate license deal. Two: the steps column is a cost column. The official schnell card generates in 1 to 4 steps. The official dev example runs 50 steps at 3.5 guidance. On the same card, one dev image costs roughly twelve times the compute of one schnell image, by the cards' own defaults. Dev is also the tier you cannot ship commercially. For money, schnell is the row that matters.
The publisher also sells self-host licenses by monthly quota (its pricing page, read 28 October 2026). That track covers the publisher's newer open weights: the klein (small) models in every tier, and the dev weights from the second tier up. The entry tier caps at 10,000 images a month; the page prints no price for it.
Memory is the second gate. The repository publishes the schnell file sizes, so the ladder is arithmetic:
| What you load | Size, from the repository | Card class it fits |
|---|---|---|
| Full transformer, standard precision | 23.78 GB | 24 GB |
| Text encoder, the large one | 9.52 GB | offload or quantize |
| Transformer at 8-bit precision | 23.78 / 2 = about 11.9 GB | 12 GB |
| Transformer at 4-bit precision | 23.78 / 4 = about 6 GB | 8 GB |
The 24 GB class runs standard precision. A 12 GB card runs the 8-bit build. An 8 GB card runs 4-bit with some quality loss. The official card's own example notes the offload trick for smaller cards. This matters because the 12 GB class is the volume tier: cheap to buy, big enough for 8-bit schnell.
What hosted FLUX costs per image
Hosted rates for FLUX cluster in two bands. The reads below are first-hand, from each named party's own page, on 28 October 2026, never a summary site.
| Party and model | Printed rate | Unit, as printed |
|---|---|---|
| fal, FLUX.1 schnell | 0.003 | per megapixel, rounded up |
| Replicate, flux-schnell | 3.00 per 1,000 | flat per output image |
| Replicate, flux-dev | 0.025 | per output image |
| Replicate, flux-1.1-pro | 0.04 | per output image |
| fal, FLUX 1.1 pro | 0.04 | per megapixel, rounded up |
| Together, FLUX1.1 pro | 0.04 | per megapixel |
| Together, FLUX.2 pro | 0.03 | per image |
| Together, FLUX.2 dev | 0.0154 | per image |
| publisher, FLUX 3 Image | 0.048 | per 1K-resolution image, calculator default |
| this platform, flux-1-schnell | live rate, the fence | flat per image |
| this platform, flux-pro-1.1 | live rate, the fence | flat per image |
Sources, read first-hand: fal schnell, fal 1.1 pro, Replicate, Together, the publisher.
The 0.003 pair at the top is the cheap band. The pro band prints 0.04 at three different hosts. The publisher's calculator defaults above the band, at 0.048 for FLUX 3 Image at 1K. Between the bands sit the FLUX.2 pro and dev rows at 0.03 and 0.0154, plus Replicate's flux-dev at 0.025. The FLUX.2 max row bills 0.070 per megapixel, above the pro band. Prices do not inherit, so date every rate you act on.
One warning before any math. Per-megapixel rows and flat-per-image rows mix in one family. The same numeral on a per-megapixel row is not the same money at larger sizes. Even at 1024x1024 the round-up rule can double a bill: 1024x1024 is 1.05 megapixels, and the rule bills it as 2. The math below reads P as price per image at your real size. The fuller unit decode, with the boundary case worked, lives in the image generation cost calculator.
Both platform rows bill flat per image at any size and were serving on the images lane as of 28 October 2026. First bytes on the schnell route landed in 3.1 to 4.2 seconds over seven timed requests, per the platform's ops notes. The premium route measured 6.7 seconds and carries a 60 second first-byte budget. The live rates render here from the catalog, never typed by hand:
| Model | Context | $/1M in | $/1M out | $/1M cached |
|---|---|---|---|---|
| Qwen | ||||
| qwen3.8-27b | 262K | $0.35 | $2.55 | $0.105 |
| qwen3.6-35b | 131K | $0.11 | $0.8 | $0.044 |
| Minimax | ||||
| minimax-m2.7 | 197K | $0.24 | $0.95 | $0.072 |
| Muse | ||||
| muse-glimmer-30b | 131K | $0.28 | $1.2 | $0.084 |
| Ornith | ||||
| ornith-1.5-35b | 100K | $0.35 | $2.55 | $0.105 |
| ornith-1.5-9b | 100K | $0.1 | $0.3 | $0.03 |
| Glm | ||||
| glm-5.3-flash | 1049K | $0.11 | $0.35 | $0.033 |
| Deepseek | ||||
| deepseek-v4-flash-0731 | 1311K | $0.15 | $0.42 | $0.045 |
| Gemma | ||||
| gemma-4-31b-it | 262K | $0.22 | $0.49 | $0.066 |
| Deepseek | ||||
| deepseek-v4-pro | 1000K | $1.13 | $2.21 | $0.339 |
| deepseek-v4.1-flash | 1000K | $0.19 | $0.71 | $0.06 |
| deepseek-v4.1-flash-1017 | 1049K | $0.16 | $0.65 | $0.003 |
| Glm | ||||
| glm-5.3 | 1000K | $1.32 | $4.25 | $0.4 |
| Flux | ||||
| flux-1-schnell | — | $0.003/image | ||
| flux-pro-1.1 | — | $0.04/image | ||
| Chatterbox | ||||
| chatterbox-tts | — | $25/1M chars | ||
| Kokoro | ||||
| kokoro-tts | — | $15/1M chars | ||
| pocket-tts | — | $16/1M chars | ||
| Audio | ||||
| audio8-tts | — | $8/1M chars | ||
| Hayamimi | ||||
| hayamimi-stt | — | $0.6/audio-hr | ||
| Bge | ||||
| bge-m3 | — | $0.05/1M tokens | ||
| bge-reranker-v2-m3 | — | $1.5/1k searches | ||
| Ocr | ||||
| ocr-print | — | $1/1k pages | ||
| ocr-archival | — | $3/1k pages | ||
| Whisper | ||||
| whisper | — | $0.12/audio-hr | ||
| Iab | ||||
| iab-2x | — | $0.7/1k pages | ||
| iab-3x | — | $0.7/1k pages | ||
| Gliner | ||||
| gliner-extract | — | $0.9/1k searches | ||
| Jev | ||||
| jev-fast | 1K | $0.03 | $0 | — |
| jev-causal | 1K | $0.03 | $0 | — |
| jev-batch | 1K | $0.03 | $0 | — |
| Wemm | ||||
| wemm-embed | — | $0.09/1M tokens | ||
| Molmo | ||||
| molmo2-er | 8K | $1 | $5 | $0.5 |
| Cosmos | ||||
| cosmos-reason2-2b | 4K | $0.1 | $0.4 | $0.05 |
| Sam | ||||
| sam2.1-base | — | $0.02/image | ||
| Da | ||||
| da3-small | — | $0.05/image | ||
| Smolvla | ||||
| smolvla | — | $0.001/call | ||
| Openvla | ||||
| openvla-oft | — | $0.006/call | ||
| Act | ||||
| act | — | $0.001/call | ||
The break-even, worked row by row
The break-even point is the daily image count D* where a day of hosted spend equals a day of hardware payback:
D* = [ G / (30 x A) ] / [ P - (E / 1000) x R x (S / 3600) ]
| Variable | Meaning | Values used here |
|---|---|---|
| G | what the card cost you | 329, 1,499, or 1,599, launch list anchors below |
| A | payback window in months | 24 |
| E | card power draw in watts | 170, 350, or 450, maker spec pages |
| R | power price per kWh | 0.182, the 2026 United States home average |
| S | seconds per image | 12 or 30, labeled speed tiers |
| P | hosted rate per image | the fence rate, never typed |
The spec numbers come from the maker: 170 W board power for the 12 GB class, 350 W for the 24 GB second tier, and 450 W for the 24 GB top tier, each read 28 October 2026. A whole box draws more than the card; add the difference to E. The power price is the 2026 residential forecast, 18.2 cents per kilowatt-hour, from the EIA Short-Term Energy Outlook. Put your own numbers in. The formula does not care.
Now the rows. Three anchor cards, all at maker launch list prices: the 12 GB class at 329, announced January 2021; the 24 GB second tier at 1,499, announced September 2020; and the 24 GB top tier at 1,599, announced September 2022 and on shelves October 12. Each row prints every input; the last columns divide daily hardware cost by the rate gap.
| Card tier | G | Daily cost over 24 months | S per image | Power per image | Break-even at the cheap fence tier | Would-be break-even at premium rates |
|---|---|---|---|---|---|---|
| 12 GB class, launch 329 | 329 | 329 / 720 = 0.46 | 30 | 0.17 x 0.182 x 30/3600 = 0.000258 | 0.46 / 0.002742 = about 167 | 0.46 / 0.039742 = about 11.5 |
| 24 GB second tier, launch 1,499 | 1,499 | 1,499 / 720 = 2.08 | 12 | 0.35 x 0.182 x 12/3600 = 0.000212 | 2.08 / 0.002788 = about 747 | 2.08 / 0.039788 = about 52 |
| 24 GB top tier, launch 1,599 | 1,599 | 1,599 / 720 = 2.22 | 12 | 0.45 x 0.182 x 12/3600 = 0.000273 | 2.22 / 0.002727 = about 814 | 2.22 / 0.039727 = about 56 |
Read the cheap-tier column against your real month. About 167 images a day is about 5,000 a month. About 814 a day is about 24,400 a month. That is studio-scale batching, not hobby volume.
Read the premium column as arithmetic, not advice. Its gap uses premium per-image rates, the 0.04 band in the rate table. The break-even there is roughly fifteen times closer. The open weights are the cheap tier, so that column is a rental question, not a download question. The rate you can act on is the one your own weights can replace.
Three variants move the real numbers. An always-on box draws idle power around the clock. At a 60 W estimate, the 329 tier adds about 0.26 a day, and its break-even rises from about 167 to about 262 images a day. A card you already own gives images a slice of its cost: set G to zero and the break-even disappears, leaving power as the whole local cost, so hosted wins only on convenience. The rate moves the answer most: halve it and the break-even roughly doubles, because the gap shrinks while the hardware cost stands still.
Speed, capacity, and what the break-even is not
The break-even is not a capacity limit. The 12 GB card at 30 seconds an image makes 120 an hour, 2,880 a day if it never stops. Its break-even, 167, is six percent of that ceiling. The top tier at 12 seconds an image makes 300 an hour, 7,200 a day. Its break-even, 814, is eleven percent. All three cards can reach the volume. The question is whether your work makes that much every day for two years.
The speed tiers are labeled inputs, not promises. Schnell generates in 1 to 4 steps by design, and four steps is the card's example default. One dated community report clocks a 1024x1024 schnell image at about 10.5 seconds on a top-tier laptop chip at 2 steps. The source is the mflux project's issue tracker, November 2024. The power term is small, and at premium rates a 5x error in S moves the answer under 3 percent. At the cheap tier it is not: a card five times slower moves the 167 break-even to about 267. Change S and recompute before you trust any row.
What speed decides is how much of the day your card spends working. A card that renders for twenty minutes a day is a hobby, not a rival to a per-image bill. The hosted lane is priced for episodic work, and the card is priced for pipelines.
One prompt, two destinations
The same prompt runs on both sides, so the choice stays reversible while you test your volume.
Local, the official path from the schnell model card:
# pip install diffusers transformers accelerate
# FLUX.1-schnell, Apache 2.0
import torch
from diffusers import FluxPipeline
pipe = FluxPipeline.from_pretrained(
"black-forest-labs/FLUX.1-schnell", torch_dtype=torch.bfloat16)
pipe.enable_model_cpu_offload()
image = pipe(
"a warehouse robot arm stacking blue crates, clean product photo",
num_inference_steps=4,
guidance_scale=0.0,
height=1024, width=1024,
).images[0]
image.save("crate.png")
Four steps, guidance off, and the offload call that lets a 12 GB card hold the standard-precision build: the card's own example, trimmed to what matters here.
Hosted, the same image through this platform's images route, flux-1-schnell:
curl -sS $IRONSTRATUM_BASE_URL/v1/images/generations \
-H "Authorization: Bearer $IRONSTRATUM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "flux-1-schnell",
"prompt": "a warehouse robot arm stacking blue crates, clean product photo",
"n": 1,
"size": "1024x1024"
}'
Three facts about the route before the first call. The request takes a model, a prompt, up to 10 images, a size, and the URL response format. The answer carries a usage block with the image count and the call's cost. Billing is per image returned, against a prepaid wallet. A run that fails returns nothing and bills nothing. Generated image URLs are temporary; fetch and store what you keep. The premium row, flux-pro-1.1, answers the same shape on the same route.
Send one image, read the cost field, multiply by your daily volume, and set that product against the daily cost column. That is the whole decision.
Decision rules
| Your situation | The rule |
|---|---|
| Episodic making, a few hundred images a month | Hosted. The break-even is hundreds of images a day; episodic work never reaches it. |
| A daily batch pipeline past the break-even row | Local schnell. Compute D* with your street price and the fence rate; every day past it is payback. |
| You need the premium tier's quality | Hosted. Those weights are closed. Local is not an option at any price. |
| Commercial product work on a budget | Local schnell clears commercial use under Apache 2.0. Local dev does not; its license is non-commercial. |
| Privacy-critical or air-gapped work | Local, full stop. No rate comparison beats a data boundary. |
| You already own a 12 GB or bigger card | Set G to zero. The break-even vanishes and your marginal cost per image is the power term alone. |
Current per-image rates for both rows sit on the pricing page. The images lane and its model rows live on the images category page. To put a real balance behind the test: sign up, fund the wallet, and run the one-image check above before committing either side.
Frequently asked questions
Is FLUX free to run locally?
The schnell weights are. The model card ships a 12 billion parameter transformer under Apache 2.0, with commercial use named as allowed. You pay for hardware and power only. Power is small: about 0.000258 per image at the 30 second row, about 2.58 per 10,000 images. The dev weights are also downloadable, but under a non-commercial license.
When does a local FLUX card beat the API?
Past its break-even row, on volume. The 329 anchor clears near 167 images a day against the cheap fence tier, power included, over 24 months. The 1,599 anchor clears near 814. Below those volumes the hosted lane costs less. Above them, every extra day is payback.
How much VRAM does FLUX need?
The standard transformer file is 23.78 GB, so full precision wants a 24 GB card. The 8-bit build is about half that, 11.9 GB, and fits a 12 GB card. The 4-bit build is about a quarter, 6 GB, and fits an 8 GB card with some quality loss. The sizes are the repository's own file numbers; the halves and quarters are arithmetic.
Can I run the pro tier locally?
No. The pro weights are closed, and no self-host offer covers them. The only FLUX you can download and ship commercially without a paid license deal is schnell. The publisher sells self-host licenses for its klein and dev weights by monthly quota; the entry tier caps at 10,000 images a month, with no price printed on its page.
Does image size change the cost?
On this platform, no. Both FLUX rows bill flat per image at any size. On per-megapixel hosts, yes. The bill steps up each time output crosses a whole megapixel. A 1024x1024 image sits at 1.05 megapixels, just above the one-megapixel line, where the round-up rule doubles the bill. Check the unit column before you compare numerals across hosts.
What does 800 images a day even look like?
A batch pipeline, not a person. It is 300 images an hour for under three hours, or one image every 108 seconds around the clock. It is about 24,400 images a month, every month, for two years. If that is not your work, the hosted lane is cheaper. The card is then a tool you buy for other reasons: privacy, control, offline work.
The short version: decode the license before the rate, price the volume you really make, and put your own card price in the formula. Live rates for both rows sit on the pricing page. The unit decode and the keeper math live in the image generation cost calculator. To test with your own balance: sign up, fund the wallet, send one image, read the cost field.
Last verified: 2026-10-28