Supported Resources

Supported Resources

C3X supports over 1,300 Terraform resource types across AWS, Azure, and Google Cloud. This page lists the major categories and common resource types for each provider.

AWS (~625 Resources)

AWS has the broadest coverage with approximately 625 supported resource types spanning compute, storage, databases, networking, serverless, containers, and more.

Compute

  • aws_instance: EC2 instances (on-demand, reserved, spot)
  • aws_autoscaling_group: Auto Scaling groups
  • aws_ec2_fleet: EC2 Fleet
  • aws_spot_instance_request: Spot instances
  • aws_launch_template: Launch templates

Storage

  • aws_s3_bucket: S3 buckets (Standard, IA, Glacier)
  • aws_s3_bucket_analytics_configuration: S3 analytics
  • aws_s3_bucket_inventory: S3 inventory
  • aws_ebs_volume: EBS volumes (gp3, io2, st1, sc1)
  • aws_ebs_snapshot: EBS snapshots
  • aws_ebs_snapshot_copy: Cross-region snapshot copies
  • aws_efs_file_system: Elastic File System
  • aws_fsx_lustre_file_system: FSx for Lustre
  • aws_fsx_windows_file_system: FSx for Windows
  • aws_backup_vault: AWS Backup

Databases

  • aws_db_instance: RDS instances (MySQL, PostgreSQL, MariaDB, Oracle, SQL Server)
  • aws_rds_cluster: Aurora clusters
  • aws_rds_cluster_instance: Aurora instances
  • aws_dynamodb_table: DynamoDB tables (provisioned and on-demand)
  • aws_elasticache_cluster: ElastiCache (Redis, Memcached)
  • aws_elasticache_replication_group: ElastiCache replication groups
  • aws_redshift_cluster: Redshift clusters
  • aws_neptune_cluster: Neptune graph database
  • aws_docdb_cluster_instance: DocumentDB instances

Serverless

  • aws_lambda_function: Lambda functions
  • aws_lambda_provisioned_concurrency_config: Provisioned concurrency
  • aws_api_gateway_rest_api: API Gateway (REST)
  • aws_apigatewayv2_api: API Gateway (HTTP/WebSocket)
  • aws_sqs_queue: SQS queues
  • aws_sns_topic: SNS topics
  • aws_step_functions_state_machine: Step Functions

Containers

  • aws_eks_cluster: EKS clusters
  • aws_eks_node_group: EKS managed node groups
  • aws_ecs_service: ECS services (Fargate and EC2)
  • aws_ecr_repository: ECR repositories

Networking & CDN

  • aws_lb / aws_alb: Application and Network Load Balancers
  • aws_nat_gateway: NAT gateways
  • aws_cloudfront_distribution: CloudFront distributions
  • aws_vpc_endpoint: VPC endpoints
  • aws_route53_zone: Route 53 hosted zones
  • aws_route53_record: Route 53 DNS records
  • aws_dx_connection: Direct Connect
  • aws_vpn_connection: Site-to-site VPN

Analytics & ML

  • aws_kinesis_stream: Kinesis Data Streams
  • aws_kinesis_firehose_delivery_stream: Kinesis Data Firehose
  • aws_msk_cluster: Managed Streaming for Kafka
  • aws_elasticsearch_domain / aws_opensearch_domain: OpenSearch
  • aws_sagemaker_endpoint_configuration: SageMaker endpoints
  • aws_glue_crawler: Glue crawlers
  • aws_athena_workgroup: Athena workgroups

Monitoring & Management

  • aws_cloudwatch_log_group: CloudWatch Logs
  • aws_cloudwatch_metric_alarm: CloudWatch alarms
  • aws_cloudwatch_dashboard: CloudWatch dashboards
  • aws_config_config_rule: AWS Config rules
  • aws_secretsmanager_secret: Secrets Manager
  • aws_kms_key: KMS keys

Azure (~410 Resources)

Azure coverage includes approximately 410 resource types across compute, databases, storage, networking, and platform services.

Compute

  • azurerm_linux_virtual_machine: Linux VMs
  • azurerm_windows_virtual_machine: Windows VMs
  • azurerm_virtual_machine_scale_set: VM scale sets
  • azurerm_linux_function_app: Linux Function Apps
  • azurerm_windows_function_app: Windows Function Apps
  • azurerm_app_service_plan / azurerm_service_plan: App Service plans
  • azurerm_linux_web_app: Linux Web Apps
  • azurerm_container_app: Container Apps

Databases

  • azurerm_mssql_database: Azure SQL Database
  • azurerm_mssql_elasticpool: SQL elastic pools
  • azurerm_postgresql_flexible_server: PostgreSQL Flexible Server
  • azurerm_mysql_flexible_server: MySQL Flexible Server
  • azurerm_cosmosdb_account: Cosmos DB
  • azurerm_redis_cache: Azure Cache for Redis
  • azurerm_cosmosdb_sql_database: Cosmos DB SQL API

Storage

  • azurerm_storage_account: Storage accounts (Blob, File, Queue, Table)
  • azurerm_managed_disk: Managed disks
  • azurerm_storage_share: Azure File shares
  • azurerm_storage_blob: Blob storage

Containers

  • azurerm_kubernetes_cluster: AKS clusters
  • azurerm_kubernetes_cluster_node_pool: AKS node pools
  • azurerm_container_group: Container Instances
  • azurerm_container_registry: Container Registry

Networking

  • azurerm_lb: Load Balancers
  • azurerm_application_gateway: Application Gateway
  • azurerm_public_ip: Public IP addresses
  • azurerm_cdn_endpoint: CDN endpoints
  • azurerm_frontdoor: Azure Front Door
  • azurerm_dns_zone: DNS zones
  • azurerm_private_dns_zone: Private DNS zones
  • azurerm_nat_gateway: NAT gateways
  • azurerm_vpn_gateway: VPN gateways
  • azurerm_express_route_circuit: ExpressRoute circuits

Analytics & AI

  • azurerm_eventhub_namespace: Event Hubs
  • azurerm_stream_analytics_job: Stream Analytics
  • azurerm_search_service: Cognitive Search
  • azurerm_cognitive_account: Cognitive Services
  • azurerm_machine_learning_compute_cluster: ML compute

Google Cloud (~305 Resources)

Google Cloud coverage includes approximately 305 resource types spanning core infrastructure and platform services.

Compute

  • google_compute_instance: Compute Engine VMs
  • google_compute_instance_group_manager: Managed instance groups
  • google_compute_autoscaler: Autoscaler
  • google_cloud_run_service / google_cloud_run_v2_service: Cloud Run services
  • google_cloudfunctions_function / google_cloudfunctions2_function: Cloud Functions
  • google_app_engine_standard_app_version: App Engine

Databases

  • google_sql_database_instance: Cloud SQL (MySQL, PostgreSQL, SQL Server)
  • google_spanner_instance: Cloud Spanner
  • google_bigtable_instance: Cloud Bigtable
  • google_redis_instance: Memorystore for Redis
  • google_firestore_database: Firestore

Storage

  • google_storage_bucket: Cloud Storage buckets
  • google_compute_disk: Persistent disks
  • google_compute_snapshot: Disk snapshots
  • google_filestore_instance: Filestore

Containers

  • google_container_cluster: GKE clusters
  • google_container_node_pool: GKE node pools
  • google_artifact_registry_repository: Artifact Registry

Networking

  • google_compute_forwarding_rule: Load balancer forwarding rules
  • google_compute_global_forwarding_rule: Global load balancing
  • google_compute_address: Static IP addresses
  • google_compute_router_nat: Cloud NAT
  • google_dns_managed_zone: Cloud DNS
  • google_compute_vpn_tunnel: VPN tunnels
  • google_compute_interconnect_attachment: Dedicated Interconnect

Analytics & BigQuery

  • google_bigquery_dataset: BigQuery datasets
  • google_bigquery_table: BigQuery tables
  • google_bigquery_reservation: BigQuery reservations
  • google_pubsub_topic: Pub/Sub topics
  • google_pubsub_subscription: Pub/Sub subscriptions
  • google_dataflow_job: Dataflow jobs
  • google_logging_project_bucket_config: Cloud Logging
  • google_monitoring_metric_descriptor: Cloud Monitoring

Free Tier Resources

C3X does not account for free tier pricing. Resources that fall within a cloud provider's free tier are still priced at their standard rates. This is a deliberate design decision for several reasons:

  • Free tiers expire. Most cloud providers offer a 12-month free tier for new accounts. Estimating based on free tier pricing would produce inaccurate results once the free period ends.
  • Free tiers vary by account. Different account types, support plans, and enterprise agreements have different free tier allowances. C3X cannot know your specific entitlements.
  • Conservative estimates are safer. It is better to overestimate costs and be pleasantly surprised than to underestimate and exceed your budget.

If a resource is genuinely always-free (such as a VPC or a security group), C3X shows it at $0 or omits it entirely.

Full Resource List

For the complete list of every supported resource type, see the C3X repository.

Missing a resource? Check the GitHub issues to request support for additional resource types.

Next Steps

  • Usage File Format: Define usage parameters for variable-cost resources.
  • CLI Reference: Use --show-skipped to see which resources in your configuration are not yet supported.
  • Quick Start: Run your first cost estimate.