Keeping Cloud Costs Sane in a Small Team
Small teams do not need a cost management practice. They need about six decisions made once and reviewed occasionally.
Most cost management advice assumes a dedicated function, a tagging taxonomy and a monthly review meeting. For a team of three that is more process than the spend justifies.
What follows is the short version: what to decide once, and what to check occasionally.
Six decisions to make once
- Pick a provider whose pricing model matches your workload. For a bandwidth-heavy product, an included-allowance provider removes an entire category of surprise.
- Set a monthly budget with alerts at 80 and 100 per cent, plus a daily anomaly alert. Fifteen minutes, and it is the highest-value thing on this list.
- Use two tags: environment and project. More than that will not be maintained.
- Schedule non-production to shut down outside working hours. Roughly 70 per cent off those environments.
- Put a CDN in front of anything public. Cheaper egress, faster site, less origin load.
- Write down what each resource is for. A short document beats archaeology in six months.
Three things to check quarterly
- Orphans — unattached volumes, old snapshots, idle load balancers, reserved addresses. Twenty minutes, reliably finds something.
- Utilisation — anything with peak CPU below 30 per cent goes down one size.
- The top five line items — if any is unexpected, find out why now rather than at year end.
That is the whole practice. It takes about an hour a quarter and catches the great majority of avoidable spend.
Architecture choices that keep costs low
| Instead of | Consider | Why |
|---|---|---|
| Kubernetes for one app | Two VPS instances and a load balancer | Much lower complexity and cost |
| Managed everything | Managed database, self-hosted cache | Pay for management where failure hurts |
| Multi-region from day one | One region, good backups | Multi-region rarely earns its cost early |
| Serverless for steady traffic | A small always-on server | Cheaper above a modest volume |
| Separate server per service | Several services on one server | Fewer fixed costs, simpler operations |
| Metered egress provider | Included-allowance provider | Removes the least predictable line item |
None of these are permanent decisions. They are sensible starting points that can be revisited when a specific need appears.
Free tiers: useful, with a caveat
Always-free tiers — Oracle Cloud’s in particular — genuinely cover small workloads indefinitely. Twelve-month tiers are a trial, and the anniversary is a step change on resources that have been quietly running all year.
Use free tiers for development, side projects and non-critical services. Be careful about depending on one for anything that would hurt to lose, since free resources may carry lower availability commitments. Cloud account credits explained covers the difference between trial credit and always-free capacity.
The failure mode to avoid
The expensive pattern for small teams is not overspending on servers. It is building infrastructure sized for an organisation that does not exist yet — a multi-cluster, multi-region, fully observable platform serving a product with a few hundred users.
That costs money directly, and it costs far more in the engineering time it consumes. Build for the load you have plus a comfortable margin, and let the architecture grow when something actually strains.
Common questions
Do we need a cost management tool?
Below a few thousand a month, no. The provider’s cost explorer with two tags gives you everything you will act on.
Should one person own cloud cost?
Someone should look at it monthly. It does not need to be a role, but if it belongs to everyone it belongs to no one.
Is it worth switching provider to save money?
If the saving is large and the workload is portable, yes. Price the migration effort honestly — it is usually larger than estimated, and the saving has to justify it.
How much should a small product cost to run?
Enormously variable, but many small products run well on tens of dollars a month. If yours is hundreds and you cannot explain why, the explanation is usually worth finding.