Turn RunPod's per-second GPU spend into a running cost
RunPod rents GPUs by the second and runs serverless endpoints that scale on their own. It keeps charging for storage between jobs too, and all of it draws down a prepaid balance with no monthly invoice to anchor against. Here is how the billing works, and how to keep a running cost and a forecast in front of you while there's still time to act.

RunPod doesn't send you a bill at the end of the month. It draws down a prepaid balance, by the second, while you watch. A GPU pod meters for every second it's up. Serverless bills the seconds your workers actually run. A network volume keeps charging for space you've reserved long after the pod that used it is gone.
The spend is all there in RunPod's billing, day by day as you use it. The work left is turning those per-second meters into one running cost, and a forecast, before the balance runs out from under you.
How does RunPod bill for GPUs, serverless, and storage?
RunPod is a GPU cloud, and almost everything it charges for is metered on time or on space. GPU pods, serverless, and storage carry most of a working developer’s bill, and each meters differently.
GPU pods are billed by the second. You rent a machine of a given GPU type, and the meter runs from the moment it starts until you stop it. It’s pay-as-you-go, with no long-term commitment by default. The rate depends on the GPU class you pick and on where it runs: Secure Cloud (enterprise tier-3/tier-4 datacenters) costs more than Community Cloud (vetted third-party hosts). Community also offers spot instances, cheaper but interruptible, so they suit checkpoint-tolerant training more than a live service.
Serverless endpoints bill per second a worker is running, and what you’re billed for depends on the worker type. Flex workers scale to zero between requests, but a billed second is more than just the request: it covers the worker starting up and loading your model, the request itself, and a short idle-timeout window the worker stays warm afterward — waiting for the next request before it scales back down. Active workers stay always-on at a steadier rate, with no cold start, but you pay for the idle time too. Which one fits depends on how constant your traffic is.
Pod storage comes in two parts: a temporary container disk that’s wiped when the pod stops, and a persistent disk volume that survives a stop. Both bill per gigabyte while the pod runs. The difference shows up when you stop a pod rather than terminate it: the persistent disk sticks around and keeps billing at double the per-gigabyte rate it charged while the pod was running, until you delete the pod. Stopping the compute meter doesn’t stop the disk meter — it doubles it.
Network volumes — persistent storage you attach to pods, separate from a pod’s own disk — bill per gigabyte-month, and this is the meter that catches people. It keeps charging for the space you reserve whether or not a pod is using it, and survives even terminating the pod. A volume left behind after a job finishes goes on costing until you delete it.
| What you’re paying for | How RunPod meters it |
|---|---|
| GPU pods | Per second of uptime, by GPU type and cloud (Secure/Community/spot) |
| Serverless (Flex) | Per second a worker runs — startup, request, and idle-timeout — scaling to zero between bursts |
| Serverless (Active) | Per second always-on, idle time included |
| Pod disk | Per gigabyte while running; the persistent disk’s rate doubles while a pod is stopped |
| Network volumes | Per gigabyte-month, billed whether or not a pod is attached |
A couple of things make RunPod’s billing friendlier than most. Outbound data transfer is free, so there’s no egress charge to model, and the whole thing runs on prepaid credit: you top up a balance and the usage draws it down. RunPod also offers multi-month Savings Plans that trade a prepaid commitment for a lower rate on steady pod usage. (The current rates per GPU class and cloud live on RunPod’s own pricing page — treat any figure you’ve memorized as provisional.)
Why is RunPod spend hard to keep ahead of?
The per-second, prepaid model is what makes RunPod cheap and flexible, and also what makes the spend hard to read at a glance. What surprises people is rarely the GPU rate. It’s the pod left up overnight, the pod stopped but never terminated so its disk keeps billing, or the volume nobody got around to deleting. Idle storage is the quiet one — a running pod at least nags at your memory, while reserved space you’ve forgotten never does. Most of the difficulty is structural:
- There’s no monthly invoice to anchor to. A prepaid balance just goes down. Without a monthly statement that says “here is what you owe,” the only signals you get are a shrinking number and the work you remember doing, and the two are easy to lose track of between top-ups.
- Per-second metering hides the rate of burn. A pod left running over a weekend, an endpoint that quietly scaled up under load: each is just seconds ticking by. The individual charges are tiny. It’s the combined rate, across everything running at once, that draws the balance down.
- Idle storage spends silently. Spin up a pod with a 500 GB network volume for a training run. When the run finishes you shut the pod down but leave the volume. The GPU meter stops, but the volume keeps billing for its 500 GB — and if you only stopped the pod instead of terminating it, its disk keeps billing too, at a higher rate than while it ran. Storage you provisioned and forgot is the spend nothing in the moment flags.
- The cost is spread across resources. Pods, serverless endpoints, and volumes each accrue on their own, and reading whether this month is heavy means adding them up across however many GPU types and endpoints you’ve spun up.
- RunPod is rarely your only provider. Alongside your GPU rentals you’re likely calling Anthropic for Claude, building on OpenAI or Google, maybe routing through OpenRouter — so RunPod is one slice of a bill you otherwise stitch together by hand from a stack of dashboards.

Is the RunPod cost exact or estimated?
Reported, not estimated — and that sets RunPod apart from most providers CostCompass tracks. A token-metered provider doesn’t hand back a money figure, so CostCompass has to read raw usage and price it against a rate card, which makes the number a close estimate. RunPod is different. Its billing reports the actual amount spent per resource, per day, and CostCompass reads that figure straight through rather than reconstructing it.
The only thing CostCompass adds is the roll-up: it groups those reported costs by resource type, keeps a running month-to-date total, and reads your prepaid balance alongside them.
How can you reduce your RunPod bill?
Tracking shows you where the seconds go; a few levers actually slow the burn:
- Stop — or terminate — pods you’re not using. Per-second billing rewards stopping the compute meter, but a pod that’s only stopped keeps billing for its disk at a higher rate. Once you’ve saved anything you need — a network volume survives termination — terminating the pod stops that charge too. A pod left up between sessions is the most common silent cost, and the easiest to cut.
- Delete volumes you’ve finished with. Storage bills per gigabyte-month whether or not a pod is attached, so cleaning up the volumes left behind by completed jobs stops you paying month after month for data you no longer touch.
- Pick the right cloud and instance for the job. Community Cloud costs less than Secure Cloud, and spot instances less than on-demand. For checkpoint-tolerant training that can take an interruption, both are a real saving. Keep Secure Cloud and on-demand for the work that needs the reliability. And right-size the card itself: a model that fits in less VRAM doesn’t need your largest GPU, and the per-second rate tracks the class you pick.
- Match the serverless worker to your traffic. Flex workers scale to zero and suit spiky, low-volume endpoints. Active workers cost less per second once an endpoint runs enough of the time to justify staying on. The wrong choice quietly overpays either way.
- Lock in a Savings Plan for steady baseline usage. If some pods run predictably month after month, RunPod’s multi-month Savings Plans drop the rate on that baseline in exchange for committing the credit up front. It’s worth it only once the usage is steady enough that the commitment won’t sit idle.
- Watch the by-resource split. A ranked view of pods, serverless, and volumes catches a forgotten pod or an orphaned volume in days. A draining balance, on its own, only tells you something’s off later.
How do you forecast next month’s RunPod bill?
Forecasting per-second usage doesn’t need anything exotic, just a burn rate: take your spend over the last several days, turn it into a daily average, and project it across a full month.
CostCompass does exactly this. It scales your trailing seven-day burn rate to the number of days in next month and adds any fixed subscriptions you’ve entered. The result is one forward number for what next month costs if the current pace holds. Seven days is the window: long enough that one heavy training day doesn’t throw the average, short enough to pick up a recent change like an endpoint that started staying busy. It’s the same engine that runs across every provider you’ve connected, so RunPod folds into one whole-stack projection. That’s especially useful here, where a prepaid balance gives you no invoice to extrapolate from.
How does CostCompass track your RunPod costs?
CostCompass reads your billing from RunPod’s API: your GPU pod, serverless, and network-volume spend, each as a daily reported cost, plus your current prepaid balance. It rolls that into a running month-to-date total grouped by resource type. Because RunPod reports the money directly, there’s no pricing step in between, so the figure is RunPod’s own. Your first refresh pulls the current month so far, and each refresh after that brings the running total and the balance current.

Two things make that practical for a solo developer. First, your key is encrypted in your browser before anything is stored. The key you paste is sealed with your vault password on your own device, and only the sealed version is ever saved: a blob CostCompass can’t open, because the vault password stays with you. When it’s time to read your usage, your browser unseals the key and passes it to a relay that uses it for the requests that refresh needs and is built not to log or keep it. What we hold at rest is locked ciphertext. The key your account runs on never reaches us in usable form.
Second, RunPod doesn’t sit alone. The same dashboard rolls its running cost up with every other AI and compute provider you’ve connected, like Claude, OpenAI, and your other hosting, into one figure with a forecast. How you get to that cross-provider number (by hand, through tooling, or straight from each API) is its own decision. The ways to track AI costs across providers lay the options out side by side.
| RunPod’s console | CostCompass | |
|---|---|---|
| Timing | Usage and a draining balance, read after the fact | Running cost, current when you Refresh |
| Forecast | No burn-rate forecast; a prepaid balance only | Month-end projection from your burn rate |
| View | Per-second pods and endpoints, per-gigabyte volumes, read line by line | Grouped by resource into one running cost |
| Scope | RunPod only | RunPod beside every other provider |
Getting started takes three steps:
- In RunPod, open Settings → API Keys and create an API key. A read-only key is enough — CostCompass only reads your billing and balance, never changes anything.
- Paste it into CostCompass. The key is encrypted in your browser before it’s stored, so the server only ever holds ciphertext.
- Click Refresh. CostCompass reads your spend and balance, groups it by resource, and from there your running cost and forecast roll up — with RunPod folded into the whole-stack number.
Frequently asked questions
- Can I set a spending limit or budget cap on RunPod?
- Not the kind most people mean. RunPod caps how fast you can spend, not how much in total — every account starts with a default hourly spend ceiling across all resources that rises as the account ages, or sooner if you ask support. What there isn't is a monthly budget you set that halts everything once the total crosses a number. The one lever you control is a low-balance threshold for topping up. So nothing inside RunPod tells you a month is running heavier than you meant until the spend is already gone. That's the gap CostCompass fills — it turns your burn rate into a projected month-end figure you can read whenever you look, so a heavy month shows up while there's still time to change it.
- How does RunPod's auto top-up work, and when does it charge my card?
- RunPod is prepaid, so usage draws down a balance instead of landing on a monthly invoice. You keep it funded one of two ways — a manual top-up, or auto-pay, which recharges your card when the balance runs low and fires at most once an hour. Auto-pay needs a standing balance before you can switch it on. The catch worth naming is that with it enabled your spend keeps replenishing itself, so the draining balance stops being a natural brake — the card just refills it. CostCompass reads your current balance on every refresh, so the draw-down between top-ups stays in front of you.
- How do I track RunPod spend per pod, team, or project?
- RunPod's own answer is Cost Centers — named groups you assign pods, serverless endpoints, network volumes, and clusters to, where each resource sits in exactly one group and your monthly invoice breaks the total down by group. That's built for splitting a bill across teams or projects once the month closes. CostCompass cuts it a different way and on a different clock — it groups your spend by resource type and GPU class into a running month-to-date total that's current the moment you refresh, and rolls RunPod up with every other provider you've connected.
- What happens to my pods and data if my RunPod balance hits zero?
- RunPod tries to protect your data before the balance is gone — when there isn't enough left to cover your running pods it stops them automatically, and if the balance fully depletes the pods and their storage may be deleted, which RunPod can't undo. What survives a stop is a network volume and anything on the persistent disk; the temporary container disk is wiped. Because there's no invoice to settle later, the balance is really your runway — and runway is the one thing prepaid billing gives you no signal about on its own. CostCompass keeps that balance and a burn-rate forecast in view, so you can see how many days you have left at the current pace before a pod stops on its own.
- Does CostCompass store my RunPod key?
- Not in any form it can use. Before the key leaves your device, your browser seals it with your vault password, and the only thing that reaches our servers is that sealed blob. We have no way to open it, because your vault password never leaves your browser. When it's time to read your usage, the key is unsealed in your browser and handed to a relay that forwards the requests that refresh needs to RunPod and is built not to log or keep it. What sits in our database at rest is locked ciphertext, useless without your vault password.
- Why use CostCompass instead of RunPod's billing dashboard?
- RunPod's billing shows what has already happened on RunPod — a balance ticking down, resources metered to the second, and a per-cost-center split that arrives when the monthly invoice does. What it won't do is tell you where this month lands, cap the total, or pull your other providers into the same number. CostCompass takes the same spend and turns it into a running month-to-date cost that's current the moment you refresh, projects where the month ends from your recent burn rate, and rolls RunPod up with Claude, OpenAI, and everything else you've connected into one figure. Instead of reading a draining balance and doing the arithmetic in your head, you get the running total and the forecast in a single view.
About the author
Joubert Berger builds CostCompass, a spend-intelligence dashboard that pulls usage from AI and compute providers into one month-to-date total, a forecast, and a per-provider breakdown. This guide reflects how CostCompass reads each provider's own usage API — see thesecurity model for how your keys are handled.
Stop watching your RunPod balance drain without a number
Connect RunPod once and turn its per-second GPU and serverless spend, plus storage, into a live running cost and forecast. Broken down by resource and rolled up with every other provider, in one click.