aws_ redshift_ cluster cost estimation
A managed data warehouse. Two compute models: classic node-based pricing (per-hour) or Redshift Serverless (per-RPU-hour), plus managed storage.
An aws_
Provisioned clusters (node-based): each node is billed per hour by type. RA3 nodes are the modern default, decoupling compute from storage. ra3.xlplus is ~$1.087/hour; ra3.4xlarge is ~$3.26/hour. Classic DC2 nodes ship with local SSD and are billed without separate storage cost; they're being phased out.
Redshift Serverless: pay per RPU-hour (Redshift Processing Unit). Each RPU represents compute capacity that scales with demand. Right for sporadic analytics workloads. Capacity ranges from 8 to 512 RPUs, billed per second when active.
Managed storage (RA3 and Serverless): $0.024/GB-month, separate from compute. Storage tier is independent of node count. Spectrum queries (against S3) are billed per TB scanned.
Reserved Instance discounts apply to provisioned clusters (1-year or 3-year commitments). Savings of 30-65% depending on term and payment.
Practical cost drivers: node count and type (linear scaling), concurrency scaling (additional clusters spun up for high concurrency, billed separately), and Redshift Spectrum (per-TB-scanned for external S3 queries).
c3x reads cluster_
Terraform example
A minimal but realistic configuration that C3X can estimate.
resource "aws_redshift_cluster" "warehouse" {
cluster_identifier = "production-warehouse"
database_name = "analytics"
master_username = "admin"
master_password = var.redshift_password
node_type = "ra3.xlplus"
cluster_type = "multi-node"
number_of_nodes = 3
publicly_accessible = false
skip_final_snapshot = false
encrypted = true
enhanced_vpc_routing = true
}Pricing dimensions
What you actually pay for when you provision aws_.
| Dimension | Unit | What's being charged |
|---|---|---|
| Node hours (RA3) | per node per hour | Modern Redshift nodes with separated storage. Multiplied by number_ $1.087/hour for ra3.xlplus in us-east-1 |
| Redshift Serverless | per RPU-hour | Compute units that scale with demand. Billed per second when active. $0.375/RPU-hour |
| Managed storage (RA3 and Serverless) | per GB-month | Storage scaled independently from compute. Right for large data warehouses. $0.024/GB-month |
| Spectrum queries | per TB scanned | Queries against external S3 data via Redshift Spectrum. $5.00/TB |
| Concurrency scaling | per second of additional capacity | When enabled, Redshift adds transient compute for high-concurrency periods. Free credits earned per cluster-hour, then billed at on-demand rates. |
Optimization tips
Common ways to reduce aws_ cost without changing the workload.
Use RA3 instead of DC2
Storage-dependentRA3 nodes decouple compute from storage. For workloads with growing data, RA3 is cheaper because you can scale compute and storage independently. DC2 is deprecated for new deployments.
Use Redshift Serverless for sporadic analytics
50-80% on sporadic workloadsProvisioned clusters bill 24/7. If your analytics workload runs a few hours per day or sporadically, Serverless can be 50-80% cheaper. Set min/max RPU appropriately.
Buy Reserved Instances for steady-state
30-65%1-year RIs cut node prices by 30-45%; 3-year by 60-65%. Right for production warehouses that won't shrink.
Use S3 + Spectrum for cold data
Storage-cost-dependentData accessed less than weekly can live in S3 (much cheaper than Redshift managed storage) and be queried via Spectrum. Per-TB-scanned fee but avoids the per-GB-month storage cost.
Pause non-production clusters
Up to 80% on non-prodRedshift supports pause/resume. Paused clusters don't bill for compute (storage still bills). For dev/staging warehouses, automated pause/resume saves 60%+ of compute cost.
FAQ
Provisioned or Serverless?
Provisioned: predictable analytics workloads with sustained compute usage above ~30% of the day. Serverless: sporadic, unpredictable, or low-baseline analytics. Crossover varies by workload but Serverless often wins for analytics that don't run continuously.
Does c3x estimate Spectrum query costs?
Only with usage data. Specify expected monthly_
What about concurrency scaling?
Concurrency scaling is opt-in (set concurrency_
Redshift vs BigQuery vs Snowflake?
Different pricing models entirely. Redshift bills compute (whether used or not for provisioned) and storage. BigQuery bills per-TB-scanned (on-demand) or per-slot-hour (capacity). Snowflake bills per-warehouse-second of compute. Choose based on query patterns and pricing predictability needs.
Related resources
More AWS resources
Further reading
- Athena vs Redshift Spectrum cost: querying S3 data compared
Both Athena and Redshift Spectrum query data in S3 and both charge per terabyte scanned, but their cost models and surrounding infrastructure differ. Here is how they compare and how to make either one cheap.
- AWS Redshift Serverless cost: you pay per RPU-hour of query time
Redshift Serverless bills per Redshift Processing Unit (RPU) hour while queries run, plus managed storage, with no cluster to pause. It suits variable, intermittent analytics; steady heavy load is cheaper on a provisioned cluster. Here is how to size it.
- Redshift vs Athena cost: provisioned cluster or pay-per-scan?
Athena bills $5/TB scanned and costs nothing idle; Redshift bills for a provisioned cluster (~$793/month per node) or per RPU. Here's the crossover by query volume and how table design cuts both.
- Data warehouse cost compared: Redshift vs BigQuery vs Synapse
Redshift, BigQuery, and Synapse price data warehousing on different axes, provisioned nodes or serverless, per-TB-scanned or per-slot, per-DWU. The cheapest depends on query pattern and volume, not the platform. This compares the models.
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_.