Load Balancer Selection Guide: ALB vs NLB vs CLB

Choosing the right AWS load balancer affects performance, cost, and feature availability. This guide compares Application Load Balancer (ALB), Network Load Balancer (NLB), and Classic Load Balancer (CLB) to help you make the right choice.

Quick Comparison

Feature ALB NLB CLB
OSI Layer Layer 7 (HTTP/HTTPS) Layer 4 (TCP/UDP) Layer 4 + 7
Protocols HTTP, HTTPS, gRPC TCP, UDP, TLS HTTP, HTTPS, TCP, SSL
Latency ~ms additional Ultra-low (~μs) ~ms additional
Static IP No (use Global Accelerator) Yes (one per AZ) No
WebSocket Yes Yes No
Path routing Yes No No

Application Load Balancer (ALB)

When to Use ALB

Key Features

ALB Routing Example

# Rule 1: API traffic
Host: api.example.com
Path: /v1/* → Target Group: api-v1

# Rule 2: API v2
Host: api.example.com
Path: /v2/* → Target Group: api-v2

# Rule 3: Static content
Host: static.example.com → Target Group: cdn

# Default: Main application
* → Target Group: web-frontend

Network Load Balancer (NLB)

When to Use NLB

Key Features

Performance Characteristics

Classic Load Balancer (CLB)

Legacy—Avoid for New Deployments

Migration Path

Decision Matrix

Choose ALB When:

Choose NLB When:

Cost Considerations

Pricing Model

Cost Optimization Tips

ALB + NLB Pattern

Use both for different purposes:

Internet Traffic
       │
       ├── HTTPS (web) ───► ALB ───► Web Tier
       │                    │
       │                    └───► API Tier
       │
       └── TCP (gaming) ──► NLB ───► Game Servers
       
Internal Traffic
       │
       └── gRPC services ─► Internal ALB ───► Microservices

Health Checks

ALB Health Checks

NLB Health Checks

Key Takeaways

Need Load Balancer Architecture Help?

We optimize load balancer configurations for performance and cost. Contact us for a consultation.