aws_rds_cluster_instance cost estimation
A compute instance in an Aurora cluster, billed per instance-hour by class. A db.r6g.large Aurora PostgreSQL instance is ~$247/month — and a cluster usually runs several.
An aws_rds_cluster_instance is a single compute node in an Aurora cluster (the cluster itself, aws_rds_cluster, holds the shared storage). Each instance bills per instance-hour by its class, continuously. A db.r6g.large on Aurora PostgreSQL is about $0.338/hour, ~$247/month.
The total Aurora compute bill is the sum of the instances: a writer plus one or more readers. A typical HA cluster runs a writer and at least one reader (~$494/month on db.r6g.large) before storage and I/O, which bill on the cluster. Each reader is a full-price instance — they add read capacity and failover targets, but they're not free.
The cost levers are instance class (right-size to load), reader count (match to read throughput and HA needs), and whether the cluster could use Aurora Serverless v2 instead of fixed-size instances for variable workloads. Reserved Instances discount steady cluster instances.
c3x prices the instance from instance_class and engine, so per-instance cost is clear; sum across the cluster's instances for the full compute bill.
Terraform example
A minimal but realistic configuration that C3X can estimate.
resource "aws_rds_cluster_instance" "writer" {
identifier = "aurora-writer"
cluster_identifier = aws_rds_cluster.main.id
instance_class = "db.r6g.large"
engine = "aurora-postgresql"
}
resource "aws_rds_cluster_instance" "reader" {
identifier = "aurora-reader"
cluster_identifier = aws_rds_cluster.main.id
instance_class = "db.r6g.large"
engine = "aurora-postgresql"
}Pricing dimensions
What you actually pay for when you provision aws_rds_cluster_instance.
| Dimension | Unit | What's being charged |
|---|---|---|
| Aurora instance | per hour | Per instance-hour by class and engine (Aurora PostgreSQL / MySQL), billed continuously. Each writer and reader is a separate instance. $0.338/hour ≈ $246.74/month for db.r6g.large (Aurora PostgreSQL) |
| Storage & I/O | per GB-month / per request | Aurora storage and I/O bill on the cluster (aws_rds_cluster), not the instance. I/O-Optimized changes the trade-off. |
Sample C3X output
One db.r6g.large Aurora PostgreSQL instance, 24/7 (a cluster usually has 2+):
aws_rds_cluster_instance.writer
└─ Aurora instance (db.r6g.large) 730 hours $246.74
Monthly $246.74Optimization tips
Common ways to reduce aws_rds_cluster_instance cost without changing the workload.
Right-size the instance class
~20% with Graviton, more on right-sizingAurora instance cost scales with the class. Monitor CPU and memory and step down classes that are over-provisioned — and use Graviton (db.r6g/r7g) classes for ~20% off the equivalent x86.
Match reader count to need
~$247/month per removed db.r6g.large readerEach reader is a full-price instance. One reader gives a failover target and read scaling; additional readers only add read capacity. Don't run three readers when the read load and SLA need one.
Consider Aurora Serverless v2 for variable load
Workload-dependentFor spiky or unpredictable workloads, Serverless v2 scales capacity per second instead of running fixed-size instances 24/7, and can scale to zero when idle. Steady high load stays cheaper on provisioned instances.
Reserve steady cluster instances
Up to 50% on steady instancesReserved Instances discount the always-on writer and readers by up to ~50% for a 1-3 year commitment — the biggest lever for a production cluster that runs continuously.
FAQ
How is an Aurora cluster instance billed?
Per instance-hour by class and engine, continuously — a db.r6g.large Aurora PostgreSQL instance is ~$247/month. Storage and I/O bill separately on the cluster (aws_rds_cluster). The total compute cost is the sum of the cluster's writer and reader instances.
Does each Aurora reader cost extra?
Yes — every reader is a full-price instance at the same class rate as the writer. Readers add read capacity and failover targets, so they're worth it for production, but the reader count is a direct cost multiplier to size deliberately.
Should I use provisioned instances or Aurora Serverless v2?
Provisioned (fixed-class instances) is cheaper for steady, high-utilization clusters. Serverless v2 scales capacity per second and can pause when idle, winning for variable or intermittent workloads. c3x can price both to compare.
How does c3x estimate the cost?
From instance_class and engine, pricing the per-instance hour. Sum across the cluster's aws_rds_cluster_instance resources for total compute; storage and I/O are priced on the aws_rds_cluster.
Related resources
Estimate this resource in your own Terraform
Free, open source, no API key. C3X parses your Terraform and shows line-item cost for every resource, including aws_rds_cluster_instance.