Cloud Costs

How to Estimate a Monthly Cloud Bill Before You Commit

A repeatable method for turning an architecture into a number, accurate enough to make a decision with and quick enough to actually do.

3 min read

Most people estimate a cloud bill by reading the price of a server and
stopping. That number is reliably too low, usually by a factor that matters. The
method below takes about twenty minutes and produces something you can take to
a budget conversation.

Step one: list the components, not the servers

Write down every billable thing your deployment needs. Be literal and
include the unglamorous items:

  • Compute instances, with the size and how many
  • Block storage volumes, with provisioned size
  • Object storage, with expected total stored
  • A database, managed or on one of the instances above
  • Load balancer, if any
  • Reserved or static IP addresses
  • Backups and snapshots, with a retention period
  • Outbound data transfer
  • A support plan, if you intend to buy one

If a component is missing from this list, it will be missing from your
estimate, and it will appear on the invoice anyway.

Step two: find the rate for each one

Use the provider’s own pricing page, filtered to the region you will actually
deploy in. Regional variation is real and sometimes substantial, so an estimate
built on the cheapest region is not an estimate of your bill unless you are
deploying there.

For compute, multiply the hourly rate by roughly seven hundred and thirty to
get a month. For storage, use provisioned size rather than the size you expect
to fill. For anything with a free allowance, note the allowance as well as the
rate.

Step three: estimate egress separately and deliberately

This is the component people guess at, and it is the one most likely to be
wrong by a large multiple. Take the average response size your service sends,
multiply by the number of responses you expect per month, and then double it.
The doubling is not pessimism, it is coverage for retries, bots, assets you
forgot about and traffic you did not predict.

If your plan includes a transfer allowance, subtract it. If the remainder is
zero, write zero and move on. If it is not, this line deserves as much attention
as your compute line. The mechanics are in
data egress fees explained.

Step four: add the things that are not usage

Tax, which is typically added to the quoted figure rather than included in
it. Support, if you are buying it, which on some platforms is a percentage of
spend rather than a flat fee. And any minimum commitment you have agreed to.

Step five: add margin, and say what it is for

Add twenty to thirty percent. Not because the arithmetic is wrong, but
because the first month of any new deployment includes experimentation,
oversized instances that get right-sized later, resources created and forgotten,
and at least one thing nobody thought of.

State the margin explicitly rather than burying it in the component figures.
A budget line that says “estimated usage, plus thirty percent contingency” is a
far more useful thing to hand to someone than a single number that quietly
includes padding.

A worked shape

You are not aiming for precision. You are aiming for an estimate that is
right about the order of magnitude and right about which line dominates. A
useful estimate tells you things like: compute is two thirds of this bill, so
right-sizing instances is where the savings are. Or: egress is half of this
bill, so a CDN is not optional. Those conclusions survive being somewhat wrong
about the exact figures.

Use the provider’s calculator, but not only that

The hyperscalers publish detailed pricing calculators, and they are worth
using for the rate lookups. They are less good at reminding you about the
components you forgot to add, which is where estimates actually go wrong. Build
your component list first, then price it, rather than letting the calculator’s
interface decide what you think about.

Then check your estimate against reality

The estimate is a hypothesis. Set a
billing alert at the figure you
predicted, and look at the actual invoice mid-month. If you were wrong, find out
which line was wrong. Doing that once makes every subsequent estimate
noticeably better, because the thing you got wrong is almost always the same
thing you will get wrong next time.

Scroll to Top