Pricing API · AWS, Azure, GCP
Cloud list prices, one JSON call away.
Describe an instance, a volume, a bucket and its traffic — on any of the three clouds — and get back its published monthly price, broken into components. Or describe what you need and compare the clouds side by side.
- AWS Price List API
- Azure Retail Prices
- GCP Cloud Billing Catalog
Show this as an API call
/api/v1/compare.Get a key to price anything →- Three clouds, one shapeThe same request format prices AWS, Azure and GCP resources, mixed in one call.
- Straight from the sourcePrices come from each provider's own published price list, refreshed nightly.
- Compare like for likeAsk for 4 vCPU and 16 GB, or 2 TB of egress, and get each cloud's cheapest match.
- Honest about gapsUsage you don't give is listed as
unpriced, never silently counted as zero.
Reading the numbers
What a price here means
- List price only
- No Savings Plan, Reserved Instance, Committed Use or negotiated discount — unless you describe
your commitments with
/api/v1/price-request, or ask/comparefor acommitment_term. - Usage is priced when you give it
- Pass quantities like GB stored, requests or GB processed in
usage; anything usage-based you leave out is named in the result'sunpricedlist, with the usage key that would price it. - Free tiers aren't deducted
- They apply per account, not per resource.
- Monthly = hourly × 730
- The providers' own convention, unless you pass
usage.hoursfor something that doesn't run all month. Prices are in USD. - One vocabulary for all three clouds
size,os,count,purchase_modeland the rest mean the same thing on every type — see normalized attributes. A provider's own record works too, asraw.- Every answer says which price list it came from
- Each priced resource carries
price_list_versionandfetched_at.
Why free
Built because we needed it
We built this because Lensix needed it. Lensix scans AWS, Azure, and GCP accounts and has to know what every resource actually costs across clouds, and there was no clean source for that. So we built one, and it turned out everyone else needs it too. Cloudcostdata.com is maintained by Absolute Ops and runs the same pricing data Lensix uses every day.
Access
Get an API key
Create a free account, verify your email, and create keys from your
dashboard — as many as you need, one per app or environment, each revocable on its own.
Keyed calls are limited to 60 a minute per account, /compare to 10 of those; every response says how
many remain.
Reference
API
Base URL is https://api.cloudcostdata.com. Send your key in the X-API-Key header. Request and response bodies are JSON.
/api/v1/estimate
API keyPrice one resource, or up to 500 in {"resources": [...]}. Each resource takes a resource_type
named for its cloud (aws.ec2_instance, azure.vm, gcp.compute_instance), a
region, an optional resource_id, its attributes in the
normalized vocabulary (count is the multiplier for identical resources), and
optionally usage: monthly quantities for usage-based charges (see resource types for
what each takes). A provider's own record shape (the boto3, Azure SDK or Compute Engine REST response) also works, as
raw in place of attributes. A batch may add as_of and commitments
with the same meaning as in /price-request.
curl -s https://api.cloudcostdata.com/api/v1/estimate \
-H "X-API-Key: $CCD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"resources": [
{"resource_type": "aws.ec2_instance", "region": "us-east-1",
"attributes": {"size": "m5.large", "count": 3}},
{"resource_type": "aws.s3_bucket", "region": "us-east-1",
"usage": {"storage_gb": 1000, "read_requests": 10000000}},
{"resource_type": "azure.vm", "region": "eastus",
"attributes": {"size": "Standard_D2s_v3", "os": "linux"}},
{"resource_type": "gcp.compute_instance", "region": "us-central1",
"attributes": {"size": "n2-standard-4", "purchase_model": "spot"}}
]
}'
Response (abridged):
{
"currency": "USD",
"hours_per_month": 730,
"total_monthly": 506.88,
"total_hourly": 0.694356,
"resources": [
{
"resource_type": "aws.ec2_instance", "provider": "aws", "region": "us-east-1",
"count": 3, "purchase_model": "on_demand", "monthly": 210.24, "hourly": 0.288,
"components": [{"label": "m5.large (Linux, Shared)", "price_per_unit": 0.096,
"quantity": 2190, "unit": "Hrs", "monthly": 210.24}],
"unpriced": [{"usage": null, "label": "data transfer"}],
"notes": ["attached EBS volumes are separate ebs_volume resources ..."],
"basis": "AWS published list price, 730 hours/month; On-Demand unless ...",
"price_list_version": "20260903201523", "fetched_at": "2026-10-29T02:10:44+00:00"
},
{"resource_id": null, "resource_type": "gcp.compute_instance", "region": "us-central1",
"error": "no published GCP SKU matched: ..."},
...
]
}
A resource that's valid but can't be priced — an unknown type, or a region we haven't loaded — comes back in its
position in resources as {"resource_id", "resource_type", "region", "error"}, and the rest of
the batch is still priced. A malformed body — an unknown attribute, an enum value that isn't one of the documented
ones, a usage key the type doesn't take, purchase_model disagreeing with
commitment_term — is a 400 for the whole call.
/api/v1/compare
API key · 10/minDescribe what you need once and get each cloud's cheapest matching options in the regions you name, priced exactly as
/estimate would price them. Categories: vm, block_storage,
object_storage, data_transfer_out, kubernetes_control_plane,
serverless_functions, relational_database and nat_gateway;
GET /api/v1/compare/categories lists the
requirements each takes. Leave a cloud out of regions to skip it, or send "region_set": "us"
(eu, asia) instead and read the region chosen per provider from the result. For
vm and relational_database, "commitment_term": "1yr" or "3yr"
compares committed prices instead: AWS Savings Plans and Reserved Instances, Azure reservations, GCP committed use
discounts; "purchase_model": "spot" compares the Spot rate on each cloud, and
architecture (x86_64, arm64, any) narrows the shapes.
curl -s https://api.cloudcostdata.com/api/v1/compare \
-H "X-API-Key: $CCD_API_KEY" -H "Content-Type: application/json" \
-d '{
"category": "vm",
"regions": {"aws": "us-east-1", "azure": "eastus", "gcp": "us-central1"},
"requirements": {"vcpus": 4, "memory_gib": 16, "os": "linux"},
"limit": 3
}'
Response (abridged): ranking is each cloud's cheapest option, cheapest first; results has
every option with its spec and full estimate.
{
"category": "vm",
"ranking": [
{"provider": "aws", "region": "us-east-1", "resource_type": "aws.ec2_instance",
"spec": {"size": "m6g.xlarge", "vcpus": 4, "memory_gib": 16, "architecture": "arm64",
"purchase_model": "on_demand"},
"monthly": 112.42},
...
],
"results": {
"aws": {"region": "us-east-1", "options": [{"resource_type": "aws.ec2_instance",
"attributes": {"size": "m6g.xlarge", ...}, "spec": {...},
"monthly": 112.42, "hourly": 0.154, "estimate": {...}}, ...], "errors": []},
...
}
}
/api/v1/price-request
API keyThe full cost-request document: resources plus your AWS Reserved Instances and Savings Plans,
applied in AWS's own order, returning effective cost, coverage and unused commitment.
curl -s https://api.cloudcostdata.com/api/v1/price-request \
-H "X-API-Key: $CCD_API_KEY" -H "Content-Type: application/json" \
-d '{
"format": "cost-request", "format_version": 2,
"as_of": "2026-10-01T00:00:00Z",
"resources": [{"resource_id": "web", "resource_type": "aws.ec2_instance",
"region": "us-east-1",
"attributes": {"size": "r5.xlarge", "count": 4}}],
"commitments": [{"commitment_id": "sp-1", "commitment_type": "savings_plan",
"plan_type": "compute", "commitment_hourly": 0.5,
"term_years": 1, "payment_option": "No Upfront"}]
}'
/api/v1/try/compare
no auth · rate limitedThe call behind the widget at the top of this page: a VM comparison with a fixed shape — vcpus (1–64),
memory_gib (0.5–512), os, commitment_term and a region_set of
us, eu or asia — answered exactly as /compare would, three options per
cloud. No key; 30 calls per 15 minutes per address, after which a 429 with Retry-After. For any
other shape, region or category, use /compare with a key.
/api/v1/resource-types
no authEvery priceable resource type, its provider, the attributes it takes and the usage it can price — the table below, as JSON.
/api/v1/coverage
API keyWhich provider/service/region price lists are loaded, at which published version and when they were fetched. A region missing here can't be priced yet.
/api/v1/me
API keyWhich account and key is calling, with that key's request count and last use.
Errors
| Status | Meaning |
|---|---|
400 | Malformed request — the error field points at the offending path, e.g. resources[2].region: is required or resources[0].attributes.os: must be one of linux, windows, rhel, suse, ubuntu_pro, not 'BeOS'. |
401 | Missing, invalid or revoked X-API-Key. |
413 | Body over 1 MB. |
429 | Over a rate limit: 60 keyed requests a minute per account, 10 of them to /compare, or the no-key widget call's 30 per 15 minutes per address. Retry-After says when; the rejected call isn't counted. Served responses carry X-RateLimit-Limit and X-RateLimit-Remaining. |
503 | The price database is temporarily unreachable. |
Vocabulary
Normalized attributes
The same concept has one name on every type, whatever the cloud calls it. Where you'd rather use the provider's own
field names, send the provider's own record as raw instead.
size- The provider's compute shape:
m5.large,Standard_D2s_v3,n2-standard-4,db.r5.large,db-custom-2-7680, a WorkSpaces bundle, an App Service plan size. count- Positive integer, default 1: the only multiplier. Nodes in a cluster, brokers, shards, scale-set instances, or simply how many identical resources this entry describes.
oslinux,windows,rhel,suse,ubuntu_pro.staterunningorstopped; a stopped resource has no compute charge.attached- Boolean, for IP addresses and volumes.
purchase_modelon_demand(default),spotwhere the cloud sells it, orcommitted, which is required with — and implied by —commitment_term1yror3yr. Spot on AWS prices through the public Spot feed.- Units are in the name
_gbgigabytes,_gibgibibytes,_mbpsMB/s,_mibpsMiB/s,_tb/_tiblikewise. Memory ismemory_gibon VM-class types andmemory_mbon function-class ones.- Attributes vs usage
attributesare provisioned or configured values;usageis metered consumption per month. Every hourly-billed type takesusage.hours, default 730.- Enums
- Documented values are lowercase
snake_case. Send them in any casing with-,_or spaces, or in the provider's own spelling (Standard_LRS,Linux/UNIX,ZoneRedundant), and they come back canonical.
Catalogue
Resource types
Attributes marked * are required; count and purchase_model are
accepted by every type. Enum values are listed in each attribute's description. Usage quantities are per month and
optional; any you leave out is listed as unpriced. Regions use each provider's own codes (us-east-1,
eastus, us-central1). Each type also carries a category in
/api/v1/resource-types.
| Type | Provider | Attributes | Usage |
|---|---|---|---|
aws.ec2_instanceEC2 instance | aws | size* — EC2 instance typeos — linux (default), windows, rhel, suse or ubuntu_protenancy — shared (default), dedicated or hoststate — running or stopped; a stopped resource has no compute chargepurchase_model — on_demand (default); spot: the current spot/preemptible rate; committed: required with commitment_term 1yr or 3yrcommitment_term — none, 1yr or 3yr: price at a Savings Plan ratecommitment_type — compute_savings_plan (default) or ec2_instance_savings_planpayment_option — no_upfront (default), partial_upfront or all_upfrontcount — How many identical resources this entry describes; the price is multiplied by it (default 1) | hours — Hours running in the month (default 730) |
aws.ebs_volumeEBS volume | aws | volume_type* — gp2, gp3, io1, io2, st1, sc1 or standardsize_gb* — Provisioned size in GBiops — Provisioned IOPS (gp3/io1/io2)throughput_mibps — Provisioned throughput in MiB/s (gp3)attached — Whether attached to an instance (default true)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | — |
aws.ebs_snapshotEBS snapshot | aws | size_gb* — Source volume size in GB (an upper bound on stored data)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — Actual incremental GB stored (else the volume size is used) |
aws.rds_instanceRDS instance | aws | size* — DB instance classengine* — postgres, mysql, mariadb, aurora_postgresql, aurora_mysql, oracle_ee, sqlserver_se, …; docdb and neptune price a DocumentDB or Neptune instancemulti_az — Multi-AZ deployment (default false)storage_gb — Allocated storage in GBstorage_type — gp2, gp3, io1, io2 or standardlicense_model — license_included or bring_your_own_licenseiops — Provisioned IOPS (io1, io2, or gp3 above its baseline)storage_throughput_mibps — gp3 throughput in MiB/spurchase_model — on_demand (default); committed: required with commitment_term 1yr or 3yrcommitment_term — none, 1yr or 3yr: price at the published Reserved ratepayment_option — no_upfront, partial_upfront or all_upfront (default: no_upfront where sold, else partial_upfront)count — How many identical resources this entry describes; the price is multiplied by it (default 1) | backup_gb — Backup storage beyond the free allowance, GB-monthhours — Hours running in the month (default 730) |
aws.elasticache_clusterElastiCache cluster | aws | size* — Cache node typeengine — redis (default), valkey or memcachedcount — Number of nodes (default 1)purchase_model — on_demand (default); committed: required with commitment_term 1yr or 3yrcommitment_term — none, 1yr or 3yr: price at the published Reserved ratepayment_option — no_upfront, partial_upfront or all_upfront (default: no_upfront where sold, else partial_upfront) | hours — Hours running in the month (default 730) |
aws.load_balancerApplication / Network / Gateway load balancer | aws | load_balancer_type — application (default), network or gatewaycount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | lcu_hours — Capacity-unit hours used in the month (LCU, NLCU or GLCU)hours — Hours running in the month (default 730) |
aws.classic_load_balancerClassic load balancer | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_processed_gb — GB processed in the monthhours — Hours running in the month (default 730) |
aws.nat_gatewayNAT gateway | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_processed_gb — GB processed in the monthhours — Hours running in the month (default 730) |
aws.eks_clusterEKS cluster control plane | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
aws.elastic_ipElastic IP | aws | attached — Whether the address is associated with an instance or interface (default false)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
aws.vpc_endpointVPC endpoint | aws | endpoint_type — interface (default) or gatewaysubnet_count — Subnets the endpoint is in: one ENI-hour charge each (default 1)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_processed_gb — GB processed in the monthhours — Hours running in the month (default 730) |
aws.efs_filesystemEFS file system | aws | size_gb* — GB in Standard storageia_size_gb — GB in Infrequent Accessarchive_size_gb — GB in Archiveone_zone — One Zone storage (default false)throughput_mode — bursting (default), provisioned or elasticprovisioned_throughput_mibps — Provisioned throughput in MiB/scount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | elastic_read_gb — GB read with elastic throughputelastic_write_gb — GB written with elastic throughputia_read_gb — GB read from Infrequent Accessia_write_gb — GB written to Infrequent Access |
aws.fsx_file_systemFSx file system (Windows, Lustre, ONTAP, OpenZFS) | aws | file_system_type* — windows, lustre, ontap or openzfsstorage_gib* — Storage capacity in GiBstorage_type — ssd (default) or hdddeployment_type — Windows: single_az_2 or multi_az_1; Lustre: persistent_2, persistent_1 or scratch_2; ONTAP: single_az_1/2 or multi_az_1/2; OpenZFS: single_az_1/2, single_az_ha_1/2 or multi_az_1throughput_mibps — Throughput capacity in MiB/s (Windows, ONTAP, OpenZFS)iops — User-provisioned SSD IOPS (3 per GiB included)throughput_per_tib_mbps — Lustre persistent throughput, MB/s per TiBcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | backup_gb — Backup storage GB-monthcapacity_pool_gb — ONTAP capacity pool GB-month |
aws.dynamodb_tableDynamoDB table | aws | billing_mode — provisioned (default) or pay_per_requestread_capacity_units — Provisioned RCUs, table plus indexeswrite_capacity_units — Provisioned WCUs, table plus indexessize_gb — Table size in GBtable_class — standard (default) or standard_infrequent_accesscount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | read_request_units — On-demand read request unitswrite_request_units — On-demand write request units |
aws.redshift_clusterRedshift provisioned cluster | aws | size* — Node typecount — Number of nodes (default 1)purchase_model — on_demand (default); committed: required with commitment_term 1yr or 3yrcommitment_term — none, 1yr or 3yr: price at the published Reserved ratepayment_option — no_upfront, partial_upfront or all_upfront (default: no_upfront where sold, else partial_upfront) | managed_storage_gb — RA3 managed storage GB-monthhours — Hours running in the month (default 730) |
aws.opensearch_domainOpenSearch / Elasticsearch domain | aws | size* — Data node typecount — Data nodes (default 1)master_type — Dedicated master node typemaster_count — Dedicated masters (default 3)volume_type — gp3 (default), gp2, io1 or standardvolume_size_gb — EBS GB per data nodeiops — Provisioned IOPS per data node (io1)purchase_model — on_demand (default); committed: required with commitment_term 1yr or 3yrcommitment_term — none, 1yr or 3yr: price at the published Reserved ratepayment_option — no_upfront, partial_upfront or all_upfront (default: no_upfront where sold, else partial_upfront) | hours — Hours running in the month (default 730) |
aws.msk_clusterMSK (Kafka) cluster | aws | size — Broker instance type (kafka.* or express.*); required unless cluster_type is serverlesscount — Number of brokers (default 3)broker_storage_gb — Provisioned EBS GB per brokerstorage_throughput_mibps — Provisioned storage throughput per broker, MiB/stiered_storage — Tiered storage enabled (default false)cluster_type — provisioned (default) or serverlesspurchase_model — on_demand (default) | tiered_storage_gb — Tiered storage GB-monthpartition_hours — Serverless partition hoursstorage_gb — Serverless storage GB-monthdata_in_gb — Serverless GB indata_out_gb — Serverless GB outhours — Hours running in the month (default 730) |
aws.mq_brokerAmazon MQ broker | aws | size* — Broker instance typeengine — activemq (default) or rabbitmqdeployment_mode — single_instance, active_standby_multi_az or cluster_multi_azcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — Broker storage used, GB-monthhours — Hours running in the month (default 730) |
aws.kinesis_streamKinesis data stream | aws | stream_mode — provisioned (default) or on_demandcount — Open shards (provisioned)retention_hours — Retention period (default 24)purchase_model — on_demand (default) | put_payload_units — PUT payload units, 25 KB each (provisioned)data_in_gb — GB written (on-demand)data_out_gb — GB read (on-demand)hours — Hours running in the month (default 730) |
aws.transit_gatewayTransit Gateway | aws | count* — VPC attachmentspurchase_model — on_demand (default) | data_processed_gb — GB processed in the monthhours — Hours running in the month (default 730) |
aws.transfer_serverTransfer Family server | aws | protocols — Enabled protocols (one endpoint charge each): sftp, ftps, ftp, as2count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_uploaded_gb — GB uploadeddata_downloaded_gb — GB downloadedhours — Hours running in the month (default 730) |
aws.secretsmanager_secretSecrets Manager secret | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | api_calls — API calls in the month |
aws.kms_keyKMS customer managed key | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | requests — Symmetric API requests in the month |
aws.route53_private_zoneRoute 53 private hosted zone (region: global) | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | queries — Standard DNS queries in the month |
aws.route53_zoneRoute 53 hosted zone (region: global) | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | queries — Standard DNS queries in the month |
aws.s3_bucketS3 bucket | aws | storage_class — standard (default), intelligent_tiering, standard_ia, onezone_ia, glacier_instant_retrieval or glacier_flexible_retrievalcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb* — GB stored (average over the month)write_requests — PUT, COPY, POST and LIST requestsread_requests — GET and other requestsretrieval_gb — GB retrieved (IA and Glacier Instant Retrieval) |
aws.lambda_functionLambda function | aws | architecture — x86_64 (default) or arm64memory_mb — Memory in MB, used with usage.avg_duration_ms (default 128)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | requests* — Invocations in the monthavg_duration_ms — Average billed duration in msgb_seconds — Compute in GB-seconds, instead of avg_duration_ms |
aws.data_transfer_outData transfer out to the internet | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | gb* — GB out to the internet in the month |
aws.sqs_queueSQS queue | aws | queue_type — standard (default) or fifocount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | requests* — API requests in the month |
aws.sns_topicSNS topic | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | requests — Publish and other API requestshttp_deliveries — HTTP/S notifications deliveredemail_deliveries — Email notifications delivered |
aws.cloudwatch_log_groupCloudWatch Logs | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | ingested_gb — GB ingested (Standard log class)storage_gb — GB stored |
aws.api_gatewayAPI Gateway API | aws | api_type — rest (default) or httpcache_size_gb — REST dedicated cache size: 0.5, 1.6, 6.1, 13.5, 28.4, 58.2, 118 or 237count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | requests* — API requests in the monthhours — Hours running in the month (default 730) |
aws.ecr_repositoryECR repository | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb* — GB of images stored |
aws.fargate_taskFargate task (ECS or EKS) | aws | vcpu* — vCPUs per taskmemory_gib* — Memory per task in GiBos — linux (default) or windowsarchitecture — x86_64 (default) or arm64ephemeral_storage_gb — Ephemeral storage, 20 GB includedcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
aws.aurora_clusterAurora cluster (storage, I/O, Serverless v2) | aws | engine — aurora_mysql (default) or aurora_postgresqlstorage_type — standard (default) or io_optimized (aurora-iopt1/iopt1)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — GB stored (average over the month)io_requests — I/O requests in the month (Standard storage only)backup_gb — Backup GB beyond the free allocationacu_hours — Serverless v2 ACU-hours in the month |
aws.docdb_clusterDocumentDB cluster (storage, I/O, serverless) | aws | storage_type — standard (default) or io_optimized (aurora-iopt1/iopt1)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — GB stored (average over the month)io_requests — I/O requests in the month (Standard storage only)backup_gb — Backup GB beyond the free allocationdcu_hours — Serverless DCU-hours in the month |
aws.neptune_clusterNeptune cluster (storage, I/O, serverless) | aws | storage_type — standard (default) or io_optimized (aurora-iopt1/iopt1)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — GB stored (average over the month)io_requests — I/O requests in the month (Standard storage only)backup_gb — Backup GB beyond the free allocationncu_hours — Serverless NCU-hours in the month |
aws.rds_snapshotRDS / Aurora / DocumentDB / Neptune snapshot | aws | engine — RDS engine code: postgres (default), mysql, aurora_mysql, docdb, neptune, …size_gb — Snapshot size, used when usage.storage_gb is not givencount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — Snapshot GB stored |
aws.elasticache_serverlessElastiCache Serverless cache | aws | engine — redis (default), valkey or memcachedcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_stored_gb* — Average GB stored over the monthecpus — ElastiCache Processing Units consumed in the monthsnapshot_gb — Snapshot GB stored |
aws.redshift_serverlessRedshift Serverless workgroup | aws | base_capacity — Base RPUs, used with usage.active_hours (default 128)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | rpu_hours — RPU-hours in the monthactive_hours — Hours with queries running, instead of rpu_hoursstorage_gb — Managed storage GBsnapshot_gb — User snapshot GB |
aws.opensearch_serverlessOpenSearch Serverless (account OCUs and storage) | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | indexing_ocu_hours — Indexing OCU-hours in the monthsearch_ocu_hours — Search OCU-hours in the monthstorage_gb — Managed storage GB |
aws.dax_clusterDynamoDB Accelerator (DAX) cluster | aws | size* — Node typecount — Nodes in the cluster (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
aws.emr_clusterEMR cluster (EMR surcharge only) | aws | instance_groups* — List of {size, count}: the EC2 instance type and how many of itcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
aws.athena_workgroupAthena workgroup | aws | engine — sql (default) or sparkcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | tb_scanned — TB scanned by SQL queries in the monthdpu_hours — Spark DPU-hours in the month |
aws.glue_jobGlue job | aws | job_type — glueetl (default), gluestreaming, pythonshell or gluerayworker_type — G.1X, G.2X, … or R.1X, … (default G.1X; Z.2X for Ray)number_of_workers — Workers, used with usage.run_hours (default 10)execution_class — standard (default) or flexglue_version — Glue version; 6.0 and later bill at the lower rate (default 4.0)max_capacity — DPUs for a pythonshell job (default 0.0625)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | dpu_hours — DPU-hours in the monthrun_hours — Hours of job runs, instead of dpu_hours |
aws.kinesis_firehose_streamData Firehose stream | aws | source — direct_put (default), kinesis_stream, msk or vended_logsformat_conversion — true if data format conversion is ondynamic_partitioning — true if dynamic partitioning is onvpc_az_count — AZs for delivery into a VPC (default none)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | ingested_gb* — GB ingested in the monthformat_conversion_gb — GB format-converteddynamic_partitioning_gb — GB dynamically partitionedvpc_delivery_gb — GB delivered into the VPC |
aws.sagemaker_notebookSageMaker notebook instance | aws | size* — Notebook instance typevolume_size_gb — ML storage volume GB (default 5)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
aws.cloudfront_distributionCloudFront distribution (region: global) | aws | edge_region — Where viewers are served: united_states (default), canada, europe, japan, asia_pacific, australia, india, south_america, south_africa or middle_eastprice_class — price_class_100, price_class_200 or price_class_all (default); rejects an edge_region the class does not servecount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_transfer_out_gb — GB served to viewers in the month (volume tiered)http_requests — HTTP requests in the monthhttps_requests — HTTPS requests in the monthorigin_transfer_gb — GB sent from the edge to your origin (POST/PUT)invalidation_paths — Invalidation paths requested in the month |
aws.vpn_connectionSite-to-Site VPN connection | aws | tunnel_bandwidth — standard (default, 1.25 Gbps) or large (5 Gbps) tunnelstransit_gateway_id — Set when the VPN terminates on a transit gateway; adds the TGW VPN attachmentstate — available (default) or deleted; deleted connections are not billedcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_transfer_out_gb — GB sent from AWS over the VPN (internet egress rates, volume tiered)tgw_data_processed_gb — GB processed by the transit gateway attachmenthours — Hours running in the month (default 730) |
aws.client_vpn_endpointClient VPN endpoint | aws | subnet_associations — Associated target subnets (default 1)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | connection_hours — Total client connection hours in the monthhours — Hours running in the month (default 730) |
aws.global_acceleratorGlobal Accelerator (region: the endpoint region) | aws | endpoint_region_group — na, eu, ap, au, in, kr, me, sa or za (default: derived from the estimate region)client_region_group — Where clients connect, same codes (default: the endpoint group)dominant_direction — out (default) or in: the direction with more traffic, the only one billedclient_type — internet (default) or awscount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | dt_premium_gb — GB in the dominant direction in the month |
aws.direct_connect_connectionDirect Connect connection | aws | bandwidth* — Port speed, e.g. '1Gbps', '10Gbps', '100Gbps', '400Gbps' or a hosted '50Mbps'-'25Gbps'connection_type — dedicated or hosted (default: dedicated for 1/10/100/400 Gbps, else hosted)location — Direct Connect location code, e.g. 'EqDC2' (DescribeConnections location); needed for data transfercount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_transfer_out_gb — GB sent from AWS over the connectionhours — Hours running in the month (default 730) |
aws.waf_web_aclWAF web ACL (CloudFront scope: region global) | aws | rule_count — Rules and rule groups in the web ACLcapacity_wcu — Web ACL capacity units; above 1,500 raises the request rate (default 1,500 or less)shield_advanced — true when protected by Shield Advancedcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | requests — Web requests inspected in the month |
aws.route53_resolver_endpointRoute 53 Resolver endpoint (inbound or outbound) | aws | ip_address_count — IP addresses (ENIs) on the endpoint (default 2)protocols — e.g. ['do53'] or ['doh']count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | queries — DNS queries through the endpoint in the month (volume tiered)hours — Hours running in the month (default 730) |
aws.workspaces_desktopWorkSpaces Personal desktop | aws | size — Bundle group ('Value', 'Standard', 'Performance', 'Power', 'PowerPro', 'GraphicsPro.g4dn') or exact bundle ('GeneralPurpose.4xlarge', 'Graphics.g6.xlarge'); default Standardos — windows (default), amazon_linux, ubuntu, rhel or rockylicense — Windows only: included (default) or byolrunning_mode — always_on (default, monthly) or auto_stop (monthly plus hourly)root_volume_gb — Root volume, with user_volume_gb choosing the bundle's storage option (default: the bundle's base pairing, 80/50 GB for Standard)user_volume_gb — User volumecount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — auto_stop: hours running in the month |
aws.step_functions_state_machineStep Functions state machine | aws | workflow_type — standard (default) or expressmemory_mb — Express: memory per execution in MB, billed in 64 MB steps (default 64)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | state_transitions — Standard: state transitions in the monthrequests — Express: workflow executions startedgb_seconds — Express: duration in GB-seconds (volume tiered)avg_duration_ms — Express: average execution time, used with requests and memory_mb when gb_seconds is not given |
aws.eventbridge_busEventBridge event bus | aws | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | custom_events — Custom events published (per 64 KB chunk)partner_events — SaaS partner events receivedapi_destination_invocations — API destination invocationsarchive_processed_gb — GB of events written to archivesarchive_storage_gb — GB-months of archived events stored |
aws.ses_sendingSES (Simple Email Service) sending | aws | dedicated_ips — Standard dedicated IPs leased (default 0)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | emails_sent — Emails sent, counted per recipientattachments_gb — GB of attachments sentemails_received — Emails received |
aws.cognito_user_poolCognito user pool | aws | feature_plan — lite, essentials (default) or pluscount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | maus — Monthly active users (Lite is volume tiered)m2m_token_requests — Client-credentials (M2M) token requests (volume tiered) |
aws.backup_vaultAWS Backup vault storage (one protected resource type) | aws | protected_resource* — efs, dynamodb, s3, timestream, vmware, sap_hana, dsql, eks; plus ebs, aurora, documentdb, neptune, fsx_windows, fsx_lustre, fsx_ontap, fsx_openzfs, storage_gateway in an air-gapped vaultvault_type — standard (default) or logically_air_gappedcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | warm_storage_gb — GB-months of warm backup storagecold_storage_gb — GB-months of cold backup storage |
aws.ssm_parameterSystems Manager Parameter Store parameter | aws | tier — standard (default), advanced or intelligent_tieringthroughput — standard (default) or high (the account-wide higher throughput setting)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | api_interactions — Parameter API interactions in the month |
azure.vmAzure virtual machine | azure | size* — VM sizeos — linux (default) or windowspurchase_model — on_demand (default, pay-as-you-go), spot, or committed with commitment_termcommitment_term — none (default), 1yr or 3yr: priced at the Azure Reservation term price spread over the term's hourscount — How many identical resources this entry describes; the price is multiplied by it (default 1) | hours — Hours running in the month (default 730) |
azure.managed_diskAzure managed disk | azure | sku* — standard_lrs, standard_ssd_lrs, standard_ssd_zrs, premium_lrs, premium_zrs, premium_v2_lrs or ultra_ssd_lrssize_gib* — Provisioned size in GiBperformance_tier — Premium SSD performance tier, if above the size tieriops — Provisioned IOPS (Premium SSD v2 / Ultra)throughput_mbps — Provisioned MB/s (Premium SSD v2 / Ultra)attached — Whether attached to a VM (default true)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | transactions — Disk operations per month (Standard HDD/SSD only; billed per 10K) |
azure.vmssAzure VM scale set | azure | size* — Instance sizecount* — Instance countos — linux (default) or windowspurchase_model — on_demand (default, pay-as-you-go), spot, or committed with commitment_termcommitment_term — none (default), 1yr or 3yr: priced at the Azure Reservation term price spread over the term's hours | hours — Hours running in the month (default 730) |
azure.redis_cacheAzure Cache for Redis | azure | tier* — basic, standard or premiumsize* — Cache size (C0-C6, P1-P5)count — Premium cluster shards (default 1)replicas_per_primary — Premium replicas per primary (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
azure.postgresql_flexible_serverAzure Database for PostgreSQL flexible server | azure | size* — Compute SKUstorage_gb — Provisioned storage in GBhigh_availability — disabled (default), zone_redundant or same_zonestate — running (default) or stopped; a stopped server has no compute chargecommitment_term — none (default), 1yr or 3yr reserved capacity (compute only; storage stays pay-as-you-go)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default); committed: required with commitment_term 1yr or 3yr | hours — Hours running in the month (default 730) |
azure.mysql_flexible_serverAzure Database for MySQL flexible server | azure | size* — Compute SKUstorage_gb — Provisioned storage in GBhigh_availability — disabled (default), zone_redundant or same_zonestate — running (default) or stopped; a stopped server has no compute chargecommitment_term — none (default), 1yr or 3yr reserved capacity (compute only; storage stays pay-as-you-go)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default); committed: required with commitment_term 1yr or 3yr | hours — Hours running in the month (default 730) |
azure.kubernetes_clusterAKS cluster (control plane) | azure | tier — free (default), standard or premiumautomatic — AKS Automatic cluster (default false)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
azure.application_gatewayAzure Application Gateway | azure | tier* — standard_v2, waf_v2, basic, or v1 standard/wafcount — Fixed instance count (manual scaling)min_capacity — Autoscale minimum instancessize — v1 only: small, medium or largepurchase_model — on_demand (default) | capacity_unit_hours — v2: capacity-unit hours consumed beyond the reserved minimum per monthdata_processed_gb — v1: GB processed per monthhours — Hours running in the month (default 730) |
azure.bastion_hostAzure Bastion | azure | sku — developer, basic, standard (default) or premiumscale_units — Scale units (default 2)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
azure.blob_storageAzure Blob Storage (block blobs, general-purpose v2) | azure | access_tier — hot (default), cool, cold or archiveredundancy — lrs (default), zrs, grs, ra_grs, gzrs or ra_gzrscount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — GB stored (monthly average)write_operations — Write operations per monthread_operations — Read operations per monthdata_retrieval_gb — GB read back from cool/cold/archive per month |
azure.data_transfer_outAzure internet egress (bandwidth) | azure | routing_preference — microsoft (default, Microsoft global network) or internet (ISP network)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | gb — GB transferred out to the internet per month |
azure.function_appAzure Functions app | azure | plan — consumption (default), flex_consumption or premiummemory_mb — Flex Consumption instance memory in MB: 512, 2048 or 4096 (default 2048)always_ready_instances — Flex Consumption always-ready instancessize — Premium plan size: EP1, EP2 or EP3count — Premium plan instance count (default 1)purchase_model — on_demand (default) | executions — Executions per monthgb_seconds — Execution time in GB-seconds per month (memory x duration)hours — Hours running in the month (default 730) |
azure.nat_gatewayAzure NAT Gateway | azure | sku — standard (default)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_processed_gb — GB processed per monthhours — Hours running in the month (default 730) |
azure.load_balancerAzure Load Balancer | azure | sku — standard (default), gateway or basictier — regional (default) or global (cross-region)rules — Load-balancing plus outbound rules (default 1; the first 5 share one hourly charge)chains — gateway sku: chained resourcescount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_processed_gb — GB processed per monthhours — Hours running in the month (default 730) |
azure.public_ip_addressAzure public IPv4 address | azure | sku — standard (default) or basictier — regional (default) or global (cross-region)allocation — static (default) or dynamic (basic only)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
azure.disk_snapshotAzure managed disk snapshot | azure | sku — standard_lrs (default), standard_zrs or premium_lrssize_gib — Source disk size in GiB (what a full snapshot bills)incremental — Incremental snapshot (default true)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — GB actually held (what an incremental snapshot bills) |
azure.container_registryAzure Container Registry | azure | sku — basic, standard (default) or premiumreplications — premium geo-replicascount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — GB stored (the tier includes 10/100/500 GB) |
azure.private_endpointAzure Private Endpoint | azure | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | ingress_gb — GB processed inbound per monthegress_gb — GB processed outbound per monthhours — Hours running in the month (default 730) |
azure.vpn_gatewayAzure VPN Gateway | azure | sku* — Basic or VpnGw1-5 / VpnGw1AZ-5AZ (default VpnGw1)s2s_tunnels — Site-to-site tunnels (10 included)p2s_connections — Point-to-site connections (128 included)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
azure.sql_databaseAzure SQL Database (single database) | azure | sku* — DTU objective (Basic, S0-S12, P1-P15) or vCore sku <GP|BC|HS>[_S]_<Gen5|DC|Fsv2|M|PRMS|MOPRMS>_<vCores>; _S is serverlessmax_size_gb — Data max size in GB (DTU: billed above the included size; GP/BC: billed in full plus 30% for the log)zone_redundant — Zone redundant (General Purpose bills an add-on)ha_replicas — Hyperscale high-availability replicasbackup_redundancy — geo (default), local, zone or geo_zonecount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | vcore_seconds — Serverless: vCore-seconds billed per monthstorage_gb — Hyperscale: allocated storage, GBbackup_storage_gb — vCore: PITR backup storage beyond the free allowance (Hyperscale: all backup storage), GB-monthltr_backup_gb — Long-term retention backups, GB-monthhours — Hours running in the month (default 730) |
azure.sql_elastic_poolAzure SQL Database elastic pool | azure | sku* — BasicPool, StandardPool or PremiumPool (with edtus), or a vCore sku like GP_Gen5_4edtus — eDTUs, for a DTU poolmax_size_gb — vCore pool data max size in GBzone_redundant — Zone redundantha_replicas — Hyperscale high-availability replicasbackup_redundancy — geo (default), local, zone or geo_zonecount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — Hyperscale: allocated storage, GBbackup_storage_gb — vCore: PITR backup storage beyond the free allowance (Hyperscale: all backup storage), GB-monthltr_backup_gb — Long-term retention backups, GB-monthhours — Hours running in the month (default 730) |
azure.cosmosdb_accountAzure Cosmos DB account (RU-based) | azure | capacity_mode — provisioned (default), autoscale or serverlessthroughput_ru — Total RU/s across the account's databases and containers (autoscale: the maximum)regions — Regions the account is replicated to (default 1)multi_region_writes — Writes accepted in every regioncount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — Transactional storage per region, GBrequest_units — Serverless: request units consumed per monthaverage_ru_per_sec — Autoscale: average of the hourly peak RU/shours — Hours running in the month (default 730) |
azure.event_hubs_namespaceAzure Event Hubs namespace | azure | sku — basic, standard (default), premium or dedicatedcapacity — Throughput units (Basic/Standard), processing units (Premium) or capacity units (Dedicated); default 1capture_enabled — Standard: Event Hubs Capture oncount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | ingress_events — Basic/Standard: ingress events per monthextended_retention_gb — Premium/Dedicated: GB retained beyond the included retentionhours — Hours running in the month (default 730) |
azure.service_bus_namespaceAzure Service Bus namespace | azure | sku — basic, standard (default) or premiumcapacity — premium messaging units (default 1)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | operations — Messaging operations per monthbrokered_connections — Standard: brokered connections (1,000 included)hours — Hours running in the month (default 730) |
azure.event_grid_topicAzure Event Grid topic or namespace | azure | kind — topic (custom, system or domain topic; default) or namespacethroughput_units — namespace: throughput units (default 1)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | operations — topic: operations per monthevent_operations — namespace: event operations per monthmqtt_operations — namespace: MQTT operations per monthhours — Hours running in the month (default 730) |
azure.app_service_planAzure App Service plan | azure | size* — Plan size: F1, D1, B1-B3, S1-S3, P1v2-P3v2, P0v3-P3v3, P1mv3-P5mv3, I1v2-I6v2, ...count — Instance count (default 1)os — linux or windows (default windows)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
azure.container_appAzure Container Apps (app or environment) | azure | plan — consumption (default) or dedicated (workload profiles)vcpus — dedicated: vCPUs per workload profile instancememory_gib — dedicated: GiB per instancecount — dedicated: profile instances (default 1)purchase_model — on_demand (default) | vcpu_seconds — consumption: active vCPU-seconds per monthgib_seconds — consumption: active GiB-seconds per monthidle_vcpu_seconds — consumption: idle vCPU-secondsidle_gib_seconds — consumption: idle GiB-secondsrequests — consumption: requests per monthhours — Hours running in the month (default 730) |
azure.api_management_serviceAzure API Management service | azure | sku — consumption, developer (default), basic, standard, premium, isolated, basic_v2, standard_v2 or premium_v2units — Scale units (default 1)additional_region_units — premium: units in additional regionscount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | calls — consumption / basic_v2 / standard_v2: API calls per monthhours — Hours running in the month (default 730) |
azure.ai_search_serviceAzure AI Search service | azure | sku* — free, basic, standard, standard2, standard3, storage_optimized_l1 or storage_optimized_l2count — Replicas (default 1)partitions — Partitions (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
azure.key_vaultAzure Key Vault (or Managed HSM pool) | azure | sku — standard (default), premium or managed_hsmcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | operations — Secret/certificate/software-key operations per monthadvanced_operations — RSA 3072/4096 and EC key operations per monthhsm_keys — premium: HSM-protected RSA 2048-bit keyshsm_advanced_keys — premium: HSM-protected advanced keys |
azure.log_analytics_workspaceAzure Log Analytics workspace | azure | sku — pay_as_you_go (default, PerGB2018) or capacity_reservationcommitment_gb_per_day — capacity_reservation: commitment tier (100, 200, 300, 400, 500, 1000, 2000, 5000, ...)retention_days — Analytics Logs retention (default 31)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | ingested_gb — GB ingested per monthretained_gb — GB held beyond the included 31 days |
azure.files_shareAzure Files share | azure | billing_model — standard (default, pay-as-you-go), premium, provisioned_v2_ssd or provisioned_v2_hddaccess_tier — standard: transaction_optimized (default), hot or coolredundancy — lrs (default) or zrsprovisioned_gib — premium / provisioned v2: provisioned GiBprovisioned_iops — provisioned v2: provisioned IOPSprovisioned_throughput_mibps — provisioned v2: MiB/scount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — standard: GB storedwrite_operations — standard: write operations per monthlist_operations — standard: list operations per monthread_operations — standard: read operations per monthdata_retrieval_gb — cool: GB read backsnapshot_gb — premium: snapshot GB |
azure.synapse_sql_poolAzure Synapse dedicated SQL pool | azure | size* — Service level DW100c..DW30000cstate — running (default) or stopped (paused)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_tb — TB stored (data and snapshots)hours — Hours running in the month (default 730) |
azure.dns_zoneAzure DNS zone | azure | zone_type — public (default) or privatecount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | queries — DNS queries per month |
azure.front_door_profileAzure Front Door Standard/Premium profile | azure | sku — standard (default) or premiumbilling_zone — Clients' Azure billing zone, zone_1 (default, North America/Europe) to zone_8count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | requests — Requests per monthegress_gb — GB delivered to clients per monthorigin_gb — GB fetched from origins per monthhours — Hours running in the month (default 730) |
azure.virtual_wan_hubAzure Virtual WAN hub | azure | sku — standard (default) or basicrouting_infrastructure_units — Routing infrastructure units (2 included; default 2)s2s_scale_units — Site-to-site VPN gateway scale unitsp2s_scale_units — Point-to-site VPN gateway scale unitsexpressroute_scale_units — ExpressRoute gateway scale unitscount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | data_processed_gb — GB processed through the hub per monthhours — Hours running in the month (default 730) |
gcp.compute_instanceGCP Compute Engine instance | gcp | size* — Predefined (n2-standard-4) or custom (n2-custom-4-16384) machine type; families e2, n1, n2, n2d, n4, c2, c2d, c3, c3d, c4, c4a, t2a, t2dlocal_ssd_count — Number of 375 GB local SSD partitionspurchase_model — on_demand (default), spot (Spot VMs at the Spot vCPU, memory and local SSD rates) or committed with commitment_termcommitment_term — none (default), 1yr or 3yr: price at the resource-based committed use discount vCPU/memory rates (predefined types of families e2, n1, n2, n2d, n4, c2, c2d, c3, c3d, c4, c4a, t2d; not with spot)count — How many identical resources this entry describes; the price is multiplied by it (default 1) | hours — Hours running in the month (default 730) |
gcp.sql_instanceGCP Cloud SQL instance | gcp | size* — db-custom-<vCPU>-<MiB>, db-n1-standard-N, db-n1-highmem-N, db-f1-micro, db-g1-small or db-perf-optimized-N-<vCPU> (Enterprise Plus)database_version* — Engine and version, e.g. mysql_8_0, postgres_16, sqlserver_2022_standardavailability_type — zonal (default) or regional (high availability)disk_type — pd_ssd or pd_hdddisk_size_gb — Provisioned storage in GBedition — enterprise (default) or enterprise_plusstate — running (default) or stopped; a stopped instance has no compute chargecommitment_term — none (default), 1yr or 3yr: vCPU and memory at the Cloud SQL committed use discount (25% / 52% off; db-custom-* and db-perf-optimized-N-* sizes only)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default); committed: required with commitment_term 1yr or 3yr | hours — Hours running in the month (default 730) |
gcp.gke_clusterGKE cluster (management fee) | gcp | location — Region for a regional cluster, zone for a zonal one (default: the region)autopilot — Whether it is an Autopilot cluster (default false)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
gcp.compute_snapshotGCP persistent disk snapshot | gcp | storage_location* — Region (us-central1) or multi-region (us, eu, asia)storage_gb* — Stored snapshot size in GBsnapshot_type — standard (default) or archivecount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | — |
gcp.vpc_connectorServerless VPC Access connector | gcp | size* — e2-micro or e2-standard-4min_instances — Minimum instance count (default 2)max_instances — Maximum instance countcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
gcp.persistent_diskGCP persistent disk / Hyperdisk volume | gcp | disk_type* — pd_standard, pd_balanced, pd_ssd, pd_extreme, hyperdisk_balanced, hyperdisk_balanced_high_availability, hyperdisk_extreme or hyperdisk_throughputsize_gb* — Provisioned size in GBprovisioned_iops — Provisioned IOPS (pd_extreme, hyperdisk_extreme, hyperdisk_balanced; Hyperdisk Balanced includes 3,000)provisioned_throughput_mbps — Provisioned throughput in MB/s (hyperdisk_throughput, hyperdisk_balanced; Hyperdisk Balanced includes 140)regional — Replicated across two zones (pd_standard/balanced/ssd; hyperdisk_balanced becomes High Availability), default falsecount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | — |
gcp.storage_bucketGCP Cloud Storage bucket | gcp | storage_class — standard (default), nearline, coldline or archivelocation_type — region (default), dual_region or multi_regionlocation — Bucket location: a region (default: the resource region) or, for multi_region, us, eu or asiacount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — GB stored per monthclass_a_operations — Class A operations (writes, lists) per monthclass_b_operations — Class B operations (reads) per monthretrieval_gb — GB read back from nearline/coldline/archive per month |
gcp.data_transfer_outGCP internet data transfer out (egress) | gcp | network_tier — premium (default) or standarddestination — Premium Tier destination: americas (North America, default), central_america, south_america, western_europe, eastern_europe, middle_east, africa, india, apac, south_korea, indonesia, australia or chinacount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | gb — GB transferred out to the internet per month |
gcp.cloud_functionCloud Run function (request-based billing) | gcp | memory_mb — Memory per instance in MB (default 256)vcpu — vCPUs per instance (default: Google's default for the memory size)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | invocations — Invocations per monthavg_duration_ms — Average billed duration per invocation in ms (rounded up to 100 ms)vcpu_seconds — vCPU-seconds per month, instead of deriving them from invocations and durationgib_seconds — GiB-seconds per month, instead of deriving them from invocations and duration |
gcp.cloud_nat_gatewayGCP Cloud NAT gateway | gcp | count — VMs using the gateway (the hourly charge is per VM, capped at 32)nat_ip_count — NAT external IP addressespurchase_model — on_demand (default) | data_processed_gb — GB processed by the gateway per monthhours — Hours running in the month (default 730) |
gcp.cloud_vpn_tunnelGCP HA VPN tunnels | gcp | count — Number of tunnels (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
gcp.dns_zoneGCP Cloud DNS managed zone | gcp | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | queries — DNS queries per month |
gcp.external_ip_addressGCP external IP address | gcp | attached — Whether the address is in use on a VM (default false: reserved and idle)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
gcp.memorystore_redis_instanceMemorystore for Redis instance | gcp | tier — basic (default) or standard_hamemory_gib* — Provisioned capacity in GiB (sets the M1-M5 band)read_replicas_mode — read_replicas_enabled for a Standard instance with read replicas (billed per node)replica_count — Read replicas (with read replicas enabled)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
gcp.memorystore_redis_clusterMemorystore for Redis Cluster | gcp | size — Node type: redis_shared_core_nano, redis_standard_small, redis_highmem_medium (default) or redis_highmem_xlargecount* — Shardsreplica_count — Replicas per shard (default 0)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
gcp.bigquery_datasetBigQuery (queries and storage) | gcp | location — Dataset location: a region or the us / eu multi-region (default: the resource region)pricing_model — on_demand (per TiB scanned, default), standard, enterprise or enterprise_plus (editions, per slot-hour)storage_billing — logical (default) or physicalbaseline_slots — Editions: always-on baseline slots of the reservationcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | tib_scanned — On-demand: TiB scanned by queries per monthslot_hours — Editions: autoscaled slot-hours per monthactive_storage_gb — Active storage, GB-monthslong_term_storage_gb — Long-term storage (unmodified 90 days), GB-monthsstreaming_insert_gb — GB streamed with the legacy insertAll APIhours — Hours running in the month (default 730) |
gcp.load_balancerCloud Load Balancing load balancer | gcp | load_balancer_type* — global_external_application, regional_external_application, regional_internal_application, cross_region_internal_application, global_external_proxy_network, regional_external_proxy_network, regional_internal_proxy_network, cross_region_internal_proxy_network, external_passthrough_network or internal_passthrough_networkforwarding_rule_count — Forwarding rules (default 1; the first 5 are one minimum charge)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | inbound_gb — GB of requests processed per monthoutbound_gb — GB of responses processed per monthproxy_instance_hours — Internal Application LBs: proxy instance-hours per monthhours — Hours running in the month (default 730) |
gcp.cloud_run_serviceCloud Run service | gcp | vcpu — vCPUs per instance (default 1)memory_mb — Memory per instance in MB (default 512)billing — request (CPU only while serving, default) or instancemin_instances — Minimum instances, billed idle (request) or always on (instance)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | vcpu_seconds — vCPU-seconds billed per monthgib_seconds — GiB-seconds billed per monthrequests — Requests per month (request-based billing)hours — Hours running in the month (default 730) |
gcp.artifact_registryArtifact Registry repository | gcp | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — GB stored, GB-months |
gcp.filestore_instanceFilestore instance | gcp | tier — basic_hdd (default), basic_ssd, zonal, regional, enterprise or high_scale_ssdcapacity_gb* — Provisioned capacity in GBcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | hours — Hours running in the month (default 730) |
gcp.alloydb_instanceAlloyDB instance | gcp | cpu_count* — vCPUs (N2/C4A shapes, 8 GB memory per vCPU)role — primary (default) or read_poolavailability_type — Primary: regional (with HA standby, default) or zonalread_pool_nodes — read_pool: node count (default 1)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | storage_gb — Cluster storage used, GB-months (price once per cluster)hours — Hours running in the month (default 730) |
gcp.spanner_instanceSpanner instance (regional) | gcp | config — regional-<region> (default: the resource region)edition — standard (default), enterprise or enterprise_pluscount — Nodes (or give processing_units)processing_units — Processing units (1,000 = 1 node)storage_type — ssd (default) or hddpurchase_model — on_demand (default) | storage_gb — Data stored, GB-monthshours — Hours running in the month (default 730) |
gcp.firestore_databaseFirestore database (Standard edition) | gcp | location — Region or multi-region (nam5, eur3), default the resource regioncount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | reads — Document reads per monthwrites — Document writes per monthdeletes — Document deletes per monthstorage_gb — Stored data and indexes, GB-months |
gcp.bigtable_clusterBigtable cluster | gcp | count* — Nodesstorage_type — ssd (default) or hddedition — enterprise (default) or enterprise_pluspurchase_model — on_demand (default) | storage_gb — Data stored, GB-monthshours — Hours running in the month (default 730) |
gcp.pubsub_topicPub/Sub topic and subscriptions | gcp | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | throughput_tib — TiB published plus delivered per monthtopic_retention_gb — Topic message retention, GB-monthssubscription_backlog_gb — Subscription backlog / retained acked messages, GB-months |
gcp.secret_manager_secretSecret Manager secret | gcp | active_versions — Enabled or disabled (not destroyed) versions, default 1replica_locations — Replica locations (automatic replication = 1, default)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | access_operations — Access operations per monthrotations — Rotation notifications per month |
gcp.cloud_kms_keyCloud KMS key | gcp | protection_level — software (default), hsm, external or external_vpcalgorithm — Key version algorithm (default google_symmetric_encryption), e.g. rsa_sign_pss_2048_sha256, ec_sign_p256_sha256active_versions — Active key versions (default 1)count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | crypto_operations — Cryptographic operations per month |
gcp.cloud_logging_bucketCloud Logging (a project's logs) | gcp | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | ingested_gb — GB ingested into log buckets per monthvended_ingested_gb — GB of VPC flow / firewall / NAT logs per monthretained_gb — GB retained beyond 30 days, GB-months |
gcp.cloud_cdn_backendCloud CDN | gcp | destination — Where cache egress goes: north_america (default), europe, asia, latin_america, oceania, middle_east, china or otherorigin_area — The backend's area, same values (default: from the region)backend — compute (backend service, default) or bucketcount — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | cache_egress_gb — GB served from cache per monthcache_fill_gb — GB filled from the origin per monthcache_lookups — HTTP(S) cache lookup requests per month |
gcp.api_gateway_apiAPI Gateway API | gcp | count — How many identical resources this entry describes; the price is multiplied by it (default 1)purchase_model — on_demand (default) | calls — API calls per month |
gcp.psc_endpointPrivate Service Connect consumer endpoints | gcp | count — Endpoints (default 1)target — published_service (default) or google_apis (no data charge)purchase_model — on_demand (default) | data_processed_gb — GB processed per month |

