aws_spot_instance_request cost estimation
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).
An aws_spot_instance_request launches an EC2 instance using spare capacity at the Spot price, which floats with supply and demand and runs up to ~90% below the on-demand rate. The catch is interruption: AWS can reclaim the instance with a two-minute warning when it needs the capacity back or when the Spot price exceeds your max.
Because the Spot price floats, c3x prices a spot request at the on-demand rate as a conservative ceiling — a t3.micro is ~$0.0104/hour, ~$7.59/month on-demand, and your actual Spot cost will be meaningfully lower. Pricing the ceiling means estimates never understate cost based on a discount that can change.
Spot is ideal for fault-tolerant, stateless, or checkpointable work — batch jobs, CI runners, rendering, big-data processing — anything that survives a node disappearing. For durable, single-instance workloads, use on-demand or a Reserved Instance instead. And for managed fleets, an Auto Scaling group or EKS/ECS with a spot capacity type handles interruption and replacement better than standalone spot requests.
c3x prices the request from instance_type at the on-demand ceiling, flagging the spot discount as upside.
Terraform example
A minimal but realistic configuration that C3X can estimate.
resource "aws_spot_instance_request" "worker" {
ami = data.aws_ami.al2023.id
instance_type = "t3.micro"
spot_price = "0.01"
spot_type = "one-time"
wait_for_fulfillment = true
tags = {
Name = "batch-worker"
}
}Pricing dimensions
What you actually pay for when you provision aws_spot_instance_request.
| Dimension | Unit | What's being charged |
|---|---|---|
| Instance (on-demand ceiling) | per hour | Priced at the on-demand rate as a conservative ceiling; actual Spot price floats up to ~90% lower. $0.0104/hour on-demand for t3.micro → ~$7.59/month (real Spot cost is lower) |
| EBS volume | per GB-month | The instance's root/data EBS volume bills separately. |
Sample C3X output
A t3.micro spot request, priced at the on-demand ceiling (real Spot is lower):
aws_spot_instance_request.worker
└─ Instance (t3.micro, on-demand ceiling) 730 hours $7.59
Monthly $7.59Optimization tips
Common ways to reduce aws_spot_instance_request cost without changing the workload.
Use Spot for fault-tolerant, stateless work
Up to ~90% vs on-demandSpot's up-to-90% discount is real money for batch jobs, CI runners, rendering, and stateless workers that tolerate the two-minute interruption notice. Don't run stateful singletons or latency-critical services on raw spot requests.
Prefer managed fleets over standalone spot requests
Resilience plus spot savingsAn Auto Scaling group with a mixed/spot allocation, or EKS/ECS with a spot capacity type, handles interruption, diversification across instance types, and automatic replacement — more robust than individual aws_spot_instance_request resources.
Diversify instance types
Fewer interruptions, lower priceInterruption risk and price vary by instance type and AZ. Requesting from a pool of compatible types (via a fleet) reduces interruptions and catches the cheapest available capacity.
Design for interruption
Avoids rework cost on interruptionCheckpoint long jobs, make workers idempotent, and handle the two-minute Spot interruption notice to drain gracefully — so an interruption costs minutes, not lost work.
FAQ
How much does an EC2 Spot instance cost?
The Spot price floats with supply/demand, typically up to ~90% below on-demand. Because it changes, c3x prices a spot request at the on-demand rate as a conservative ceiling (e.g. ~$7.59/month for a t3.micro) — your real Spot cost will be lower.
Why does c3x show the on-demand price for a spot request?
Spot prices float, so any fixed spot number would be wrong by next week. Pricing the on-demand ceiling means the estimate never understates cost based on a discount that can vanish — treat the spot savings as upside.
Should I use a spot request or an Auto Scaling group?
For anything beyond a one-off, prefer a managed fleet — an Auto Scaling group with spot allocation, or EKS/ECS with a spot capacity type — which handles interruption, instance-type diversification, and replacement far better than standalone spot requests.
How does c3x estimate the cost?
From instance_type at the on-demand rate (the conservative ceiling), plus the EBS volume. It flags spot usage so you know the real cost is lower.
Related resources
Estimate this resource in your own Terraform
Free, open source, no API key. C3X parses your Terraform and shows line-item cost for every resource, including aws_spot_instance_request.