AWSAmazon EC2 Auto ScalingCompute

aws_launch_configuration cost estimation

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.

An aws_launch_configuration defines how an Auto Scaling Group should create EC2 instances: instance type, AMI, key pair, security groups, and root block device. The configuration itself has no charge. It becomes a bill only when an Auto Scaling Group references it and launches instances, each of which inherits the configured instance_type and storage.

Launch configurations are the older mechanism and are immutable: you cannot edit one, you must replace it. AWS now steers new work toward aws_launch_template, which supports Spot options, multiple versions, and mixed-instances policies that a launch configuration cannot. If you are choosing between them for cost control, the launch template is the better lever because it can request Spot and be right-sized without recreating the whole config.

The cost drivers are the same as any EC2 fleet: the instance_type multiplied across every instance the group launches, plus the root_block_device volume carried by each one. A launch configuration pinned to m5.xlarge across a 6-instance group is roughly $840/month in compute before storage. c3x reads the launch configuration behind an Auto Scaling Group and prices the instances and volumes it would create, so you see the fleet cost before any instance runs.

Terraform example

A minimal but realistic configuration that C3X can estimate.

resource "aws_launch_configuration" "web" {
  name_prefix     = "web-"
  image_id        = data.aws_ami.al2023.id
  instance_type   = "m5.large"
  security_groups = [aws_security_group.web.id]

  root_block_device {
    volume_size = 30
    volume_type = "gp3"
  }

  lifecycle {
    create_before_destroy = true
  }
}

Pricing dimensions

What you actually pay for when you provision aws_launch_configuration.

DimensionUnitWhat's being charged
Launch configurationfreeThe configuration has no charge.
$0
Instances it launchesper instance-hourThe instance_type applied to every instance the Auto Scaling Group launches.
m5.large on-demand: ~$0.096/hour
Root block deviceper GB-monthThe root volume carried by every launched instance.
gp3: $0.08/GB-month

Optimization tips

Common ways to reduce aws_launch_configuration cost without changing the workload.

Migrate to a launch template for Spot

Up to 90% on eligible instances

Launch configurations cannot request Spot or run a mixed-instances policy. Move to aws_launch_template to make fault-tolerant instances eligible for the Spot discount.

Right-size the instance_type

50% per size reduction

The configuration's instance type multiplies across the whole group, so downsizing it once is the cheapest change you can make to the fleet.

Trim the root_block_device

A smaller gp3 root volume reduces the storage cost carried by every instance the group launches.

FAQ

Does a launch configuration cost anything?

No. The launch configuration is free. Cost appears only when an Auto Scaling Group uses it to launch EC2 instances, which are billed per hour along with their root volumes.

Should I use a launch configuration or a launch template?

Use a launch template. It supports Spot, multiple versions, and mixed-instances policies that a launch configuration cannot, all of which matter for cost. AWS steers new work to launch templates.

How do I estimate the cost behind a launch configuration?

Multiply the instance_type's hourly rate by the Auto Scaling Group's desired capacity by 730 hours, then add the root volume. c3x does this by reading the configuration from your Terraform.

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