Skip to main content
gcpdown
criticalCloud Load BalancingGlobal

The November 2021 Google Cloud Load Balancer Outage: A Config Race Condition

GCPDown Research · Incident analysisPublished November 19, 2021Updated June 20, 20267 min read

Timeline

  1. Impact begins

    A configuration change propagating through Google Cloud’s external HTTP(S) load balancing fleet is corrupted by a race condition. Requests to affected sites start returning 404 Not Found errors despite the origin backends being healthy.

  2. Investigating

    Google acknowledges elevated errors for Cloud Load Balancing and Cloud CDN. Widespread reports of 404s from major consumer sites accumulate as the bad config reaches more of the edge.

  3. Identified

    The corrupt configuration and the race condition that produced it are identified. Engineers begin rolling back to the last-known-good configuration across the fleet.

  4. Mitigating

    The rollback propagates through the load-balancing fleet and error rates fall as edge nodes pick up the good configuration.

  5. Resolved

    Cloud Load Balancing returns to normal globally and 404 rates return to baseline.

Root cause

Google Cloud Load Balancing is a global product - a single anycast front end distributes traffic to backends anywhere in the world - which is exactly what makes it powerful and what made this incident global. The configuration that tells the load balancer how to route requests is generated and propagated through a pipeline, and on November 16 a race condition in that pipeline produced a corrupt configuration that was pushed to the fleet. With bad routing config, the load balancer couldn't match incoming requests to their backend services and returned 404 Not Found - for traffic it never forwarded to origins that were perfectly healthy.

This is the signature failure mode of global control planes: the data plane (your servers) is fine, but the global layer that fronts it has failed, so from the user's perspective everything is down. There is nothing you can do at the origin to fix a load-balancer config problem.

Business impact

Because GCLB fronts a large share of the web's high-traffic properties, the casualty list read like a consumer-internet roll call: Spotify, Home Depot, Snap, and many more served 404s simultaneously. For each of them, dashboards showed healthy backends and zero origin errors - because the requests were dying at Google's edge, never reaching the origin. That disconnect makes these incidents especially disorienting to diagnose from inside the affected company.

Prevention and lessons

  1. Config changes need the same rigor as code deploys. A race condition in a propagation pipeline is a software defect in disguise. Staged rollout, validation of generated config before push, and fast automated rollback are the controls that turn a two-hour global event into a one-region blip.
  2. Understand what "global product" means for your blast radius. GCLB, Cloud DNS, and Service Control are global by design - being multi-region does not protect you from them. Our multi-region GCP guide covers which products are global and how to reason about the coupling.
  3. Have an out-of-band health signal. When your own dashboards show green backends but users report outages, an external check (outage alerts from outside your infrastructure) is what tells you the problem is the edge, not you.
  4. Watch Cloud Load Balancing status directly during "everything is 404ing but our servers are fine" incidents - it's the fastest way to confirm the fault is Google's edge.

SLA credit eligibility

Yes for affected workloads - the load balancer failing to route traffic counts as unavailability. Roughly two hours of impact is claimable at the 10% tier with evidence against the Cloud Load Balancing SLA. Google requires notice within 30 days and caps credits at 50%.

Work out what your bill was owed with the independent Google Cloud SLA credit calculator, or automate breach detection with Next Signal (sponsor). For the full claim process, see the Google Cloud credit-recovery playbook.

Questions about this outage

What caused the November 2021 Google Cloud outage?

A race condition in the configuration-propagation pipeline for Google Cloud Load Balancer produced a corrupt configuration that was pushed to the global load-balancing fleet. Requests to sites behind GCLB returned 404 errors even though their backends were healthy, until the configuration was rolled back.

Which sites went down in the November 2021 GCLB outage?

Because Google Cloud Load Balancer fronts a large share of high-traffic sites, the visible impact included Spotify, Home Depot, Snap, and many others - all serving 404s to users despite their own servers being up.

Why did healthy backends still return 404s?

The fault was in the load balancer’s edge configuration, not the origins. A corrupt config meant the load balancer could not map incoming requests to the correct backend service, so it returned 404 - the backends never even received the traffic.

Next time, hear it from us first

Instant alerts when Google Cloud incidents are detected - services and regions included.

Get outage alerts

More post-mortems

Cloud IAM

The June 2025 Google Cloud Global Outage: How Service Control Crash-Looped

A policy update containing unintended blank fields reached a code path in Service Control - the global layer that checks quota and policy on nearly every Google Cloud API call - that had a null-pointer defect and no feature-flag protection. Service Control crash-looped globally, returning 503s across dozens of products for roughly three hours; us-central1 took longest to recover due to a retry herd.

Virtual Private Cloud

The June 2019 Google Cloud Network Congestion Event

A routine maintenance configuration change was applied to a far wider scope than intended, descheduling the network control-plane jobs in several US regions. The network fell back to preserving only high-priority traffic (like the control plane’s own signaling) while starving everything else, so Compute Engine, YouTube, Gmail, and Snapchat degraded severely for about four hours - worst in the US East.

Cloud Storage

The March 2019 Google Cloud Storage Outage: An Internal Blob Failure

Degradation in an internal blob-storage service that underpins Google Cloud Storage caused elevated error rates and latency for GCS operations, and for Google’s own products that store objects on the same layer - Gmail and Photos attachments among them - for roughly four hours.