Support Portal
costlensidle load balancer

Idle Load Balancer

CostLens detects ALBs, NLBs, and Classic LBs with no traffic in the past 7 days.

Last updated: May 2025

CostLens detects Application Load Balancers (ALB), Network Load Balancers (NLB), and Classic Load Balancers (CLB) that have received no traffic in the past 7 days. Each load balancer incurs a fixed hourly charge regardless of traffic — an idle LB is pure waste.

Deletion is irreversible

Deleting a load balancer immediately removes its DNS name. Any DNS records or application code pointing at the load balancer's DNS will break instantly. Verify nothing is pointing at the LB before approving the fix.

How it works

CostLens queries CloudWatch metrics

Queries RequestCount (ALB/CLB) or ActiveFlowCount (NLB) over 7 days.

Zero-traffic LBs are flagged

Any load balancer where all data points are zero (no traffic at all) is flagged as idle.

Recommendation card appears

Shows the LB name, type, and fixed monthly cost.

If approved, CostLens deletes it

Calls elasticloadbalancing:DeleteLoadBalancer to remove it.

Before you approve — checklist

  • Check DNS records — search Route 53 or your DNS provider for the LB's DNS name to confirm nothing is pointing to it
  • Check application configs — search your codebase or configuration files for the LB DNS name or ARN
  • Check CloudFormation/Terraform stacks — the LB may be managed by IaC; deleting it could cause drift
  • Check target groups — if the LB has registered targets, investigate why they exist before deleting
  • Consider the reason it's idle — planned maintenance, seasonal workload, or recently migrated service all create idle LBs that aren't waste

Monthly cost saved

LB typeEstimated monthly savings
ALB / NLB~$16.50/mo (fixed hourly charge only, before LCU costs)
Classic LB~$18.00/mo

Data transfer and LCU costs are also eliminated, making actual savings higher.

Tip

If you're not sure whether the LB is truly safe to delete, click Dismiss on the recommendation and tag the LB with AezonaCostlens:Skip=true to prevent it from being flagged again.

Previous
EBS gp2 → gp3 Migration
Next
Stopped EC2 Instances