Cost per usable image: the only generation metric worth tracking
Everyone measures cost per generated image. It is the wrong denominator. Divide by your keeper rate instead: at a keeper rate of 5%, each published image cost you twenty generations, whatever the per-generation price was. That multiplier is the number that sets your content economics, and it is the one you have to measure yourself.
Ask an operator what their generation costs are and you will usually get a number per image, or a monthly GPU bill. Both are easy to obtain and neither tells you anything useful, because they measure output rather than usable output.
A pipeline that produces a hundred images an hour of which four are publishable is dramatically more expensive than one producing forty an hour of which thirty are publishable, on identical hardware and with an identical monthly bill. Cost per usable image is the metric that captures that, and it is the one worth optimising.
The formula
cost_per_usable = (hourly_rate / images_per_hour) / keeper_rate
where:
hourly_rate = published GPU rate, or your amortised own-hardware cost
images_per_hour = measured throughput of YOUR pipeline at YOUR settings
keeper_rate = share of generations you would actually publish (0–1)
Everything interesting is in keeper_rate.Published hourly rates
| Card | Secure Cloud | Community Cloud | Use case |
|---|---|---|---|
| RTX 4090 | $0.69/hr | ~$0.34/hr | The workhorse for inference. Adequate for most character generation. |
| A100 PCIe 80GB | $1.39/hr | ~$1.19/hr | Headroom for larger models and batch work. |
| H100 PCIe 80GB | $2.89/hr | ~$1.99/hr | Training, not inference. Renting one for a training run and releasing it is the point. |
| H200 | $4.39/hr | — | Rarely justified for this workload. |
Runpod published rates as reported in August 2026. Community Cloud rates float by provider and are host-dependent, so treat them as indicative rather than fixed.
Worked example
The point of this example is the ratio, not the absolute figures. The throughput and keeper rates below are illustrative inputs, deliberately chosen to show what the arithmetic does.
| Untuned pipeline | Tuned pipeline | |
|---|---|---|
| Hourly rate | $0.69 | $0.69 |
| Images per hour | 200 | 120 |
| Cost per generated image | $0.0035 | $0.0058 |
| Keeper rate | 5% | 70% |
| Cost per usable image | $0.069 | $0.0082 |
| Usable images per hour | 10 | 84 |
Hourly rate is Runpod's published Secure Cloud 4090 rate. Throughput and keeper rate are illustrative, not measured.
The untuned pipeline looks better on the metric most people report. It generates faster and each generation is cheaper. On the metric that matters it is more than eight times worse, and the shortfall lands on the input you cannot buy more of: the hours you spend reviewing output.
Renting versus per-image API pricing
Per-image API pricing is attractive at low volume: no setup, no idle cost, no maintenance. Its problem is that it scales linearly forever, while a rented GPU has a fixed hourly cost regardless of how many images you extract from it.
Find your monthly usable-image requirement
Count what you publish across the feed, the paywall, pay-per-view sets and off-platform promotion. Count it over a real week; recalling it from memory is where this calculation usually goes wrong.
Price that volume at API rates
Multiply by the per-image price, then divide by your keeper rate. The keeper rate applies to API generation too, and people routinely forget it there.
Price the same volume as GPU hours
Usable images required, divided by usable images per hour, times the hourly rate. Add setup and maintenance time at whatever you value your hour at.
Gotcha — Include the hours you spend maintaining the pipeline. This is where own-hardware and rented-GPU comparisons usually cheat.
Compare, then re-run it in three months
The crossover moves as your volume grows and your keeper rate improves. A decision that was right at 200 images a month is often wrong at 2,000.
How to measure your keeper rate
The number is worthless if you estimate it, because everyone estimates it generously. Measure it once properly and you will have the single most useful figure in your production model.
- Generate a batch of at least 200 images at your normal settings. Do not curate the prompt list for the test.
- Review every one against your actual publication standard, not a relaxed one. Identity drift, hands, artefacts, framing, age ambiguity: all rejections.
- Divide keepers by total. That is your keeper rate.
- Log it with the date and the pipeline version. When you change a model, a LoRA or a sampler, re-measure. This is your regression test.
Is owning a GPU cheaper than renting?
Per compute hour, eventually, yes. Over a realistic 24-month window including purchase, power, depreciation and maintenance time, it is much closer than enthusiasts claim. Renting also lets you take an H100 for a training run and drop back to a 4090 for inference, which owning a single card does not.
What is a good keeper rate?
There is no universal number, because it depends on your publication standard. What matters is the trend in your own series. A rate that is improving as you tune the pipeline means the tuning is working; a flat rate across three changes means you have been optimising something that does not matter.
Should I count review time as a cost?
Yes, and it is usually larger than the compute cost. If reviewing 200 images to find 10 keepers takes you forty minutes, that time is the real expense in the untuned column of the table above. This is the strongest argument for improving keeper rate that has nothing to do with money.
Where these numbers come from
GPU hourly rates are Runpod's published Secure Cloud and Community Cloud figures as reported in August 2026 and are linked in Sources. Throughput and keeper-rate figures used in the worked examples are illustrative inputs chosen to demonstrate the arithmetic, not measurements from our own pipeline. Where you see a keeper rate in this page, substitute your own; it is the input that matters and it is the one nobody else can supply for you.
Sources
- 01
Runpod GPU pricingSecure Cloud and Community Cloud hourly rates
- 02
Runpod referral and affiliate programmeDisclosed: we may earn commission on Runpod referrals
Who wrote this
AIOF Editorial DeskResearch & editorial
AIOF is an editorial desk that works from primary sources: platform terms, vendor pricing pages and published company data, read and dated rather than repeated from other write-ups. Where a figure comes from someone else we cite it and grade it. Where we have not measured something ourselves we say so, which today is most of the places you might expect a first-hand number.
- Works from primary platform documents, with the date each page was last checked published on the page itself
- Grades every figure as sourced, third-party estimate, modelled or measured, and labels which
- Publishes no first-party measured benchmarks yet, and says so on the methodology page rather than implying otherwise
- Corrections are made in place with a dated changelog entry, listed on the updates page
Rules and pricing here change often. This page was last touched on . Found something out of date? Tell us and we will fix it in place with a dated note.
Read next
The real cost structure
A full cost breakdown for an AI-model creator business: generation, labour, platform fees and the line items that quietly destroy margin.
EconomicsAnalysis9 minEconomicsAnalysis9 minCharacter consistency methods
The practical methods for keeping an AI character's face and body consistent across a content library, with the failure mode of each.
ProductionAnalysis6 minProductionAnalysis6 minTraining a character LoRA
A practical walkthrough of training a character LoRA for a consistent AI persona, covering dataset construction, captioning and the settings that matter.
ProductionTutorial7 minProductionTutorial7 min