Cloudflare Load Balancing
A global load balancer that runs in Cloudflare’s network, health-checks your servers from many data centers and sends each visitor to a healthy pool chosen by failover order, location or measured latency.
- What it is
- Load balancers
- Type
- Commercial product
- Made by
- Cloudflare, Inc.
- License
- Proprietary
- Facts checked
- 12 October 2026
What it is
You give a hostname to a load balancer, and Cloudflare creates a special DNS record for it. Behind the load balancer sit pools, each a group of endpoints (servers, IPs or hostnames); a pool is often one region or one data center. Monitors probe the endpoints over HTTP(S), TCP, ICMP, UDP or SMTP. For each region you choose, Cloudflare sends probes from three data centers, and an endpoint counts as healthy when a majority of regions say so. Unhealthy pools drop out of rotation, and if every pool fails, traffic goes to a fallback pool.
A steering policy picks the pool. Off (failover) uses the pool order, Random splits traffic by weight, Geo maps regions or countries to pools, Proximity uses GPS coordinates you give each pool, Dynamic ranks pools by a moving average of the round-trip time the health probes measure, and Least Outstanding Requests prefers pools with fewer requests in flight. When the hostname is proxied (orange cloud), Cloudflare picks an endpoint for every HTTP request, so failover does not wait for DNS caches and it can pin a user to one endpoint with a __cflb cookie (23 hours by default). In DNS-only mode it answers DNS queries with a healthy endpoint’s address instead. Load Balancing is a paid add-on starting at $5 a month.
Why teams pick it
- Health checks come from many locations, and a region is healthy only if most of its three probing data centers agree, so one bad network path does not take an endpoint out
- In proxied mode failover is per request and hides your origin IPs, with caching, the WAF and Workers applied on the same hostname
- Steering by failover order, weights, geography, GPS proximity, measured latency or in-flight requests, plus a second level of steering between endpoints inside a pool
- Pools can mix clouds and on-premises servers, and since 2023 can reach private IPs through Cloudflare Tunnel
Watch out for
- Geo, Dynamic, Proximity and Least Outstanding Requests need the Traffic steering add-on or Enterprise; other plans get only failover and random
- Non-Enterprise accounts are capped at 20 load balancers, 20 pools and 20 endpoints, with monitors no more often than every 15 seconds (10 on Enterprise)
- DNS-only mode has no session affinity or endpoint drain, and clients may keep a cached answer after an endpoint fails
- Probing from many regions, or at short intervals, can send a lot of health-check traffic to each endpoint
Alternatives
What all load balancers have in common →How it fits with other technologies
What Cloudflare Load Balancing uses
What uses Cloudflare Load Balancing
API body for a proxied load balancer with geo steering and cookie affinity · json
{
"name": "www.example.com",
"proxied": true,
"steering_policy": "geo",
"session_affinity": "cookie",
"fallback_pool": "ff02c959d17f7bb2b1184a202e3c0af7",
"default_pools": [
"17b5962d775c646f3f9725cbc7a53df4",
"ff02c959d17f7bb2b1184a202e3c0af7"
],
"region_pools": {
"WNAM": ["17b5962d775c646f3f9725cbc7a53df4", "ff02c959d17f7bb2b1184a202e3c0af7"],
"EEU": ["ff02c959d17f7bb2b1184a202e3c0af7", "17b5962d775c646f3f9725cbc7a53df4"]
}
}See it in a real stack
No architecture uses Cloudflare Load Balancing yet. Drop it into the playground and wire it up yourself.Open playground →Where it came from2016–2023
Many global load balancers worked through DNS: they changed which IP address a name resolved to, and clients kept using the old answer until caches expired. Cloudflare already ran an Anycast DNS service and a reverse proxy in about 100 data centers, and its own website was served from origins in Europe and the US.
On September 29, 2016, Matt Silverlock described Cloudflare Traffic Manager, built on that DNS infrastructure, with health checks from every data center or selected regions, round-robin, failover and geo-steering, and opened an Early Access program. The stated goal was to fix slow failover “measured in minutes”: for proxied records Cloudflare could fail over within seconds and make the decision separately in each data center. Enterprise customers used it from March 2017, and on May 14, 2017 it launched for all customers as Load Balancing, starting at $5 a month with 500,000 DNS queries included.
Later work moved the balancer closer to the servers. In September 2023 pools gained private IP endpoints reached through Cloudflare Tunnel, so a customer could drop the hardware load balancer in its own data center.
Why it’s built this way
- Proxy-based failover, with DNS as a fallback mode
- A DNS change commonly took at least 60 seconds to propagate, which the 2017 launch post equated with thousands of failed requests. Proxied traffic can be rerouted almost instantly; gray-clouded records still get DNS load balancing.
- Health checks from many data centers
- Cloudflare wanted per-data-center decisions: “A network path failure to your origin in London should not impact how we route traffic in New York!”
- A low entry price on every plan
- Traffic Manager was meant for everyone “from those with just two servers in a single region, to those with 400 scattered across the globe”, so it launched at $5 a month rather than as an Enterprise-only feature.
Timeline
- 2016
Traffic Manager announced on September 29 with an Early Access program
- 2017
Enterprise customers start using Load Balancing in March
- 2017
Load Balancing opens to all customers on May 14, from $5 a month
- 2023
Pools can reach private IPs through Cloudflare Tunnel
Sources13 · facts checked 12 October 2026
- Cloudflare Load Balancing docs: Load Balancing components
- Cloudflare Load Balancing docs: Monitors (regions, probe counts, protocols)
- Cloudflare Load Balancing docs: Global traffic steering
- Cloudflare Load Balancing docs: Standard steering (failover and random)
- Cloudflare Load Balancing docs: Geo steering
- Cloudflare Load Balancing docs: Dynamic steering
- Cloudflare Load Balancing docs: Proximity steering
- Cloudflare Load Balancing docs: Least Outstanding Requests steering
- Cloudflare Load Balancing docs: Session affinity
- Cloudflare Load Balancing docs: Proxy status (layer 7 vs DNS-only)
- Cloudflare Load Balancing docs: Limitations
- Cloudflare Load Balancing docs: Enable (an account add-on)
- Cloudflare plans: Load Balancing starting at $5/mo
