Skip to the build
Cost lab

B2B SaaS analytics dashboard

CoreBudget $1,650 a month
  1. Step 1 of 3: Fit the load, done
  2. Step 2 of 3: 2Hit the budget
  3. Step 3 of 3: 3Defend your bill

Catalogue

Compute

$2,359 a month

What runs your code.

Kind
Server size
How you pay

Reserved: a 1-year commitment, cheaper, paid all month. Spot: spare capacity, can be taken back with 2 minutes notice.

How many servers you run
Scaling

Fixed: the same number all month. Autoscale: follows the load, billed on the average (plus slack).

Database

$3,229 a month

Where the data lives.

Kind
Size

Rated for reads and writes per second; a write costs three times a read.

Read replicas

Copies that answer reads. They do not take writes and do not fail over automatically.

How you pay

Storage and delivery

$611.44 a month

Files, bytes out to users, and what answers them.

Storage class

Infrequent Access is cheaper to keep and charges $0.01 per GB read back. Only objects nobody read for a month are moved.

Logs and monitoring

$104.94 a month

Needs to be kept at least 30 days.

Retention (days)

Nightly batch jobs

$454.50 a month

Work nobody is waiting for.

How you pay
Monthly bill
$6,835
₹6,49,350 at ₹95 per $
Budget
$1,650
₹1,56,750

Monthly bill $6,835 (budget $1,650) · meets peak ✓ · availability ✓

$5,185 over budget, requirements met.

Checks

Handles the peakpassed
At peak 185 requests/s reach your servers (45 ms of CPU each, run at 60% load) = 13.9 vCPU. That is 1 x m6i.4xlarge; you allow 4. At peak the primary does 69.4 writes/s (x3 weight) + 370 reads/s = 579 units; a db.m6g.2xlarge is rated 4,800, so 3,360 at 70% load. Each replica does 370.
Availability: 99.5% (a few hours of downtime a month is fine)passed
The brief allows a single zone; the money is better spent elsewhere.
Latency: p99 under 800 mspassed
No cold starts on the request path, and reads come from memory where it matters.
Logs kept at least 30 dayspassed
Retention is 30 days.
The choices fit the workloadpassed
Nothing in the design contradicts the workload.
Within budget ($1,650 a month)failed
$5,185 over budget.

The bill, line by line

Compute

$2,814
  • m6i.4xlarge servers, on-demand$2,359
    4 x m6i.4xlarge x $0.808/h x 730 h = $2,359
  • Nightly batch jobs, on-demand$454.50
    9,000 vCPU-hours x $0.0505 = $454.50

Database

$3,229
  • PostgreSQL primary (db.m6g.2xlarge Multi-AZ)$1,320
    db.m6g.2xlarge x $1.81/h x 730 h = $1,320
  • Read replicas (2)$1,320
    2 x db.m6g.2xlarge x $0.904/h x 730 h = $1,320
    A replica takes reads. It does not take writes.
  • Database storage (gp3)$589.50
    1,125 GB (data + 25% room) x $0.262 + 2 replicas x 1,125 GB x $0.131 = $589.50

Storage

$524.00
  • Object storage (Standard)$512.00
    20,480 GB x $0.025 = $512.00
  • Object requests$12.00
    2M PUT x $0.000005 + 5M GET x $0.0000004 = $12.00

Monitoring

$104.94
  • Logs ingested$100.50
    150 GB x $0.67 = $100.50
  • Logs stored (30 days)$4.44
    150 GB x 30 / 30.4 days = 148 GB x $0.03 = $4.44

Network

$163.29
  • Load balancer$75.85
    730 h x ($0.0239 + 10 LCU x $0.008) = $75.85
    LCU: the larger of new connections (25 a second) or 1 GB an hour.
  • Internet egress$87.44
    800 GB x $0.1093 = $87.44

Mumbai (ap-south-1), 730 hours a month. List prices checked 2026-10-19: the price table below has the sources and what is left out.

Where the prices come from