Skip to content
Resources

Cost Estimation Reference for Terraform Resources

Pricing dimensions, Terraform examples, and optimization tips for every resource C3X estimates across AWS, Azure, and Google Cloud.

azurerm_analysis_services_server

A managed tabular analytics engine billed per hour by tier. An S0 is ~$591/month if left running, but it can be paused, which stops the charge entirely.

Analytics
azurerm_api_management

Full API gateway with developer portal, rate limiting, transformations. Consumption ($3.50/M calls), Developer ($48/month, no SLA), Basic ($147/month), Standard ($686/month), Premium ($2,795/month per unit).

Networking
azurerm_app_configuration

A managed store for application settings and feature flags. Priced as a flat daily fee on the Standard tier, with a genuinely free tier.

Management
azurerm_application_gateway

A Layer 7 load balancer with WAF support. Priced by gateway hours, capacity units, and optional WAF tier.

Networking
azurerm_application_insights

Application performance monitoring. Bills through a linked Log Analytics workspace by GB ingested. Free tier covers 5 GB/month.

Observability
azurerm_automation_account

Runbook automation billed per job-run minute beyond a free monthly allowance, plus watcher hours. 10,500 job-minutes is ~$20.

Developer Tools
azurerm_backup_protected_vm

A VM enrolled in Azure Backup, billed a per-instance protection fee by VM size plus backup storage. A ≤500 GB VM with 100 GB of backups is ~$12/month.

Storage
azurerm_bastion_host

Managed, browser-based RDP/SSH access to VMs without public IPs. Priced per gateway-hour by SKU, plus outbound data transfer and scale-unit hours.

Networking
azurerm_batch_pool

A pool of compute nodes for batch/HPC jobs, billed the underlying VM rate per node. Two Standard_D2s_v5 dedicated nodes are ~$140/month, but autoscale and Spot make it usage-driven.

Compute
azurerm_cdn_endpoint

A CDN endpoint that caches and serves content from an origin, billed per GB of egress by zone. 1 TB of Zone 1 egress is ~$81/month.

Networking
azurerm_cdn_frontdoor_profile

Global CDN + WAF + load balancer. Standard at $35/month base + $0.17/GB outbound. Premium at $165/month base + $0.225/GB outbound. WAF rules and Private Link add fees. Anycast routing across 192+ POPs.

Networking
azurerm_cognitive_account

Managed AI APIs: OpenAI, Vision, Speech, Language, Translation. Pay-per-call (varies by service). OpenAI GPT-4o: $5/M input tokens, $15/M output. Vision: $1-$5/1K transactions. Speech-to-Text: $1/audio-hour.

Machine Learning
azurerm_container_app

Serverless containers billed by active vCPU-seconds and GiB-seconds. An always-on 0.5 vCPU / 1 GiB replica is ~$39/month; scale-to-zero apps cost far less.

Containers
azurerm_container_group

Serverless containers billed per vCPU-second and GB-second, only while running. 1 vCPU + 1.5 GB run 24/7 is ~$28/month; scale-to-zero workloads cost far less.

Containers
azurerm_container_registry

A managed Docker container registry. Three tiers (Basic, Standard, Premium) with different per-day rates and included storage.

Containers
azurerm_cosmosdb_account

A globally-distributed multi-model database. Priced by Request Units (RU/s) and storage, with provisioned and serverless options.

Database
azurerm_cosmosdb_cassandra_cluster

A managed Apache Cassandra cluster billed per node-hour by VM SKU. Three Standard_DS14_v2 nodes run ~$4,419/month, node count and SKU drive the whole bill.

Database
azurerm_dashboard_grafana

A managed Grafana instance for dashboards and observability. Priced on a per-instance hourly node fee plus a per-active-user charge.

Management
azurerm_data_factory

Managed ETL/ELT and data integration. Pipeline orchestration ($1/1K runs), data flow execution ($0.193-$0.34/vCore-hour for General Purpose), and Integration Runtime hours. Data movement billed separately ($0.25/DIU-hour Azure-hosted).

Analytics
azurerm_data_protection_backup_vault

A vault for backups of disks, blobs, databases, and AKS, billed per GB of backup storage. 500 GB of vaulted LRS backup is ~$50/month, retention drives the bill.

Storage
azurerm_databricks_workspace

Managed Spark and Delta Lake. Bills DBU (Databricks Units) at $0.15-$0.55/DBU-hour depending on workload type plus underlying VM costs. Photon engine adds ~30% to DBU rate for ~2-3x performance.

Analytics
azurerm_ddos_protection_plan

A network DDoS protection plan billed a flat ~$2,944/month, but it covers up to 100 public IPs across all your VNets, so the cost is meant to be shared.

Networking
azurerm_dedicated_host

A physical server dedicated to your VMs for isolation and licensing. Priced per host-hour by host SKU, independent of how many VMs you place on it.

Compute
azurerm_digital_twins_instance

A managed IoT digital-twin graph, billed purely by usage, operations, messages, and query units, each per 1,000. 1M operations is ~$2.50; no standing fee.

IoT
azurerm_dns_zone

A public DNS zone hosted on Azure's name servers. Priced per zone per month plus per-million queries, both at low flat rates.

Networking
azurerm_eventgrid_domain

A multi-tenant event routing domain billed per million operations. The first 100K/month are free, then ~$0.60/million, 10M operations is ~$6.

Integration
azurerm_eventgrid_event_subscription

A subscription that routes filtered events from a topic or Azure source to a handler. The subscription is free to define. Cost lives in Event Grid operations and in the downstream handler it invokes.

Integration
azurerm_eventgrid_topic

A managed event-routing topic. Priced per million operations, with a generous free tier and no always-on cost.

Application Integration
azurerm_eventhub

An individual event hub (partitioned log) inside an Event Hubs namespace. The hub itself is free. Cost lives on the parent namespace: throughput units, processing units, or dedicated capacity, plus ingress events and Capture.

Analytics
azurerm_eventhub_cluster

A single-tenant dedicated Event Hubs cluster billed per Capacity Unit-hour. One CU is ~$6,847/month, only worth it at very high, sustained throughput.

Analytics
azurerm_eventhub_namespace

A Kafka-compatible event streaming platform. Tier-based pricing (Basic, Standard, Premium, Dedicated) with throughput units or processing units.

Messaging
azurerm_express_route_circuit

A private, dedicated connection between on-premises and Azure. Priced as a monthly circuit fee by bandwidth and billing model, plus outbound data on the metered plan.

Networking
azurerm_firewall

Managed network firewall. Standard SKU at $1.25/hour ($912/month) plus $0.016/GB processed. Premium SKU at $1.75/hour adds TLS inspection and IDPS. Often the most expensive single resource in a subscription.

Security
azurerm_hdinsight_hadoop_cluster

A managed Hadoop/Hive cluster on HDInsight, billed per node-hour for head and worker VMs. A 2-head + 3-worker cluster is ~$1,894/month, and it doesn't auto-pause.

Analytics
azurerm_hdinsight_hbase_cluster

A managed Apache HBase (NoSQL wide-column) cluster on HDInsight, billed per node-hour for head and worker (region server) VMs. A 2-head + 3-worker cluster is ~$1,894/month.

Analytics
azurerm_hdinsight_interactive_query_cluster

A managed Hive LLAP (Interactive Query) cluster on HDInsight, billed per node-hour for head and worker VMs. A 2-head + 3-worker cluster is ~$1,894/month.

Analytics
azurerm_hdinsight_kafka_cluster

A managed Apache Kafka cluster on HDInsight, billed per node-hour for head and worker (broker) VMs. A 2-head + 3-broker cluster is ~$1,894/month, running continuously.

Analytics
azurerm_hdinsight_spark_cluster

A managed Apache Spark cluster billed per node-hour for head and worker VMs. A 2-head + 3-worker cluster is ~$1,894/month, running continuously.

Analytics
azurerm_healthcare_fhir_service

A managed FHIR (healthcare data) service billed by structured storage plus optional provisioned throughput. 100 GB of storage is ~$25/month.

Database
azurerm_image

A custom VM image stored as managed-disk snapshots, billed per GB-month. A 127 GB image is ~$6.35/month.

Storage
azurerm_iothub

A managed IoT message broker billed per provisioned unit by tier. An S1 unit is $25/month and includes a daily message quota; you scale by adding units.

IoT
azurerm_iothub_dps

Zero-touch device provisioning for IoT Hub, billed per provisioning operation. 100K operations is ~$12, it's a low, usage-based cost.

IoT
azurerm_key_vault

A managed secret, key, and certificate store. Two tiers: Standard (pay-per-operation) and Premium (HSM-backed keys, higher rate).

Security
azurerm_key_vault_access_policy

A Key Vault access policy is free. Granting a principal permissions on a vault costs nothing. It is authorization, not a billed resource.

Security
azurerm_key_vault_certificate

Storing a certificate is effectively free at rest; the charges are certificate renewals and the key operations behind it. Key Vault bills these per operation on the parent vault.

Security
azurerm_key_vault_secret

Storing a secret is effectively free; the charge is the operations against it. Key Vault bills per 10,000 operations on the parent vault, so reads and writes are the real cost.

Security
azurerm_kubernetes_cluster

A managed Kubernetes cluster on AKS. Control plane is free in Standard tier; you pay for the underlying node VMs and disks.

Containers
azurerm_kubernetes_cluster_node_pool

An additional node pool for an AKS cluster, billed as the underlying VMs it runs. Two Standard_D2s_v5 nodes are ~$140/month.

Containers
azurerm_kusto_cluster

A managed analytics engine (Kusto) for fast queries over telemetry and logs. Priced on the underlying VM instances plus an Azure Data Explorer markup per vCPU-hour.

Analytics
azurerm_lb

Layer-4 (TCP/UDP) load balancer. Standard SKU at $0.025/hour + $0.005 per processed GB. Basic SKU is free but deprecated for production (retiring 2025). Outbound rules and inbound NAT count toward the rule limit.

Networking
azurerm_lb_rule

A load-balancing rule that maps a frontend port to a backend pool. The rule is free to define. Cost lives on the parent Standard Load Balancer: a base rule charge, per-rule overage, data processed, and the public IP.

Networking
azurerm_linux_function_app

A serverless function app. Three hosting plans with different cost models: Consumption (per-execution), Premium (always-warm), or App Service Plan (fixed).

Serverless
azurerm_linux_virtual_machine

A single Linux VM. Billed per hour for the chosen size plus a separate managed OS disk. A Standard_D2s_v5 runs ~$70/month before the disk.

Compute
azurerm_linux_virtual_machine_scale_set

A group of identical Linux VMs that scales as a unit. Priced per instance-hour by VM size times the instance count, plus per-instance managed OS disks.

Compute
azurerm_load_test

A managed load-testing service billed per virtual user hour beyond a free monthly allowance. 1,050 VUH (1,000 billable) is ~$150/month.

Developer Tools
azurerm_log_analytics_cluster

A dedicated Log Analytics cluster requiring a daily-ingestion commitment. The minimum 100 GB/day commitment tier is ~$5,880/month, only for very high ingestion.

Observability
azurerm_log_analytics_solution

A management solution (such as ContainerInsights or VMInsights) enabled on a Log Analytics workspace. The solution is free to add. Cost lives in the data it causes the workspace to ingest and retain.

Management
azurerm_log_analytics_workspace

A workspace for ingesting, storing, and querying logs. Pay-As-You-Go by GB ingested, with optional Commitment Tiers for discounts.

Observability
azurerm_logic_app_standard

A Standard-plan Logic App running on dedicated compute, billed per hour for the workflow plan. A WS1 plan is ~$143/month, regardless of how many workflows run on it.

Integration
azurerm_logic_app_workflow

A Consumption-plan Logic App billed per action executed, no standing fee. 1M built-in actions is ~$25; it scales to zero when idle.

Integration
azurerm_machine_learning_compute_cluster

An autoscaling cluster for ML training and batch jobs. Priced on the underlying VM rate per node-hour, scaling between min and max nodes with the workload.

Compute
azurerm_machine_learning_compute_instance

A managed dev VM for Azure ML, billed the underlying VM rate per hour while running. A Standard_DS3_v2 is ~$214/month if left on, and idle instances are the classic waste.

Machine Learning
azurerm_managed_disk

A block storage disk for Azure VMs. Priced by disk type and tier (per-disk for Premium SSD, per-GB for Standard).

Storage
azurerm_managed_lustre_file_system

A high-performance Lustre file system for HPC/ML, billed per GiB of provisioned capacity by throughput tier. 4 TB at the 250 MB/s/TiB tier is ~$696/month.

Storage
azurerm_maps_account

Location and mapping APIs billed per transaction (tiles, routing, search). The account itself is free; usage drives cost, 100K tile transactions is ~$500 on S1.

Other
azurerm_mariadb_server

A managed MariaDB server billed per vCore plus storage. A 2-vCore server with 50 GB is ~$182/month, but the service is retiring, so plan a migration.

Database
azurerm_monitor_metric_alert

A metric alert rule billed per monitored time series. A standard (static-threshold) rule is ~$0.10/month; dynamic-threshold rules are ~$0.50.

Observability
azurerm_mssql_database

Managed SQL Server in Azure. DTU model from $4.90/month (Basic 5 DTU) or vCore model from $0.18/vCore-hour (General Purpose Serverless). Hyperscale tier scales beyond 4 TB. License-included or BYOL via Hybrid Benefit.

Database
azurerm_mssql_elasticpool

A shared pool of resources for many Azure SQL databases. Priced per pool vCore-hour (or DTU) plus pool storage, amortizing capacity across databases.

Database
azurerm_mssql_managed_instance

A fully managed SQL Server instance with near-100% engine compatibility. Priced per vCore-hour by service tier and hardware generation, plus included and overage storage.

Database
azurerm_mssql_server

The logical SQL server that hosts Azure SQL databases and elastic pools. The server is free. Cost lives on the databases and pools it contains: DTU or vCore compute, storage, and backup.

Database
azurerm_mysql_flexible_server

Managed MySQL with vCPU-based pricing. Burstable B1ms at $13.87/month, General Purpose D2ds_v4 at ~$140/month. Storage $0.115/GB-month. HA doubles compute cost; zone-redundant adds 25% on top.

Database
azurerm_mysql_server

The legacy MySQL Single Server, billed per vCore plus storage. A 2-vCore GP server with 50 GB is ~$70/month, but Single Server is retired, so migrate to Flexible Server.

Database
azurerm_nat_gateway

Managed outbound SNAT for a subnet. Priced per gateway-hour plus per-GB of data processed, with the attached public IP billed separately.

Networking
azurerm_netapp_pool

A provisioned capacity pool for high-performance NFS/SMB file storage. Priced per provisioned TiB by service level, billed on allocated (not used) capacity.

Storage
azurerm_network_interface

A network interface is free. The NIC and its private IP cost nothing. The cost comes from the VM it attaches to, any public IP bound to it, and the traffic it carries.

Networking
azurerm_network_security_group

A network security group is free. The group, its rules, and the traffic it filters cost nothing. The cost sits in the resources it protects and, if enabled, in flow logging.

Networking
azurerm_orchestrated_virtual_machine_scale_set

A Flexible-orchestration VM scale set, billed per instance-hour at the VM rate. Two Standard_D2s_v5 instances are ~$140/month, scaling with the instance count.

Compute
azurerm_point_to_site_vpn_gateway

A user (point-to-site) VPN gateway in a Virtual WAN hub, billed per scale unit-hour plus per connected user. One scale unit is ~$264/month.

Networking
azurerm_postgresql_flexible_server

A managed PostgreSQL server. Priced by compute SKU, storage size, and high-availability mode.

Database
azurerm_postgresql_flexible_server_database

A logical database inside a PostgreSQL Flexible Server. The database is free. Cost lives on the parent server: compute vCores, provisioned storage, IOPS, and backup beyond the free allowance.

Database
azurerm_postgresql_server

The legacy PostgreSQL Single Server, billed per vCore plus storage. A 2-vCore GP server with 50 GB is ~$70/month, but Single Server is retired, so migrate to Flexible Server.

Database
azurerm_powerbi_embedded

Dedicated Power BI capacity for embedding analytics in apps, billed per hour by A-SKU. An A1 is ~$736/month, but it can be paused when not in use.

Analytics
azurerm_private_dns_a_record

A private DNS A record is free to declare; the cost lives on the Private DNS zone. The zone bills a small monthly hosting fee plus a per-million-queries charge that record lookups drive.

Networking
azurerm_private_dns_resolver

A managed DNS resolver for hybrid name resolution between Azure and on-prem, billed per inbound/outbound endpoint-hour. Two endpoints are ~$365/month.

Networking
azurerm_private_dns_zone

A private DNS zone for name resolution within VNets, billed a flat ~$0.50/zone/month plus per-million queries. 1M queries is ~$0.90.

Networking
azurerm_private_endpoint

A private IP into a PaaS service over Private Link. ~$0.01/hour per endpoint (~$7.30/month) plus $0.01/GB processed, small individually, large in aggregate.

Networking
azurerm_public_ip

Public IPv4 or IPv6 address. Standard SKU at $0.005/hour ($3.65/month). Basic SKU is deprecated and retiring. Per-IP charges apply whether the IP is attached or unattached.

Networking
azurerm_purview_account

A data-governance and catalog account billed per always-on Data Map capacity unit, plus scanning. One capacity unit is ~$300/month before scans.

Analytics
azurerm_recovery_services_vault

The container for Azure Backup and Azure Site Recovery. The vault is free. Cost lives on what you protect: per-instance backup fees, backup storage, and Site Recovery per-instance replication.

Storage
azurerm_redis_cache

A managed Redis cache. Priced per hour by tier (Basic, Standard, Premium, Enterprise) and cache size.

Database
azurerm_redis_enterprise_cluster

The Enterprise tier of Azure Cache for Redis, billed a flat hourly rate by SKU. An Enterprise_E10-2 runs ~$609/month, the capacity (E-number) drives the cost.

Database
azurerm_relay_namespace

A namespace for Hybrid Connections / WCF Relay, billed per listener plus message volume. One Hybrid Connection listener is ~$9.78/month.

Integration
azurerm_resource_group

A resource group is free. It is a logical container for resources, not a billed service. The cost is the sum of everything you place inside it.

Management
azurerm_role_assignment

A role assignment is free. Granting a principal a role over a scope costs nothing. It is access control, not a billed resource.

Security
azurerm_route

A route is free. A single user-defined route in a route table costs nothing. The cost is whatever paid next hop the route directs traffic toward.

Networking
azurerm_route_table

A route table is free. User-defined routes and their association to subnets cost nothing. The cost sits in whatever the routes point traffic at.

Networking
azurerm_search_service

Managed full-text and vector search. Free tier for development. Basic at $75/month, Standard from $250/month per Search Unit. Semantic ranking and vector search included on Standard+.

Analytics
azurerm_sentinel_log_analytics_workspace_onboarding

Onboards a Log Analytics workspace to Microsoft Sentinel (SIEM), adding a per-GB analysis charge on top of Log Analytics ingestion. 100 GB/month is ~$430.

Security & Identity
azurerm_service_plan

The compute plan that hosts Web Apps and Function Apps, billed per instance-hour by tier × worker count. A B1 plan with one worker is ~$12/month.

Compute
azurerm_servicebus_namespace

Enterprise messaging with queues and topics. Basic ($0.05/M operations), Standard ($0.0135/hour + $0.80/M operations), Premium ($0.99/hour per Messaging Unit). Premium for VNet isolation, predictable performance.

Messaging
azurerm_servicebus_queue

A Service Bus queue is free to declare; its cost is billed on the parent namespace. The namespace tier (Basic, Standard, or Premium) sets whether you pay per operation or per messaging unit.

Messaging
azurerm_servicebus_subscription

A Service Bus subscription is free to declare; its cost is billed on the parent namespace. Each subscription receives a copy of topic messages, and those deliveries are metered operations.

Messaging
azurerm_servicebus_topic

A Service Bus topic is free to declare; its cost is billed on the parent namespace. Publish-subscribe fan-out means each subscription that receives a message adds a metered operation.

Messaging
azurerm_signalr_service

Managed real-time messaging over WebSockets. Priced per unit per day by tier, with included connections and messages per unit.

Application Integration
azurerm_site_recovery_replicated_vm

A VM protected by Azure Site Recovery (DR replication), billed ~$25/protected instance/month plus the storage and egress the replica consumes.

Storage
azurerm_snapshot

A point-in-time copy of a managed disk, billed per GB-month. A 128 GB Standard LRS snapshot is ~$6.40/month.

Storage
azurerm_spring_cloud_service

A managed platform for Spring Boot apps. The Standard tier carries a per-hour base fee (~$578/month) on top of per-app vCPU/memory usage.

Compute
azurerm_static_web_app

Managed hosting for static sites with serverless API backends. Priced as a flat monthly plan fee, with a genuinely free tier for small projects.

Compute
azurerm_storage_account

A storage account for Blob, File, Queue, and Table services. Priced by service type, redundancy, access tier, and operations.

Storage
azurerm_storage_blob

Declaring a blob is free; the data it holds is not. A blob drives capacity, transaction, and egress charges on the parent storage account by its size, access tier, and read volume.

Storage
azurerm_storage_container

A blob container is free. It is a namespace for blobs, not a billed resource. The cost is the blobs inside it and the transactions against them on the parent storage account.

Storage
azurerm_storage_management_policy

A lifecycle management policy is free, and it usually lowers your bill. It tiers and expires blobs automatically on the parent storage account, cutting capacity cost.

Storage
azurerm_storage_queue

A storage queue is free to declare. The cost is transactions and the small message capacity it holds, billed on the parent storage account by operation volume.

Storage
azurerm_storage_share

A managed SMB/NFS file share billed by tier and capacity. A 100 GiB standard share is ~$6/month; Premium provisions capacity at a higher rate.

Storage
azurerm_storage_table

A storage table is free to declare. The cost is capacity for the entities it holds and transactions against them, billed on the parent storage account by volume.

Storage
azurerm_stream_analytics_job

A real-time stream-processing job billed per Streaming Unit-hour. Three streaming units run ~$241/month, and the job bills while it's running whether or not events flow.

Analytics
azurerm_subnet

A subnet is free. Carving an address range out of a virtual network costs nothing. The cost lives in the resources you place inside the subnet and the traffic they generate.

Networking
azurerm_synapse_spark_pool

An Apache Spark pool in Synapse billed per vCore-hour of active nodes. Three Small nodes running full-time are ~$1,253/month, but auto-pause makes the real cost usage-driven.

Analytics
azurerm_synapse_sql_pool

A dedicated, provisioned data-warehouse pool. Priced per cDWU-hour by performance level, plus separately-billed storage, and pausable to stop compute charges.

Analytics
azurerm_synapse_workspace

Unified data warehouse + Spark + serverless SQL + Data Factory pipelines. Dedicated SQL pool from $1.20/DWU-hour. Spark pool $0.143/vCore-hour. Serverless SQL $5/TB scanned. Workspace itself is free.

Analytics
azurerm_traffic_manager_profile

DNS-based global load balancing billed per million DNS queries plus per monitored endpoint. 10M queries with 2 endpoints is ~$6/month.

Networking
azurerm_user_assigned_identity

A user-assigned managed identity is free. Creating a standalone identity and attaching it to resources costs nothing. It removes credentials, not charges.

Security
azurerm_virtual_hub

The central hub of an Azure Virtual WAN, billed per hour for the hub plus per GB of data processed. The hub base is ~$182.50/month before data and gateways.

Networking
azurerm_virtual_network

A virtual network is free. The address space, subnets, and the network itself cost nothing. The bill comes from the paid resources you run inside it and the traffic it carries.

Networking
azurerm_virtual_network_gateway

A VPN (or ExpressRoute) gateway billed per hour by SKU. A VpnGw1 runs ~$139/month just to exist, before any data processing.

Networking
azurerm_vpn_gateway

A scalable VPN gateway in a Virtual WAN hub, billed per scale unit-hour. One scale unit is ~$264/month, plus data processed through the hub.

Networking
azurerm_web_pubsub

Managed real-time messaging over WebSockets with a pub/sub model. Priced per unit per day by tier, with included connections and messages per unit.

Application Integration
azurerm_windows_virtual_machine

A single Windows VM. Bills per hour for the size, including a Windows license surcharge, plus a managed OS disk. A Standard_D2s_v5 runs ~$137/month before the disk.

Compute
azurerm_windows_virtual_machine_scale_set

A fleet of identical Windows VMs that scales as a unit, billed per instance-hour (Windows rate). Three Standard_D2s_v5 instances are ~$412/month.

Compute
google_alloydb_cluster

PostgreSQL-compatible managed database with up to 4x faster queries than standard PG. CPU $0.06814/vCPU-hour + memory $0.00822/GB-hour. Storage $0.30/GB-month. Designed for OLTP and analytical workloads.

Database
google_alloydb_instance

A PostgreSQL-compatible instance within an AlloyDB cluster. Priced per vCPU-hour and per GB of memory-hour, plus separately-billed cluster storage.

Database
google_api_gateway_api

A managed gateway for serverless backends. Priced per million API calls, with a free tier and no always-on cost.

Application Integration
google_artifact_registry_repository

A managed registry for container images, Helm charts, language packages. $0.10/GB-month storage plus data transfer.

Containers
google_bigquery_dataset

A serverless data warehouse dataset. Two pricing models: on-demand ($6.25/TB scanned) or capacity-based (slot-hours).

Database
google_bigquery_job

A BigQuery job is free to submit. A query job bills per TiB of data scanned under on-demand pricing; load, copy, and export jobs are free. Bytes scanned is the cost.

Analytics
google_bigquery_reservation

Dedicated BigQuery compute capacity (slots) for predictable query pricing. Priced per slot-hour by edition, billed for the reserved slot count.

Analytics
google_bigquery_table

A BigQuery table is free to declare. Cost comes from the data stored in it per GB-month and the bytes queries scan against it, so schema and partitioning drive the real bill.

Analytics
google_bigtable_instance

Wide-column NoSQL for low-latency, high-throughput workloads. $0.65/node-hour (SSD) or $0.17/node-hour (HDD) plus storage. 3-node minimum production. Replication to another region doubles node cost.

Database
google_certificate_manager_certificate

TLS certificates for Google Cloud load balancers. Google-managed and self-managed certificates are free. Cost lives in the load balancer that serves them and, for private PKI, in Certificate Authority Service.

Security
google_cloud_ids_endpoint

A managed intrusion detection endpoint built on Palo Alto threat engines. Priced per endpoint-hour plus per-GB of traffic inspected.

Security
google_cloud_run_service

A serverless container service. Billed by request count and per-request CPU/memory time. Generous free tier.

Serverless
google_cloud_run_v2_service

A fully managed container service that scales to zero. Priced per vCPU-second and GiB-second while requests are being handled, plus per-request fees.

Serverless
google_cloud_scheduler_job

A managed cron job that triggers HTTP, Pub/Sub, or App Engine targets on a schedule. Priced per job per month, with the first three jobs free.

Application Integration
google_cloud_tasks_queue

Managed task queue for HTTP/gRPC targets. First 1M tasks/month free, then $0.40 per million tasks. No queue infrastructure to manage. Tasks call HTTP endpoints (Cloud Run, Cloud Functions, GKE services) with retry and rate limiting.

Messaging
google_cloudfunctions_function

A 1st-gen serverless function. Priced per invocation plus compute time (GHz-seconds and GB-seconds), with a generous free tier and scale to zero.

Serverless
google_cloudfunctions2_function

A serverless function (2nd gen, Cloud Run-based). Billed per invocation, vCPU-time, memory-time, and outbound networking.

Serverless
google_composer_environment

Managed Apache Airflow. Composer 2: ~$455/month minimum (web server $73 + scheduler $73 + workers $25/CPU + Cloud SQL $73). Composer 3 introduces serverless workers. Often the priciest 'orchestration' bill.

Analytics
google_compute_address

A reserved static IP address. Per-hour charge based on attachment state and IP version (IPv4 vs IPv6).

Networking
google_compute_attached_disk

Attaches an existing persistent disk to a Compute Engine instance. The attachment is free. Cost lives on the disk itself: provisioned capacity by disk type, plus snapshots and regional replication.

Storage
google_compute_autoscaler

An autoscaler is free. It varies the size of a managed instance group with demand. The cost is the VMs it runs, which floats between the min and max you set.

Compute
google_compute_backend_service

A backend service is free configuration. It binds a load balancer to its backends and their health checks. The Cloud Load Balancing charge lands on the forwarding rule plus data processed.

Networking
google_compute_disk

A block storage disk for Compute Engine VMs. Priced per GB-month by disk type. Hyperdisk adds per-IOPS and per-throughput billing.

Storage
google_compute_firewall

A VPC firewall rule is free. It allows or denies traffic to and from instances at no cost. The bill comes from the resources the rule protects and the traffic it permits.

Networking
google_compute_forwarding_rule

A regional forwarding rule is where the Cloud Load Balancing charge lands. It bills an hourly rate per rule plus per-GB data processed, on top of the backends behind it.

Networking
google_compute_global_address

A reserved global static external IP. Charged ~$0.01/hour (~$7.30/month) only while reserved-but-unattached, attached to a load balancer it's free.

Networking
google_compute_global_forwarding_rule

A global forwarding rule is where the global Cloud Load Balancing charge lands. It bills an hourly rate per rule plus per-GB data processed, in front of a global HTTP(S) or proxy load balancer.

Networking
google_compute_ha_vpn_gateway

A high-availability IPsec VPN gateway with a 99.99% SLA. Priced per tunnel-hour, plus standard egress on traffic leaving Google Cloud.

Networking
google_compute_health_check

A health check is free. It probes backends to decide which are eligible for traffic. The cost sits on the load balancer's forwarding rule and the backends it protects.

Networking
google_compute_instance

A Google Compute Engine VM. Priced per second by machine type, region, and license. Sustained-use discounts apply automatically.

Compute
google_compute_instance_group

An instance group is free. It manages a fleet of VMs from a template. The cost is the running VMs times the group's size, priced by machine type and disk.

Compute
google_compute_instance_group_manager

A managed instance group that runs and autoscales a fleet of identical VMs, billed as the Compute Engine instances. 3× e2-medium is ~$73/month.

Compute
google_compute_instance_template

An instance template is free. It is a blueprint for VMs. The cost is every VM a managed instance group stamps out from it, priced by machine type and disk.

Compute
google_compute_interconnect_attachment

A VLAN attachment connecting your VPC to a Cloud Interconnect, billed per hour by capacity. A 1 Gbps attachment is ~$75/month, plus egress over the link.

Networking
google_compute_network

A VPC network is free. The network, its routes, and internal traffic within a region cost nothing. The bill comes from the resources you run inside it and the traffic that leaves it.

Networking
google_compute_region_instance_group_manager

A regional (multi-zone) managed instance group, billed as the Compute Engine VMs it runs across zones. 3× e2-medium is ~$73/month.

Compute
google_compute_route

A VPC route is free. It tells traffic where to go within a network. The cost sits on the next hop it points at, such as a Cloud NAT gateway or a VM, and the egress it enables.

Networking
google_compute_router

A Cloud Router is free. It runs BGP to exchange dynamic routes at no charge. The cost lands on what it hosts, chiefly Cloud NAT, and on the VPN or Interconnect attachments it advertises.

Networking
google_compute_router_nat

Managed NAT gateway for private GKE/VMs reaching the internet. $0.044/hour per gateway + $0.045/GB processed. Significantly cheaper than AWS NAT Gateway, and outbound to Google services is free via Private Google Access.

Networking
google_compute_security_policy_advanced

A Cloud Armor (Enterprise tier) WAF/DDoS policy billed per policy plus per rule, plus request inspection. A policy with 5 rules is ~$10/month before requests.

Security & Identity
google_compute_subnetwork

A subnetwork is free. It carves a regional IP range out of a VPC, and the cost comes from the resources placed in it and the traffic they generate.

Networking
google_compute_target_http_proxy

A target HTTP proxy is free. It connects a forwarding rule to a URL map for HTTP load balancing. The Cloud Load Balancing charge sits on the forwarding rule and data processed.

Networking
google_compute_target_https_proxy

A target HTTPS proxy is free, and so are Google-managed SSL certificates. It terminates TLS and routes via a URL map. The Cloud Load Balancing charge sits on the forwarding rule and data processed.

Networking
google_compute_url_map

A URL map is free. It routes requests by host and path to backend services. The Cloud Load Balancing charge sits on the forwarding rule and data processed.

Networking
google_compute_vpn_tunnel

An IPsec VPN tunnel to an on-premises or peer network, billed per tunnel-hour. One tunnel is ~$37/month, and HA VPN needs two, plus egress over the tunnel.

Networking
google_container_cluster

A managed Kubernetes cluster on GKE. Two operating modes: Standard with per-cluster management fee, or Autopilot priced per pod.

Containers
google_container_node_pool

Compute Engine worker nodes for a GKE cluster. Bills as the VMs it runs: node_count × machine_type. 3× e2-standard-4 is ~$294/month.

Containers
google_dataflow_job

A managed Apache Beam job for streaming and batch data processing. Priced per worker-hour by machine type and tier, plus data processed.

Database
google_dataproc_cluster

Managed Spark, Hadoop, Flink, and Presto. Bills underlying Compute Engine VMs + $0.010/vCPU-hour Dataproc fee. Dataproc Serverless eliminates cluster management. Dataproc on GKE runs Spark on existing GKE.

Analytics
google_dataproc_metastore_service

A managed Hive metastore for data lakes. Priced as a flat hourly service fee by tier, billed continuously while the service runs.

Analytics
google_dns_managed_zone

A managed DNS zone. Priced per zone per month plus per-query, both at low flat rates that scale with the number of zones and query volume.

Networking
google_dns_policy

A network-level Cloud DNS policy for inbound or outbound forwarding, alternative name servers, and query logging. The policy is free. Cost lives in Cloud DNS zones and queries and in the logging it can enable.

Networking
google_dns_record_set

A DNS record set is essentially free to define. Cloud DNS bills per managed zone per month and per million queries, so cost scales with zones and query volume, not with individual records.

Networking
google_filestore_instance

Managed NFS file storage. Basic HDD at $0.16/GB-month (1 TB min). Basic SSD at $0.30/GB-month. Enterprise tier at $0.45/GB-month with regional replication. High Scale at $0.10/GB-month for parallel workloads.

Storage
google_firestore_database

A serverless document database billed by reads, writes, deletes, and storage, no instances. 10M reads + 2M writes + 50 GB is ~$19/month, with a free daily tier.

Database
google_kms_crypto_key

Customer-managed encryption keys. Software keys $0.06/key-month + $0.03/10K operations. HSM keys $1-$2.50/key-month + $0.03/10K operations. External Key Manager (EKM) keys also supported.

Security
google_kms_crypto_key_version

An individual cryptographic key version in Cloud KMS, billed per active version per month (software ~$0.06; HSM more), plus per cryptographic operation.

Security & Identity
google_kms_key_ring

A KMS key ring is free. It is a regional container that groups crypto keys. The cost is on the keys inside it: active key versions and cryptographic operations.

Security
google_logging_project_bucket_config

A bucket for storing GCP logs. Ingestion is $0.50/GiB beyond the free tier; storage beyond 30 days is $0.01/GiB-month.

Observability
google_logging_project_sink

Routes matching log entries from a project to a destination such as BigQuery, Cloud Storage, Pub/Sub, or another log bucket. The sink is free. Cost lives in the destination and in Cloud Logging ingestion.

Management
google_looker_instance

A managed Looker BI platform instance. Priced per instance-hour by platform edition, billed continuously while the instance runs.

Analytics
google_memcache_instance

A managed Memcached cluster. Priced per node by vCPU-hour and memory GB-hour, multiplied across the node count.

Database
google_notebooks_instance

A managed JupyterLab notebook VM for data science. Priced at the underlying Compute Engine rate per hour, plus boot disk and any attached GPUs.

Compute
google_privateca_certificate_authority

A managed private certificate authority. Priced as a flat monthly CA fee by tier, plus a per-certificate issuance charge.

Security
google_project_iam_binding

Grants a role to a set of members at the project level, authoritatively for that role. IAM is always free. Cost lives in what the granted access lets members create and consume, and in the audit logs it can generate.

Security
google_project_iam_member

A project IAM binding is free. It grants a role to a member at the project level. It has no charge; it only enables access to resources that may cost money.

IAM
google_pubsub_subscription

A Pub/Sub subscription is free to create. Cost comes from message throughput delivered, retained storage for unacked or replayable messages, and egress to the subscriber.

Messaging
google_pubsub_topic

A pub/sub topic for messaging. Priced per TB of message ingestion and delivery, with a generous free tier.

Messaging
google_redis_cluster

A horizontally-scalable, sharded Redis Cluster on Memorystore. Priced per shard-node-hour by capacity, multiplied across shards and replicas.

Database
google_redis_instance

A managed Redis instance. Priced per GB-hour by service tier (Basic or Standard) and capacity.

Database
google_secret_manager_secret

A managed secret with versioning and IAM access. $0.06/month per active secret version, plus per-access fees beyond the free tier.

Security
google_secret_manager_secret_version

A secret version holds one payload of a secret. Secret Manager bills per active secret version per month and per 10,000 access operations, so cost tracks versions and how often they are read.

Security
google_service_account

A service account is free. It is an identity for workloads to authenticate and be granted permissions. It has no charge and no cost drivers of its own.

IAM
google_spanner_instance

Globally-consistent, horizontally-scalable SQL database. $0.90/node-hour ($657/month) for regional, $3/node-hour for multi-region. Storage $0.30/GB-month regional, $0.50/GB-month multi-region. Processing Units offer 1/1000th node granularity.

Database
google_sql_database_instance

A managed MySQL, PostgreSQL, or SQL Server database. Priced by tier, storage, and HA mode. Sustained-use discounts apply.

Database
google_storage_bucket

Object storage on GCS. Priced by storage class, region, operations, and egress. Lifecycle rules can auto-tier cold data.

Storage
google_storage_bucket_iam_binding

Grants a role to members on a single Cloud Storage bucket, authoritatively for that role. IAM is free. Cost lives in the bucket's storage, operations, and egress, and a public grant can drive a large egress bill.

Security
google_storage_bucket_iam_member

A bucket IAM binding is free. It grants a role to a member on a Cloud Storage bucket. The cost is the bucket itself: its stored data, operations, and egress.

IAM
google_vertex_ai_endpoint

Managed ML inference endpoint. Bills n1-standard-2 at $0.05/hour up to GPU-backed n1-highmem-32 at $5+/hour. Foundation model endpoints (Gemini, PaLM) bill per-token. Batch prediction available for offline workloads.

Machine Learning
google_vmwareengine_cluster

A dedicated VMware vSphere cluster running on Google Cloud. Priced per ESXi node-hour, with a multi-node minimum that makes this one of the largest standing costs.

Compute
google_workbench_instance

A managed Jupyter notebook VM for Vertex AI, billed the underlying Compute Engine rate per hour. An e2-standard-4 is ~$98/month if left on, idle notebooks are the waste.

Machine Learning
google_workflows_workflow

Serverless orchestration that chains services and APIs. Priced per step executed, separating cheaper internal steps from pricier external HTTP calls.

Application Integration
aws_acm_certificate

TLS certificates for AWS services. Public certificates are free with auto-renewal. Private CA-issued certificates bill $400/month per private CA. Wildcard and SAN certificates included at no extra cost.

Security
aws_acmpca_certificate_authority

A managed private certificate authority. Priced as a flat monthly CA fee by mode, plus a per-certificate issuance charge.

Security
aws_amplify_app

Managed hosting for web apps, billed by build minutes, served data, and storage. A small app (500 build min, 15 GB served, 5 GB stored) is ~$7/month.

Developer Tools
aws_api_gateway_rest_api

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

Networking
aws_apigateway_method

An HTTP verb (GET, POST, etc.) on a REST API resource. The method definition is free. The REST API it belongs to bills $3.50 per million requests plus data transfer, and optional caching adds $0.02 to $3.80 per hour.

Networking & Content Delivery
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.

Networking
aws_apigatewayv2_route

A route (like GET /items or a WebSocket action) on an HTTP or WebSocket API. Routes are free. The parent API bills $1.00 per million requests for HTTP APIs, or per message plus connection minutes for WebSocket APIs.

Networking & Content Delivery
aws_apigatewayv2_stage

A deployment stage (like prod or dev) for an HTTP or WebSocket API. Stages are free. They are where access logging and detailed metrics are enabled, and both of those feed billed CloudWatch Logs and metrics.

Networking & Content Delivery
aws_appautoscaling_target

An Application Auto Scaling target is free. It registers a resource (ECS service, DynamoDB table, and others) as scalable, and the cost is the capacity that resource runs at.

Management
aws_apprunner_service

A managed container service that scales to zero between requests. Priced on provisioned memory plus active vCPU, with separate build minutes.

Compute
aws_appstream_fleet

A fleet of streaming application instances. Bills per instance-hour by type × fleet size. Two stream.standard.medium instances always-on are ~$146/month.

End User Computing
aws_appsync_graphql_api

A managed GraphQL API with real-time subscriptions. Priced per query/mutation operation and per real-time update, plus connection minutes and optional caching.

Application Integration
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.

Analytics
aws_autoscaling_group

An Auto Scaling Group is free to create. Its cost is entirely the EC2 instances it launches, so the bill scales with desired_capacity times the instance type times uptime.

Compute
aws_backup_vault

Logical container for backups managed by AWS Backup. Vaults themselves are free; you pay for the storage of recovery points ($0.05/GB-month warm, $0.01/GB-month cold) plus restore data transfer.

Backup
aws_cloudfront_distribution

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

Networking
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.

Security & Identity
aws_cloudtrail

An audit log of AWS API calls. Management events are free. Data events and Insights are billed per event.

Observability
aws_cloudwatch_dashboard

A CloudWatch dashboard for visualizing metrics, billed ~$3/dashboard/month. The first 3 dashboards (with limited metrics) are free.

Observability
aws_cloudwatch_event_rule

An EventBridge (CloudWatch Events) rule that routes events to targets. The rule is free; custom events published cost ~$1/million. AWS-service events are free.

Integration
aws_cloudwatch_log_group

A log group for storing application and AWS service logs. Priced by ingestion ($0.50/GB), storage ($0.03/GB-month), and queries.

Observability
aws_cloudwatch_log_metric_filter

A metric filter is free. It scans log events for a pattern and emits a CloudWatch metric, and cost sits on the log group and the metric or alarm it feeds.

Monitoring
aws_cloudwatch_log_stream

A log stream is free. It is a named sequence of log events inside a log group, and cost comes from the bytes ingested and stored in the group, not the stream.

Monitoring
aws_cloudwatch_log_subscription_filter

A subscription filter is free to define, but it streams matching log events in real time to a destination like Lambda or Kinesis, and that destination is where cost lands.

Monitoring
aws_cloudwatch_metric_alarm

Alarm that triggers actions when a metric breaches a threshold. $0.10/alarm-month for standard resolution. High-resolution alarms (10s) cost $0.30/month. Composite alarms are free per logical condition.

Observability
aws_codeartifact_domain

A package-registry domain billed by stored artifacts, requests, and cross-region data transfer. 100 GB + 1M requests is ~$10/month.

Developer Tools
aws_codebuild_project

A managed build environment for CI/CD. Priced per build-minute by compute type, with no idle cost between builds.

Developer Tools
aws_codecommit_repository

A CodeCommit repository is free to create and free for the first five active users per month; beyond that it bills a flat rate per active user with generous included storage and requests.

Developer Tools
aws_codedeploy_application

A logical container for CodeDeploy deployment groups. Applications are free, and deployments to EC2 and Lambda are free too. Only on-premises instance deployments bill, at $0.02 per instance update.

Developer Tools
aws_codedeploy_deployment_group

A CodeDeploy deployment group is free, and deployments to EC2, Lambda, and ECS carry no CodeDeploy charge; the cost is the compute it deploys to.

Developer Tools
aws_codepipeline

A managed CI/CD pipeline billed ~$1/month per active pipeline (V1). The cost is trivial; the spend lives in the compute the pipeline triggers.

Developer Tools
aws_cognito_user_pool

A managed user directory for sign-up and sign-in. Priced per monthly active user (MAU) above a free tier, with the rate set by the feature tier.

Security
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.

Security & Identity
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.

Security & Identity
aws_config_delivery_channel

Defines where AWS Config delivers configuration snapshots and history (an S3 bucket, optionally an SNS topic). The channel is free. AWS Config bills $0.003 per configuration item recorded plus rule evaluations and S3 storage.

Management & Governance
aws_customer_gateway

A customer gateway is free. It just records the on-premises side of a VPN (public IP and BGP ASN). The cost is the VPN connection it participates in.

Networking
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.

Database
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.

Database
aws_db_option_group

A container of optional features (like SQL Server native backup, Oracle OEM, or TDE) for an RDS instance. Option groups are free. The RDS instance bills per hour, and some options carry licensing or storage cost.

Database
aws_db_parameter_group

A DB parameter group is free. It is the engine configuration attached to an RDS instance, and the cost stays entirely on the instance it tunes.

Database
aws_db_proxy

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

Database
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.

Database
aws_db_subnet_group

A DB subnet group is free. It tells RDS which subnets a database can live in, and the cost is entirely the RDS instance it enables.

Database
aws_directconnect_gateway

A Direct Connect gateway is free. It is a global routing hub for Direct Connect. The cost is the Direct Connect connection port hours and the data transfer out that flows over it.

Networking
aws_directconnect_lag

A Link Aggregation Group that bundles multiple Direct Connect connections into one logical link. The LAG object is free. Each member connection bills per port-hour, from about $0.30/hour for 1 Gbps to $22.50/hour for 100 Gbps, plus data transfer out.

Networking & Content Delivery
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.

Security & Identity
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.

Database
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.

Database
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.

Networking
aws_dynamodb_table

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

Database
aws_dynamodb_table_item

A DynamoDB table item is free to define, but it adds to the table's stored data and consumes write and read capacity, so its cost is realized on the table.

Database
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.

Storage
aws_ebs_volume

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

Storage
aws_ec2_host

A physical server dedicated to your account, billed per host-hour by instance family. An m5 dedicated host is ~$3,700/month, you pay for the whole host, not the instances on it.

Compute
aws_ec2_transit_gateway

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

Networking
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.

Networking
aws_ecr_repository

A container image registry. Priced per GB-month stored, with the first 500 MB free, plus data transfer charges.

Containers
aws_ecs_cluster

An ECS cluster. The cluster itself is free. Cost comes from the EC2 instances and Fargate tasks that run inside it.

Containers
aws_ecs_service

A long-running ECS service. Cost depends on launch type: EC2 (pay for nodes), Fargate (pay per task vCPU/memory), or Fargate Spot.

Containers
aws_ecs_task_definition

A task definition is free. It declares CPU and memory for a container task, and those numbers set the Fargate cost when an ECS service runs the task.

Containers
aws_efs_access_point

An EFS access point is free. It is an application-specific entry point into an EFS file system, and the cost is the EFS storage and throughput it maps into.

Storage
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.

Storage
aws_efs_mount_target

An EFS mount target is free. It gives an EFS file system a network endpoint in one subnet, and the real cost is the EFS storage and throughput behind it.

Storage
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.

Networking
aws_eip_association

An EIP association is free. It binds an Elastic IP to an instance or network interface. The cost sits on the Elastic IP itself, which is free while attached to a running instance and billed when idle.

Networking
aws_eks_cluster

A managed Kubernetes control plane. Flat $0.10/hour per cluster, with worker nodes and storage billed separately.

Containers
aws_eks_fargate_profile

A Fargate profile is free. It is a selector that decides which Kubernetes pods run on Fargate, and those pods are billed per vCPU-hour and per GB-hour while they run.

Containers
aws_eks_node_group

Managed EC2 worker nodes for an EKS cluster. The node group has no charge of its own, it bills as the EC2 instances it launches. 3× m5.large is ~$210/month.

Containers
aws_elasticache_cluster

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

Database
aws_elasticache_parameter_group

A named set of engine parameters for ElastiCache (Redis or Memcached) clusters. Parameter groups are free. The clusters they configure bill per node-hour, from about $0.017/hour for cache.t3.micro to $0.90+/hour for large nodes.

Database
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.

Database
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).

Database
aws_elasticache_subnet_group

An ElastiCache subnet group is free. It tells ElastiCache which subnets a cache cluster can run in, and the cost is entirely the cache nodes it enables.

Database
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.

Analytics
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.

Analytics
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.

Security & Identity
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).

Storage
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.

Storage
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.

Storage
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.

Storage
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.

Storage
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.

Storage
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.

Networking
aws_glue_catalog_database

A Glue Data Catalog database is effectively free (the first million objects and requests are free) and the real cost is the querying, crawling, and ETL that use it.

Analytics
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.

Analytics
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.

Database
aws_grafana_workspace

A managed Grafana workspace for dashboards. Priced purely per active user per month by role, with no always-on infrastructure fee.

Management
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.

Security & Identity
aws_iam_access_key

A long-lived access key ID and secret for an IAM user. Access keys are free to create and use, but a leaked key is one of the most expensive incidents in AWS, capable of running up tens of thousands of dollars in hours.

Security & Identity
aws_iam_group

An IAM group is free. It bundles users so they share a set of policies. AWS charges nothing for the group. Cost comes from what the member users are permitted to do.

Security
aws_iam_instance_profile

An instance profile is free. It is the wrapper that passes an IAM role to an EC2 instance. AWS charges nothing for it. Cost lives in the instance and what its role lets it do.

Security
aws_iam_policy

An IAM policy is free. It is a JSON permission document. AWS charges nothing for creating, attaching, or evaluating policies. Cost lives in the services the policy permits.

Security
aws_iam_role

An IAM role is completely free. IAM is a no-cost service. A role grants permissions to whatever assumes it, and the cost is whatever those services do, never the role.

Security
aws_iam_role_policy

An inline IAM policy embedded directly in a role. IAM is completely free, there is no charge for roles, policies, or evaluation. The cost lives in the AWS services the policy grants access to.

Security & Identity
aws_iam_role_policy_attachment

Links a managed IAM policy to a role. The attachment is free, as is all of IAM. What it grants determines how much the role can spend, so it is a cost-governance control point.

Security & Identity
aws_iam_user

An IAM user is free. Creating users, their access keys, and login profiles costs nothing. The cost is whatever AWS services the user is permitted to operate.

Security
aws_instance

An EC2 virtual machine. Priced per hour by instance type, OS, tenancy, and region, with separate charges for attached EBS volumes and data transfer.

Compute
aws_internet_gateway

An internet gateway is free. Attaching one to a VPC and routing through it costs nothing. The cost is the data transfer out to the internet that it enables.

Networking
aws_kendra_index

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

Analytics
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.

Analytics
aws_kinesis_stream

A real-time data stream. Two capacity modes: Provisioned (priced per shard-hour) or On-Demand (priced per record and per GB).

Messaging
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.

Analytics
aws_kms_alias

A KMS alias is free. It is a friendly name pointing at a KMS key. AWS charges nothing for the alias. Cost comes from the underlying KMS key and its API requests.

Security
aws_kms_grant

A temporary, scoped permission to use a KMS key. Grants are free. The key it points at costs about $1/month, and the encrypt/decrypt API calls the grant enables bill per request.

Security & Identity
aws_kms_key

A managed encryption key. Flat $1/month per key, plus per-request charges for cryptographic operations.

Security
aws_lambda_alias

A Lambda alias is free. It is a named pointer to a function version used for stable references and traffic shifting, and cost stays on the function it points to.

Serverless
aws_lambda_event_source_mapping

An event source mapping is free. It connects a stream or queue to a Lambda function, and the cost is the invocations it drives plus any polling charges on the source.

Serverless
aws_lambda_function

A serverless function billed by request count and execution duration. Free tier covers 1M requests and 400,000 GB-seconds per month.

Serverless
aws_lambda_function_url

A Lambda function URL is free. It gives a function a public HTTPS endpoint with no API Gateway, and the cost is the function invocations that requests trigger.

Serverless
aws_lambda_layer_version

A Lambda layer version is free to publish and store. It packages shared dependencies for functions, and the cost stays on the Lambda functions that use it.

Serverless
aws_lambda_permission

A Lambda permission is free. It grants a service or account the right to invoke a function, and cost comes from the invocations that permission then enables.

Serverless
aws_launch_configuration

A launch configuration is free. It is a legacy blueprint for EC2 instances, so cost appears only when an Auto Scaling Group uses it to launch instances.

Compute
aws_launch_template

A launch template is free. It is a blueprint for EC2 instances, so its cost is realized only when an Auto Scaling Group or fleet uses it to launch instances.

Compute
aws_lb

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

Networking
aws_lb_listener

A listener is free. It checks for connections on a port and forwards them, so the cost is the load balancer it belongs to, not the listener.

Networking
aws_lb_target_group

A target group is free. It routes traffic to registered targets for an ALB or NLB, and the cost sits on the load balancer and the targets themselves.

Networking
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.

Storage
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.

Database
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.

Networking
aws_lightsail_instance

Simplified VPS bundles for small workloads. Flat monthly pricing from $3.50/month (512 MB) to $160/month (64 GB). Includes data transfer allowance. Much simpler than EC2 but limited features.

Compute
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.

Security & Identity
aws_main_route_table_association

Sets which route table is the main (default) table for a VPC. The association is free, but it decides the default path for any subnet without an explicit table, and that path can silently route traffic through paid NAT or transit gateways.

Networking
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.

Database
aws_mq_broker

A managed ActiveMQ or RabbitMQ message broker. Priced per broker-instance-hour by instance type and deployment mode, plus storage.

Application Integration
aws_msk_cluster

A managed Apache Kafka cluster. Priced per broker-hour by instance type, plus EBS storage per GB-month and data transfer.

Messaging
aws_msk_serverless_cluster

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

Analytics
aws_mwaa_environment

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

Analytics
aws_nat_gateway

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

Networking
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.

Database
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.

Database
aws_network_interface

An elastic network interface is free. AWS charges nothing for the ENI or its private IPs. Cost comes from the instance it attaches to, any Elastic IP left idle on it, and the traffic it carries.

Networking
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.

Networking
aws_opensearch_domain

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

Database
aws_opensearchserverless_collection

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

Analytics
aws_organizations_account

A member account inside an AWS Organization. Creating and managing accounts is free. The cost lives inside each account: all EC2, S3, RDS, and data transfer usage rolls up to the organization's consolidated bill.

Management & Governance
aws_organizations_organization

The root container for multi-account AWS. AWS Organizations is free. It is the mechanism behind consolidated billing, Reserved Instance and Savings Plans sharing, and Service Control Policies that cap spend.

Management & Governance
aws_organizations_policy

Service Control Policies, tag policies, and backup policies attached to an organization. The policies are free. Their job is to prevent spend: SCPs can block expensive instance families, regions, and untagged resources.

Management & Governance
aws_prometheus_workspace

Managed Prometheus billed by samples ingested and metrics stored, no node cost. 1B samples + 100 GB storage is ~$93/month, and the bill scales with metric cardinality.

Observability
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.

Database
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).

Database
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.

Database
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.

Database
aws_redshift_parameter_group

A set of engine parameters for a Redshift cluster. Parameter groups are free. The clusters they configure bill per node-hour, from $0.25/hour for dc2.large to $13/hour for ra3.16xlarge, plus Spectrum and concurrency scaling.

Analytics
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.

Analytics
aws_route

A single entry in a VPC route table. Routes are free, but they point traffic at targets like NAT gateways, transit gateways, and VPC peering, and those targets plus the data transfer they carry are where the cost is.

Networking
aws_route_table

A route table is free. It is a set of routing rules for a VPC, and AWS charges nothing for the table, its routes, or its associations. Cost lives in the targets those routes point at.

Networking
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.

Networking
aws_route53_query_log

Enables DNS query logging for a Route 53 public hosted zone. The logging config is free, but every query it records is written to CloudWatch Logs, which bills for ingestion and storage.

Networking
aws_route53_record

A Route 53 record is free to create. There is no per-record charge. Cost comes from DNS queries against the hosted zone and from any health checks the record uses.

Networking
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.

Networking
aws_route53_zone

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

Networking
aws_route53_zone_association

A zone association is free. It attaches a VPC to a private hosted zone so the VPC can resolve its records. Cost comes from the hosted zone and its query volume, not the association.

Networking
aws_s3_bucket

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

Storage
aws_s3_bucket_acl

Sets the access control list on an S3 bucket. The ACL configuration is free. The bucket it governs bills for storage, requests, and data transfer, which is where all S3 cost lives.

Storage
aws_s3_bucket_cors_configuration

Defines cross-origin resource sharing rules for an S3 bucket. The CORS config is free. It enables browsers to fetch objects directly, which drives the request and data transfer charges on the bucket.

Storage
aws_s3_bucket_lifecycle_configuration

An S3 lifecycle configuration is free, and it is one of the strongest cost levers in S3: it transitions objects to cheaper storage classes and expires old data automatically.

Storage
aws_s3_bucket_logging

Enabling S3 server access logging is free, but it writes a stream of log objects into a target bucket that you pay to store and, eventually, to query or delete.

Storage
aws_s3_bucket_notification

An S3 bucket notification is free to configure. It routes bucket events to Lambda, SQS, or SNS, and cost lands on whichever destination processes the events.

Storage
aws_s3_bucket_policy

An S3 bucket policy is free. It is an IAM resource policy attached to a bucket, and cost stays with the bucket and the requests the policy allows.

Storage
aws_s3_bucket_public_access_block

A public access block is free. It is a safety toggle that stops a bucket from becoming public, and cost stays with the bucket and the requests it serves.

Storage
aws_s3_bucket_server_side_encryption_configuration

Setting default encryption on a bucket is free. Encryption itself adds no charge, but choosing aws:kms means each object request also triggers a billable KMS call.

Storage
aws_s3_bucket_versioning

Enabling S3 versioning is free, but it multiplies storage cost by keeping every old version of an object as billable data until something deletes it.

Storage
aws_s3_object

An S3 object is billed for the bytes it stores at its storage class rate, plus the request to upload it, so cost scales with object size and how many objects you keep.

Storage
aws_sagemaker_endpoint

Real-time ML inference endpoint. Bills instance hours 24/7 (e.g., $0.0532/hour for ml.t2.medium, up to $30+/hour for ml.p4d.24xlarge). Serverless inference bills per-invocation. Async inference for batch-like workloads.

Machine Learning
aws_sagemaker_notebook_instance

A managed Jupyter notebook instance billed per hour while running. An ml.t3.medium is ~$37/month if left on 24/7, and idle notebooks are the classic waste.

Machine Learning
aws_secretsmanager_secret

A managed secret with versioning, rotation, and IAM-controlled access. Flat $0.40/month per secret plus per-API-call charges.

Security
aws_secretsmanager_secret_version

A secret version is free. It is one stored value of a secret. Secrets Manager bills per secret and per API call, not per version, so adding versions adds nothing.

Security
aws_security_group

Security groups are free. There is no charge for the group, its rules, or the traffic it allows. The cost sits in the resources it protects.

Networking
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.

Security & Identity
aws_sfn_state_machine

Workflow orchestration. Standard workflows at $0.025 per 1,000 state transitions. Express workflows at $1 per 1M requests + duration fees. Standard for long-running workflows; Express for high-volume short workflows.

Compute
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.

Security & Identity
aws_sns_topic

A pub/sub topic for sending notifications. Priced per message published, per delivery, and by destination protocol.

Messaging
aws_sns_topic_subscription

Subscribes an endpoint to an SNS topic. Creating the subscription is free, but SNS bills per message delivered, and the rate varies enormously by protocol: HTTP and email are cheap, SMS can be expensive.

Application Integration
aws_spot_instance_request

An EC2 instance run at Spot prices, up to ~90% below on-demand, in exchange for possible interruption. c3x prices it at the on-demand ceiling (a t3.micro is ~$7.59/month).

Compute
aws_sqs_queue

A managed message queue. Priced per request, with no per-queue or storage fee. Generous free tier.

Messaging
aws_sqs_queue_policy

A resource policy that controls who can send to or receive from an SQS queue. The policy is free. The queue bills per request, and a policy that opens the queue too wide can enable a flood of billable requests.

Application Integration
aws_ssm_association

Binds an SSM document to target instances so State Manager keeps them in a desired configuration. The association is free on standard EC2, but hybrid on-premises nodes in advanced tier and heavy Automation use do bill.

Management
aws_ssm_document

An SSM document is free. It is a JSON or YAML definition of commands or an automation workflow. AWS charges nothing to store it. Cost comes from what its steps run.

Compute
aws_ssm_maintenance_window

An SSM maintenance window is free. It is a schedule for running automation on your fleet, and cost comes from what the tasks do on instances you already pay for.

Management
aws_ssm_parameter

A standard SSM parameter is free to store and read at standard throughput. Cost only appears if you choose the advanced tier or higher-throughput API calls.

Security
aws_ssm_patch_baseline

An SSM patch baseline is free. It defines which patches are approved for your fleet, and cost comes from the instances that run the patching, not the baseline.

Management
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.

Storage
aws_subnet

A subnet is free. It carves an IP range out of a VPC in one Availability Zone, and AWS charges nothing for it. Cost comes from the resources you place in it and the traffic they generate.

Networking
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.

Database
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.

Storage
aws_vpc

A VPC is free. The network itself, subnets, route tables, and security groups cost nothing. The cost comes from the paid components you run inside it.

Networking
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.

Networking
aws_vpc_peering_connection

A VPC peering connection is free to create and has no hourly charge. The cost is the data transfer that crosses it, which depends on whether the VPCs are in the same or different regions.

Networking
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.

Networking
aws_vpn_gateway

A virtual private gateway is free to attach to a VPC. The cost is the Site-to-Site VPN connection you terminate on it, billed hourly, plus data transfer.

Networking
aws_wafv2_web_acl

A web application firewall. $5/month per Web ACL, $1/month per rule, plus $0.60 per million inspected requests.

Security
aws_workspaces_workspace

A managed cloud desktop billed monthly or hourly by bundle. An always-on Value bundle is ~$25/month; larger bundles run up to ~$220.

End User Computing
aws_xray_group

Distributed tracing billed per trace recorded plus per trace retrieved/scanned. 10M traces recorded + 1M scanned is ~$50.50.

Observability