AWSAWS LambdaServerless

aws_lambda_alias cost estimation

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.

An aws_lambda_alias is a named, mutable pointer to a specific Lambda function version, such as "prod" or "live". Aliases are free: there is no charge for creating one, and no meter attached to it. They exist to give callers a stable ARN and to shift traffic between versions during deployments (weighted routing between two versions for canary and blue/green rollouts).

The cost stays entirely on the underlying aws_lambda_function. Every invocation routed through an alias is billed exactly as a direct invocation: per request and per GB-second of execution based on the version's memory and duration. Weighted aliases do not add cost; they just split the same invocations across two versions, each billed at its own configuration. The one thing to watch is provisioned concurrency, which is configured per alias or version and is billed whether or not the function is invoked; that charge belongs to provisioned concurrency, not to the alias abstraction.

There is nothing on the alias itself to optimize. The useful practice is to point production traffic at an alias so you can shift versions without changing callers, and to reserve provisioned concurrency deliberately since that is the one alias-adjacent setting that costs money at rest. c3x prices the function's requests and duration, plus any provisioned concurrency, and treats the alias as the free pointer it is.

Terraform example

A minimal but realistic configuration that C3X can estimate.

resource "aws_lambda_alias" "live" {
  name             = "live"
  function_name    = aws_lambda_function.api.function_name
  function_version = aws_lambda_function.api.version

  routing_config {
    additional_version_weights = {
      "2" = 0.1
    }
  }
}

Pricing dimensions

What you actually pay for when you provision aws_lambda_alias.

DimensionUnitWhat's being charged
AliasfreeCreating an alias and routing invocations through it has no charge of its own.
$0
Function invocationsper 1M requests + GB-secondCalls routed through the alias are billed on the underlying function like any invocation.
$0.20 per 1M requests
Provisioned concurrencyper GB-second reservedIf configured on the alias, provisioned concurrency is billed for reserved capacity whether invoked or not.
~$0.0000041667/GB-second

Optimization tips

Common ways to reduce aws_lambda_alias cost without changing the workload.

Use an alias for zero-downtime shifts

Pointing callers at an alias lets you shift traffic between versions with weighted routing at no extra cost, avoiding redeploys and reducing failed-invocation retries during rollout.

Reserve provisioned concurrency deliberately

Avoids paying for idle warm capacity

Provisioned concurrency set on an alias bills for reserved capacity around the clock. Use it only for latency-critical paths and scale it with Application Auto Scaling to match real traffic.

Keep aliases lean during canaries

Weighted routing splits the same invocations, so a canary adds no cost. Complete the rollout promptly rather than running two versions warm with provisioned concurrency indefinitely.

FAQ

Does a Lambda alias cost money?

No. Creating an alias and routing invocations through it is free. Cost stays on the function: per request and per GB-second. The only alias-adjacent charge is provisioned concurrency, if you configure it.

Does weighted alias routing add cost?

No. Weighted routing splits the same invocations across two versions, each billed at its own memory and duration. You pay the same total as sending all traffic to one version.

Why might an alias appear on my Lambda bill?

Only through provisioned concurrency, which is configured per alias or version and bills for reserved warm capacity whether or not it is invoked. The alias itself has no charge.

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