AWS

AWS Terraform Resources

Cost estimation reference for 113 AWS resources supported by C3X. Each page covers pricing dimensions, Terraform examples, and optimization tips.

Analytics

aws_athena_workgroup

Serverless query engine for S3 data. $5 per TB scanned (standard). Provisioned capacity option starts at $0.30/DPU-hour with 24-hour minimum. Workgroups themselves are free; the queries within bill.

Amazon Athena
aws_elasticsearch_domain

The legacy Elasticsearch Service domain (now OpenSearch). Bills per data-node instance-hour plus storage. A single t3.small.search node is ~$26/month.

Amazon OpenSearch Service
aws_emr_cluster

Managed Hadoop, Spark, Hive, Presto, and HBase. Bills EC2 instance hours plus EMR service fee (typically $0.063-$0.27/instance-hour on top of EC2). EMR Serverless eliminates instance management; EMR on EKS allows reusing EKS clusters.

Amazon EMR
aws_glue_crawler

A crawler that catalogs data sources into the Glue Data Catalog, billed per DPU-hour while it runs. 10 DPU-hours/month is ~$4.40 — it only bills during crawl runs.

AWS Glue
aws_kendra_index

A managed intelligent-search index. Priced as a flat hourly fee by edition, billed continuously, with a substantial monthly floor.

Amazon Kendra
aws_kinesis_firehose_delivery_stream

A managed stream that loads data into S3, Redshift, OpenSearch, or Splunk. Priced per GB ingested, with extras for format conversion and VPC delivery.

Amazon Data Firehose
aws_kinesisanalyticsv2_application

A managed Apache Flink (Kinesis Data Analytics) application billed per Kinesis Processing Unit-hour. Two KPUs run ~$161/month, billed while the application runs.

Amazon Managed Service for Apache Flink
aws_msk_serverless_cluster

A serverless Apache Kafka cluster that scales automatically. Priced per cluster-hour plus partition-hours, storage, and data in/out.

Amazon MSK
aws_mwaa_environment

A managed Apache Airflow environment. Priced per environment-hour by size, plus additional worker and scheduler hours and metadata storage.

Amazon MWAA
aws_opensearchserverless_collection

Serverless OpenSearch billed per OpenSearch Compute Unit-hour, with a minimum capacity floor. The 4-OCU minimum is ~$701/month.

Amazon OpenSearch Service
aws_redshiftserverless_workgroup

Serverless Redshift compute billed per RPU-hour only while queries run. 100 RPU-hours is ~$36; idle workgroups cost nothing for compute.

Amazon Redshift Serverless

Application Integration

Backup

Compute

Containers

Database

aws_dax_cluster

An in-memory write-through cache for DynamoDB. Priced per node-hour by node type, multiplied across the cluster's node count.

Amazon DAX
aws_db_instance

A managed relational database instance on RDS. Priced per hour by instance class, engine, deployment option, and region, with storage and IOPS billed separately.

Amazon RDS
aws_db_proxy

A managed connection pool in front of RDS or Aurora. Priced per vCPU-hour of the proxied database instances, billed continuously.

Amazon RDS
aws_db_snapshot

A manual snapshot of an RDS instance, billed per GB-month of backup storage beyond the free allowance. A 50 GB snapshot is ~$4.75/month.

Amazon RDS
aws_dms_replication_instance

A managed instance that runs database migration and replication tasks. Priced per instance-hour by class, doubled for Multi-AZ, plus storage.

AWS Database Migration Service
aws_documentdb_cluster

MongoDB-compatible managed document database. Instance-hour ($0.277/hour for db.r6g.large) plus storage ($0.10/GB-month) plus I/O ($0.20/M-requests). Backup storage above retention is $0.021/GB-month.

Amazon DocumentDB
aws_dynamodb_table

A managed NoSQL table. Pay-per-request (on-demand) or provisioned capacity, plus storage. No instances to manage.

Amazon DynamoDB
aws_elasticache_cluster

Managed Redis or Memcached. Priced per node-hour by instance type, with no storage or request charges.

Amazon ElastiCache
aws_elasticache_replication_group

A Redis (or Valkey) replication group with primary and replica nodes, optionally cluster-mode sharded. Priced per node-hour by node type across all shards and replicas.

Amazon ElastiCache
aws_elasticache_serverless_cache

A serverless Redis or Valkey cache that scales automatically. Priced per GB-hour of data stored plus per million ElastiCache Processing Units (ECPUs).

Amazon ElastiCache
aws_glue_job

A managed ETL job using Spark or Python shell. Priced per DPU-hour with 1-minute billing minimum, plus development endpoint and Data Catalog costs.

AWS Glue
aws_lightsail_database

A simplified managed database (MySQL/PostgreSQL) sold as a flat monthly bundle. The micro bundle is ~$15/month, all-in; HA bundles cost more.

Amazon Lightsail
aws_memorydb_cluster

A durable, Redis-compatible in-memory database. Priced per node-hour across all shards and replicas, plus per-GB data written and snapshot storage.

Amazon MemoryDB
aws_neptune_cluster

Managed graph database supporting Gremlin, openCypher, and SPARQL. Instance hours ($0.348/hour for db.r5.large) plus storage ($0.10/GB-month) plus I/O ($0.20/M requests). Neptune Serverless offers auto-scaling per-NCU.

Amazon Neptune
aws_neptune_cluster_instance

A compute instance in a Neptune graph-database cluster, billed per instance-hour by class. A db.r5.large runs ~$254/month, and a cluster usually has a writer plus readers.

Amazon Neptune
aws_opensearch_domain

A managed OpenSearch (formerly Elasticsearch) cluster. Priced per node-hour by instance type, plus storage and optional UltraWarm/Cold tiers.

Amazon OpenSearch Service
aws_qldb_ledger

A serverless immutable ledger database billed by write IOs, read IOs, and journal/indexed storage — no instances. 10M write IOs + 20 GB is ~$12/month.

Amazon QLDB
aws_rds_cluster

An Aurora cluster (MySQL or PostgreSQL compatible). Priced by per-instance compute, storage by GB used, and I/O (Standard) or compute (I/O-Optimized).

Amazon Aurora
aws_rds_cluster_instance

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.

Amazon Aurora
aws_redshift_cluster

A managed data warehouse. Two compute models: classic node-based pricing (per-hour) or Redshift Serverless (per-RPU-hour), plus managed storage.

Amazon Redshift
aws_timestreamwrite_table

A serverless time-series table billed by writes, storage tier, and queries — no instances. 100M writes + 500 GB magnetic storage is ~$65/month.

Amazon Timestream

Developer Tools

End User Computing

Integration

Machine Learning

Management

Messaging

Networking

aws_api_gateway_rest_api

A REST API endpoint. Priced per request, with no base hourly fee. Cheaper than ALB at low volume.

Amazon API Gateway
aws_apigatewayv2_api

HTTP and WebSocket APIs. HTTP API is 70% cheaper than REST API: $1.00 per million requests vs $3.50. WebSocket connections billed separately by connection-minute and messages.

Amazon API Gateway
aws_cloudfront_distribution

A CDN distribution. Priced by data transfer to viewers and request count, with rates varying by region.

Amazon CloudFront
aws_dx_connection

A dedicated physical network link to AWS, billed per port-hour by speed plus data transfer out. A 1 Gbps port is ~$219/month before egress.

AWS Direct Connect
aws_dx_connection

A dedicated physical network connection from on-premises to AWS. Priced per port-hour by bandwidth, plus per-GB data transfer at a lower rate than internet.

AWS Direct Connect
aws_ec2_transit_gateway

A network hub connecting multiple VPCs, VPNs, and Direct Connects. $0.05/hour per attachment plus $0.02/GB processed.

Amazon VPC
aws_ec2_transit_gateway_vpc_attachment

Attaches a VPC to a Transit Gateway, billed ~$0.05/hour (~$36.50/month) per attachment plus the data the TGW processes for it.

AWS Transit Gateway
aws_eip

A static public IPv4 address. Free while attached and in use, $0.005/hour while detached or unassociated. As of 2024, also charges per-hour for attached IPv4 in some scenarios.

Amazon EC2
aws_globalaccelerator_accelerator

Anycast IPs that route users to the nearest healthy endpoint over the AWS backbone. Priced as a fixed hourly fee plus a per-GB data transfer premium.

AWS Global Accelerator
aws_lb

A managed load balancer (ALB or NLB). Priced per hour plus per LCU/NLCU based on processed traffic.

Elastic Load Balancing
aws_lightsail_distribution

A simplified CDN fronting a Lightsail (or other) origin, sold as a flat monthly bundle with an included transfer allowance. The small bundle is ~$2.50/month.

Amazon Lightsail
aws_nat_gateway

A managed NAT gateway for outbound internet access from private subnets. Notoriously expensive: $0.045/hour plus $0.045/GB processed.

Amazon VPC
aws_networkfirewall_firewall

A managed VPC firewall billed per endpoint-hour plus traffic processed. One endpoint with 100 GB is ~$295/month — and multi-AZ deployments multiply the endpoint fee.

AWS Network Firewall
aws_route53_health_check

A health check that monitors an endpoint for DNS failover, billed ~$0.50/month for AWS endpoints or ~$0.75 for external ones, plus optional feature add-ons.

Amazon Route 53
aws_route53_resolver_endpoint

An inbound or outbound DNS resolver endpoint for hybrid name resolution, billed per elastic network interface (IP) per hour. Two IPs are ~$183/month, plus DNS query charges.

Amazon Route 53
aws_route53_zone

A DNS hosted zone. Flat $0.50/month per zone, plus tiered per-query charges.

Amazon Route 53
aws_vpc_endpoint

A private endpoint into AWS services from your VPC. Gateway endpoints (S3, DynamoDB) are free; Interface endpoints are ~$7/month per AZ plus data fees.

Amazon VPC
aws_vpn_connection

A site-to-site IPsec VPN connection between your VPC and on-premises network. $0.05/hour per active connection plus data transfer.

AWS Site-to-Site VPN

Observability

Security

Security & Identity

aws_cloudhsm_v2_hsm

A dedicated, single-tenant hardware security module billed per HSM-hour. One HSM is ~$1,168/month — and production needs at least two for HA.

AWS CloudHSM
aws_config_config_rule

A compliance rule evaluated by AWS Config, billed per rule evaluation. 10,000 evaluations is ~$10; cost scales with resource changes and rule count.

AWS Config
aws_config_configuration_recorder

Records resource configuration changes into AWS Config, billed per configuration item. 10,000 items is ~$30; cost is driven by recording scope and churn.

AWS Config
aws_directory_service_directory

A managed directory (Microsoft AD, Simple AD, or AD Connector) billed per hour. Standard Microsoft AD is ~$88/month; Simple AD is cheaper.

AWS Directory Service
aws_fms_policy

A Firewall Manager policy that centrally manages WAF/Shield/security-group rules across accounts, billed ~$100/policy/region/month — plus the resources it deploys.

AWS Firewall Manager
aws_guardduty_detector

Managed threat detection billed by the volume of CloudTrail events, VPC flow logs, and DNS logs analyzed. ~10M events + 100 GB logs is ~$140/month.

Amazon GuardDuty
aws_macie2_account

Managed sensitive-data discovery for S3, billed per bucket evaluated plus per GB inspected. 50 buckets + 100 GB inspected is ~$105/month.

Amazon Macie
aws_securityhub_account

Centralized security posture management, billed per security check and per finding ingested. 100K checks/month is ~$100, with tiers lowering the rate at scale.

AWS Security Hub
aws_shield_protection

Enrolls a resource in AWS Shield Advanced DDoS protection. Shield Advanced is a flat ~$3,000/month subscription per organization — shared across all protected resources.

AWS Shield Advanced

Serverless

Storage

aws_ebs_snapshot

A point-in-time backup of an EBS volume, stored in S3. $0.05/GB-month standard (incremental), or $0.0125/GB-month in the archive tier.

Amazon EBS
aws_ebs_volume

A persistent block storage volume. Priced per GB-month by volume type, with separate IOPS and throughput charges on certain types.

Amazon EBS
aws_efs_file_system

A managed NFS file system for shared access from EC2, ECS, EKS, and Lambda. Priced per GB stored, with tiered storage classes.

Amazon EFS
aws_fsx_file_system

Managed file storage for Windows, Lustre, NetApp ONTAP, and OpenZFS workloads. Pricing varies wildly: from $0.025/GB-month (Lustre HDD) to $0.30+/GB-month (Windows SSD with deduplication).

Amazon FSx
aws_fsx_lustre_file_system

A high-performance Lustre file system for HPC and ML. Bills per GB of provisioned storage, with throughput coupled to capacity. 1.2 TB at 125 MB/s/TiB is ~$174/month.

Amazon FSx
aws_fsx_ontap_file_system

A managed NetApp ONTAP file system with multiprotocol access and NetApp features, billed per GB of SSD capacity plus throughput. 1 TB Multi-AZ is ~$256/month.

Amazon FSx
aws_fsx_openzfs_file_system

A managed OpenZFS file system for NFS workloads with ZFS features, billed per GB of SSD capacity plus throughput. 64 GB Single-AZ is ~$5.76/month.

Amazon FSx
aws_fsx_windows_file_system

A managed SMB file system with Active Directory integration. Bills per GB of provisioned storage plus throughput; 32 GB SSD Single-AZ is ~$4/month, scaling with capacity.

Amazon FSx
aws_glacier_vault

A vault for long-term archival storage, billed per GB-month at the deep-archive rate. 1 TB is ~$3.60/month — cheap to store, but retrieval costs time and money.

Amazon S3 Glacier
aws_lightsail_bucket

Simplified object storage sold as a flat monthly bundle with included storage and transfer. The small bundle is ~$1/month, all-in.

Amazon Lightsail
aws_s3_bucket

Object storage on S3. Priced by storage class, request count, and data transfer, with the bucket itself being free.

Amazon S3
aws_storagegateway_gateway

Hybrid storage bridging on-premises to AWS. File Gateway ($0.023/GB-month + data transfer), Volume Gateway (per-GB cached or stored mode), Tape Gateway (VTL for backup). Pricing varies significantly by gateway type.

AWS Storage Gateway
aws_transfer_server

Managed SFTP, FTPS, or FTP access to S3 and EFS. Priced per protocol-hour the endpoint is enabled, plus per-GB uploaded and downloaded.

AWS Transfer Family