What Hosting an AI App Costs — Spoiler, It's Not the Hosting

·5 min read·Updated
pricingcostllmai-agentsbilling

For an app that calls a model API, hosting is one predictable part of the total. The Medium API example — 0.5 vCPU, 1 GB RAM, 5 GB disk — costs $4.15 for a full month. Model provider charges are separate and depend on how much people use your app; hosting settings cannot cap that spending.

What you're actually billed for

Three resources determine hosting cost: vCPU at $1.90 per vCPU-month, RAM at $1.95 per GB-month, and disk at $0.25 per GB-month. The full allocation is billed per minute.

Two structural points matter more than the rates:

  • Billing is per-minute on aggregated usage. As the pricing page puts it: "Resources are aggregated across all applications and billed per-minute — the number of apps does not affect pricing." Splitting one app into two costs nothing by itself.
  • You pay for what you allocate, not what you use. A container idling at 5% of its CPU still bills for the slice it reserved.

The published examples give you a sense of scale: a small hobby app at 0.25 vCPU / 0.25 GB RAM / 1 GB disk costs $1.21, the medium API costs $4.15, and a production web app at 1 vCPU / 2 GB RAM / 20 GB disk costs $10.80 for a full month. The production example requires a higher disk quota than the default; contact support before allocating it.

Why an AI agent lands at the cheap end

An agent that calls a model API spends nearly all its life waiting on someone else's hardware. It builds a prompt in microseconds, opens a connection, and blocks. That's almost no CPU of your own, so a small allocation can be enough. Measure memory and CPU demand before increasing it.

The exception is the one worth stating plainly: this only holds if you're calling a model. Running one locally needs gigabytes of RAM before your code does anything, and that's a different price bracket on any platform.

The bill that actually moves

Your hosting cost is fixed and predictable — you chose it when you picked a preset. Your model API cost is neither. It scales with usage, it varies enormously per request depending on prompt and output length, and no container setting can limit it, because the spending happens between your app and your provider.

That asymmetry should drive where you spend attention:

  • Set a spend limit at your provider. The only control that survives a bug in your code.
  • Rate-limit by tokens, not requests. Twenty long requests can cost more than a thousand short ones — the full treatment here.
  • Log token usage per request. It turns "why is this expensive" into a query.
  • Cache repeated work. An answer you've already paid for shouldn't be bought twice.

An afternoon on those is worth more than any amount of hosting optimisation, because you're working on the line item with no ceiling.

The two ways hosting cost does surprise people

Over-allocation. Presets are easy to raise and easy to forget. If you bumped an app to 2 GB while debugging a memory problem you later fixed in code, you're still paying for 2 GB. The page's own advice is to "right-size CPU/RAM in the panel based on actual load" — worth an occasional look at anything you've touched.

Disk, which has a sharper failure than a bigger bill. Volume storage is the cheapest of the three per gigabyte, so it rarely dominates. But there's a hard consequence beyond cost, stated directly on the pricing page:

If your total Disk usage exceeds the account limit (for example, when an application doesn't track or rotate stored data), all applications in the account will be stopped and cannot be started again until the total volume size drops below the limit.

So an app that accumulates data — user uploads, logs written to a volume, database backups nobody prunes — doesn't just get expensive, it eventually stops everything you run. That's the disk consideration to actually plan for.

Default account limits are 1 vCPU, 2 GB RAM, and 5 GB disk, raiseable by contacting support. Those cap what you can allocate; they're not a bill.

A sizing approach that doesn't waste money

  1. Start with a small allocation. The 0.25 vCPU, 0.25 GB RAM, and 1 GB disk example is $1.21 for a full month; shorter runtime is prorated.
  2. Move up only on evidence — an out-of-memory kill, or measured CPU throttling. Both are checkable rather than guessable.
  3. Check what you're paying for after you fix something. The preset doesn't shrink itself.
  4. Watch disk as a growth curve, not a level. What matters is the trend and whether anything prunes.

FAQ

How much does it cost to host an AI agent?

A small allocation of 0.25 vCPU, 0.25 GB RAM, and 1 GB disk costs $1.21 for a full month. A larger allocation of 0.5 vCPU, 1 GB RAM, and 5 GB disk costs $4.15. Model API charges are separate.

Does running more apps cost more?

No. Resources are aggregated across applications and billed per minute; the app count doesn't affect pricing.

Am I billed for what I use or what I allocate?

What you allocate. An idle container still bills for its reserved CPU and RAM, so right-sizing matters.

Can hosting limits cap my OpenAI or Anthropic bill?

No. That spend is between your app and your provider. Set a limit there, and rate-limit in your own code.

What happens if I run out of disk?

Every app in the account stops and can't start until total volume size drops below the limit. It's the one resource with a consequence beyond cost.

What's included at no extra charge?

HTTPS, logs, and the dashboard, along with port mapping and automatic certificates.

Wrapping up

Budget hosting from the CPU, RAM, and disk your app needs, then budget model API calls separately. Start small, watch disk growth, and measure token spending as usage increases.