Skip to content

Every major cloud outage since 2020, sourced and searchable.

The provider's own stated times, root causes, and post-mortems for 62 major incidents. Explore the timeline, see what actually causes outages, and estimate what the next one would cost you.

Last updated · Sources linked on every incident

major outages tracked since January 2020

62

median outage duration

6h 12m

caused by changes and code, not hardware

55%

days two AWS regions have been disrupted (UAE and Bahrain)

239

Six years of outages at a glance

Each circle is one outage, sized by how long it lasted and colored by its root cause. Hover for details, click to open the full record.

Timeline of cloud outages by provider2020202120222023202420252026AWS14 incidentsAzure20 incidentsGoogle Cloud12 incidentsCloudflare16 incidentsTODAY
  • Config change
  • Software bug
  • Power or cooling
  • Network
  • Capacity
  • Physical damage
  • DNS
  • Third-party
  • Not stated
  • Circle size = duration · dashed = duration not stated · bar = ongoing

Most outages start with a change

Configuration pushes, deployments, and automation acting on bad input cause more major outages than power, hardware, or attacks. Click a cause to filter the timeline.

55% of major outages came from configuration changes or software and automation, versus 18% from power and cooling. Physical events are rarer but tend to last longer.

By provider · median duration

  • AWS 14 incidents

    7h 34m

    median duration

    2020: 1, 2021: 5, 2022: 0, 2023: 1, 2024: 1, 2025: 2, 2026: 4
  • Azure 20 incidents

    8h 17m

    median duration

    2020: 1, 2021: 3, 2022: 0, 2023: 2, 2024: 4, 2025: 4, 2026: 6
  • Google Cloud 12 incidents

    7h 27m

    median duration

    2020: 1, 2021: 1, 2022: 1, 2023: 1, 2024: 2, 2025: 2, 2026: 4
  • Cloudflare 16 incidents

    1h 15m

    median duration

    2020: 1, 2021: 0, 2022: 1, 2023: 2, 2024: 0, 2025: 8, 2026: 4

Counts reflect what each provider documents publicly, not a reliability ranking. Microsoft publishes reviews for more incidents than the others, so this tracker includes Azure's 20 broadest.

When it stays down

The longest outages in this tracker, measured from first customer impact to the last service back to normal. Two are still open.

  1. AWS · me-central-1 (UAE) Mar 1, 2026 · Physical damage
    239 days, ongoing
  2. AWS · me-south-1 (Bahrain) Mar 2, 2026 · Physical damage
    238 days, ongoing
  3. Azure · East US 2 Jan 8-11, 2025 · Configuration or deployment change
    50h 13m
  4. Cloudflare · Hillsboro, Oregon (control plane) Nov 2-4, 2023 · Power or cooling
    40h 42m
  5. Google Cloud · europe-west2 (London) Jul 19-20, 2022 · Power or cooling
    38h 47m
  6. Azure · Southeast Asia, East Asia Feb 7-9, 2023 · Power or cooling
    32h 11m
  7. Google Cloud · europe-west9 (Paris) Apr 25-26, 2023 · Physical damage
    27h 14m
  8. Azure · Central US Jul 18-19, 2024 · Configuration or deployment change
    24h 20m
  9. Azure · West US 2 May 29-30, 2026 · Power or cooling
    22h 06m
  10. Azure · Switzerland North Sep 26-27, 2025 · Configuration or deployment change
    22h 05m
  11. AWS · us-east-1 (N. Virginia), one AZ May 7-8, 2026 · Power or cooling
    21h 30m
  12. Azure · West US Feb 7-8, 2026 · Power or cooling
    20h 26m

What would the next outage cost you?

Plug in your numbers, or replay a real outage's duration against your business.

3h 00m
80%
50%
12
150

Estimated cost of this outage

$50,619

$281 per minute over 3h 00m

  • Lost revenue$6,849
  • Engineers responding$4,320
  • Idle employees$9,450
  • SLA credits$30,000

The median major outage in this tracker lasted 6h 12m. Try replaying one from the list.

Formula: lost revenue (revenue per minute × share affected × share lost) + response staff + idle employees, per minute, times outage minutes, plus SLA credits. Assumes $120/hour fully loaded for engineers and $70/hour for other staff at 30% lost productivity. Excludes churn, brand damage, and regulatory penalties.

All 62 incidents

Click any column to sort, any row to open the record. Uses the same filters as the timeline.

Showing 62 of 62 incidents

AffectedSource
europe-west2 (London)7h 52mPower or cooling: Google cites a power event in one London zone; a full analysis has not yet been published.Compute Engine, GKE, Cloud Run, Cloud SQL, Spanner, BigQueryStatus page
Global (Cloudflare One)3h 12m (status page window)Not stated: No post-mortem yet; the status page cites a Gateway traffic issue when identity policies are evaluated.Cloudflare One Gateway, Access logins, Access API, dashboardStatus page
Multiple regions5h 45mConfiguration or deployment change: Paused gateway OS updates resumed at once while a recent change slowed config processing, overloading the regional networking control plane.ExpressRoute, App Gateway, Firewall, Bastion, VPN Gateway, Virtual WANPost-mortem
us-central1 (Iowa)4h 11mNetwork: A procedural error during a router upgrade unplugged every fiber path in a datacenter, isolating its compute from the network.Compute Engine, GKE, Cloud SQL, AlloyDB, Apigee, Cloud RunPost-mortem
us-west1 (Oregon)2h 22mNetwork: Planned fiber maintenance cut inter-datacenter capacity, rerouting failed, and congestion cascaded into Spanner and metadata latency.Persistent Disk, GKE, Compute Engine, Cloud Run, Bigtable, IAMPost-mortem
West US4h 57mSoftware bug or automation: A defect in automated repair tooling widened one optical-device repair to every optical device leaving a datacenter.Traffic in and out of West US; App Service, AKS, Cosmos DBPost-mortem
europe-west4 (Netherlands)14h 55mPower or cooling: A brief utility voltage drop tripped both power feeds, a backup unit failed, and a cooling failure followed.Google Cloud VMware Engine, Bare Metal Solution, NetApp VolumesPost-mortem
West US 222h 06mPower or cooling: Lightning-driven voltage swings locked out cooling systems, and rising heat forced infrastructure shutdowns across two zones.Compute, networking, storage and dependent servicesPost-mortem
us-east-1 (N. Virginia), one AZ21h 30m to majority recoveryPower or cooling: A thermal event in one data center caused power loss, and servers shut down automatically when temperatures passed safe limits.EC2, EBS, ELB, EKS, ElastiCache, Redshift, MSK, NAT GatewayStatus page
East US11h 52mSoftware bug or automation: Lock contention in one partition of the networking control-plane service spread across zones as demand shifted.VM, Azure Virtual Desktop provisioning, scaling and updatesPost-mortem
me-south-1 (Bahrain)238 days, ongoingPhysical damage: A drone strike near an AWS facility caused physical and power damage that later spread across multiple AZs.Region-wide (149 services); region declared unavailableStatus page
me-central-1 (UAE)239 days, ongoingPhysical damage: Drone strikes hit two AWS facilities, causing structural, power, fire and water damage; AWS says some AZ data cannot be restored.Region-wide: EC2, EBS, RDS, S3, DynamoDB, Lambda, ConsoleStatus page
Global (BYOIP customers)5h 07m (Cloudflare's summary says 6h 07m)Configuration or deployment change: A broken sub-process in an Addressing API release withdrew about 1,100 customer BYOIP prefixes via BGP.BYOIP customer services, 1.1.1.1 websitePost-mortem
Global (CloudFront edge)1h 35m DNS errors (configuration propagation delays to 7h 48m)DNS: A faulty fleet of CloudFront DNS servers returned NXDOMAIN errors until AWS removed it from service.CloudFront DNS and config propagation, API Gateway, AppSyncStatus page
West US20h 26mPower or cooling: A transformer failure cut utility power and a control-system fault blocked the generator switch, draining UPS batteries.Storage, compute and networking in West USPost-mortem
Multiple regions~6h 27mSoftware bug or automation: A policy remediation wrongly disabled anonymous access on Microsoft storage accounts that hold VM extension packages.VMs, VM Scale Sets, AKS, Managed IdentitiesPost-mortem
Miami (IPv6)25mSoftware bug or automation: A routing-policy automation bug on a Miami router leaked peer routes to other peers and providers.IPv6 traffic through MiamiPost-mortem
Global (1.1.1.1 resolver)Not statedConfiguration or deployment change: A memory-saving cache change moved CNAME records to the end of DNS answers, breaking clients that expect them first.1.1.1.1 resolution for some DNS clientsPost-mortem
Global (about 28% of HTTP traffic)25mConfiguration or deployment change: A WAF change to mitigate a React vulnerability hit a Lua nil-value bug in the older proxy.Proxied HTTP traffic, dashboard, APIPost-mortem
Global5h 46m (core traffic restored in 3h 10m)Configuration or deployment change: A database permissions change doubled the Bot Management feature file past a size limit, crashing traffic-routing software network-wide.Core CDN and proxy, Workers KV, Access, Turnstile, dashboardPost-mortem
Global8h 24mConfiguration or deployment change: Customer config changes across two control-plane versions produced incompatible metadata that crashed Front Door edge servers worldwide.Front Door, CDN, Portal, App Service, Entra ID, Microsoft 365Post-mortem
us-east-1 (N. Virginia)13h 43mNot stated: AWS did not state a cause; it reported higher EC2 launch latency in one AZ and impaired ECS cells.EC2 launches, ECS, Fargate, EMR Serverless, EKS, Glue, BatchStatus page
us-east-1 (N. Virginia)14h 32mDNS: A latent race condition in DynamoDB's automated DNS management left the regional endpoint with an empty DNS record that automation could not repair.DynamoDB, EC2 launches, NLB, Lambda, ECS/EKS, STS, IAM sign-inPost-mortem
Africa, Europe, APAC, Middle East8h 10m (availability restored in 5h 00m)Configuration or deployment change: During a manual cleanup of bad Front Door metadata, engineers bypassed the protection layer and the metadata reached edge servers.Front Door, CDN, Azure Portal, management portalsPost-mortem
Switzerland North22h 05m (many customers back in 4h 06m)Configuration or deployment change: A malformed certificate in a load balancer config change was pushed to all zones at once through an expedited path.Storage, VMs, App Service, API Management, Cosmos DB, RedisPost-mortem
Global (control plane)1h 15mSoftware bug or automation: A dashboard bug flooded the Tenant Service API during its redeploy, breaking API authorization.Cloudflare dashboard and many APIsPost-mortem
Links to AWS us-east-13h 51m including lingering latency (core 3h 11m)Capacity or overload: One customer's request surge from AWS us-east-1 saturated Cloudflare's direct links to that region.Traffic to and from origins in AWS us-east-1Post-mortem
Global (1.1.1.1 resolver)1h 02mConfiguration or deployment change: A misconfiguration in legacy service-topology systems withdrew the 1.1.1.1 prefixes from the Internet.1.1.1.1 public DNS resolver, Gateway DNSPost-mortem
Global7h 27m (core API errors 3h 00m)Configuration or deployment change: A policy change with blank fields replicated globally and hit an unguarded null-pointer path in new quota code, crash-looping API management.IAM, Compute Engine, Cloud Storage, BigQuery, Cloud Run, WorkspacePost-mortem
Global2h 36m (Cloudflare's summary says 2h 28m)Third-party dependency: Workers KV's storage backend, partly hosted on a third-party cloud provider, failed when that provider had an outage.Workers KV, WARP, Access, Gateway, Images, Stream, TurnstilePost-mortem
us-east5 (Columbus)About 6h (per The Register)Power or cooling: Utility power was lost and UPS batteries failed, so engineers bypassed the UPS to restore generator power.20+ Google Cloud services in one zoneNews report
Global1h 07mConfiguration or deployment change: During a credential rotation, new R2 credentials went to a dev instance and the old ones were deleted.R2 writes and reads, dependent servicesPost-mortem
Global59mConfiguration or deployment change: While handling a phishing report, an operator disabled the production R2 Gateway service instead of a single bucket.R2, Stream, Images, Cache Reserve, Vectorize, Log DeliveryPost-mortem
East US 250h 13mConfiguration or deployment change: While enabling a feature, networking PubSub replicas were recycled in parallel, breaking quorum and losing index data.VMs, Private Link, Databricks, App Service, SQLPost-mortem
About 34 regions11h 40mSoftware bug or automation: A decommissioning job deleted Traffic Manager profiles for live storage accounts because subscription ownership was misassigned.Blob Storage, Data Lake Storage, Container Registry, DatabricksPost-mortem
europe-west3 (Frankfurt)12h 39mPower or cooling: A power failure and cooling problem forced parts of one Frankfurt zone to power down.Compute Engine, GKE, Persistent Disk, Dataflow, Pub/Sub, Vertex AINews report
us-east-1 (N. Virginia)6h 52mSoftware bug or automation: A new Kinesis cell-management system mishandled a cell with many low-throughput shards, marking healthy hosts unhealthy and overloading connection provisioning.Kinesis, CloudWatch Logs, Firehose, S3 events, ECS, Lambda, RedshiftPost-mortem
Global (multiple regions)7h 58m (main impact 2h 13m)Network: After a DDoS mitigation, a site power issue and latent network misconfiguration routed traffic through congested European scrubbing systems.Front Door, CDN, Azure Portal, parts of Microsoft 365Post-mortem
Central US24h 20m (storage fixed in 5h 15m)Configuration or deployment change: An incomplete storage allow list was published region-wide, so storage rejected disk I/O from many VM hosts.VMs, SQL, Cosmos DB, Entra ID, AKS, Microsoft 365Post-mortem
Australia (single customer, GCVE)Not stated (about a week, per The Register)Configuration or deployment change: A misconfiguration during provisioning of UniSuper's private cloud triggered an unknown bug that deleted it, per Google.One customer's Google Cloud VMware Engine private cloudNews report
Multiple regions7h 28mSoftware bug or automation: A latent bug in an old Azure Resource Manager preview feature crashed ARM nodes on startup after an internal config change.Azure Resource Manager, CLI, PowerShell, PortalPost-mortem
Hillsboro, Oregon (control plane)40h 42m (most control plane back in 6h 14m)Power or cooling: Utility problems, a ground fault and generator failures cut power to a data center hosting control-plane services not in the HA cluster.Dashboard, API, Logpush, analytics, Workers API, Zero TrustPost-mortem
Global37mSoftware bug or automation: A bug in a new Workers KV deployment tool sent production traffic to a staging build, returning errors to dependent services.Workers KV, Pages, Access, Gateway, WARP, dashboardPost-mortem
us-east-1 (N. Virginia)3h 48mSoftware bug or automation: Lambda Frontend scaling crossed a never-reached capacity threshold in one cell, triggering a latent defect that left execution environments unused.Lambda, STS, AWS Sign-in, EventBridge, EKS, Console, ConnectPost-mortem
europe-west9 (Paris)27h 14mPhysical damage: A cooling water leak flooded a UPS room and started a fire, and the building shutdown took the region's control plane down.Compute Engine, GKE, Cloud SQL, Spanner, IAM, BigQuery, ConsolePost-mortem
Southeast Asia, East Asia32h 11mPower or cooling: A voltage dip tripped chillers in one zone, forcing shutdowns, and regional failover and ARM dependencies also failed.Many services in both regions, ARM, SQL DatabasePost-mortem
Global (WAN)5h 35m (most regions back in 1h 57m)Configuration or deployment change: An untested router command, on one vendor's hardware, forced every WAN router to recompute routing at once.Connectivity to all regions, Microsoft 365, Azure GovernmentPost-mortem
europe-west2 (London)38h 47mPower or cooling: Redundant cooling systems failed together during record UK heat, so Google powered down part of a zone.Compute Engine, Persistent Disk, Cloud Storage, zonal servicesPost-mortem
19 busiest data centers1h 15mConfiguration or deployment change: A BGP policy change with reordered terms withdrew critical prefixes in the newest data center architecture.All proxied traffic through 19 locationsPost-mortem
us-east-1 (N. Virginia), one AZNot stated (power restored after 1h 04m)Power or cooling: A power outage hit one Availability Zone, and some hardware could not be recovered.EC2, EBSNews report
Global1h 25mConfiguration or deployment change: An OS update made a backend Azure AD auth service unresponsive, and a circuit-breaker bug spread the failure.Azure AD sign-in for Microsoft 365, Dynamics 365, AzurePost-mortem
us-west-1, us-west-245mNetwork: AWS traffic engineering moved too much traffic onto parts of its backbone, congesting links to some ISPs.Internet connectivity to a subset of destinationsNews report
us-east-1 (N. Virginia)11h 10m to last service (core 6h 52m)Capacity or overload: An automated scaling activity caused a connection surge that overwhelmed devices linking AWS's internal network to its main network.EC2 APIs, Route 53 APIs, Console, STS, API Gateway, EventBridge, ECSPost-mortem
Global1h 54mSoftware bug or automation: A latent race-condition bug in the config pipeline pushed a corrupted configuration file to Cloud Load Balancing.Cloud Load Balancing, Cloud Run, App Engine, Cloud Functions, FirebasePost-mortem
us-east-1 (N. Virginia), one AZ7h 34mCapacity or overload: Resource contention degraded the EBS subsystem that coordinates storage hosts, leaving I/O stuck.EBS, EC2, Redshift, OpenSearch, ElastiCache, RDSNews report
ap-northeast-1 (Tokyo)6h 12mSoftware bug or automation: A latent network-device OS bug, triggered by a specific customer packet pattern, made devices in one Direct Connect layer fail.AWS Direct Connect into TokyoPost-mortem
Global1h 09m to most services (DNS resolution core 39m)DNS: A global DNS query surge exposed a code defect in Azure DNS edge caches, and client retries added load.Azure DNS, Azure and Microsoft services globallyPost-mortem
Global14h 37m (Azure AD fixed in 2h 05m)Software bug or automation: Key-cleanup automation ignored a retain flag and removed an Azure AD signing key still in use.Azure AD for Microsoft 365, Teams, Xbox Live, AzurePost-mortem
Global47mSoftware bug or automation: An automated quota system cut the authentication service's storage quota to near zero after an incomplete migration reported zero usage.Google account sign-in, OAuth, all services needing authenticationPost-mortem
us-east-1 (N. Virginia)17h 08mCapacity or overload: Added Kinesis front-end capacity pushed every server past an OS thread limit, so servers could not build shard maps or route requests.Kinesis, Cognito, CloudWatch, Lambda, EventBridge, ECS, EKSPost-mortem
GlobalAbout 5h 00m including tail (core about 2h 58m)Configuration or deployment change: A defect in Azure AD's safe-deployment system sent a crashing update straight to production.Azure AD and AD B2C authenticationPost-mortem
20 backbone locations27mConfiguration or deployment change: A one-line router config change in Atlanta leaked BGP routes and pulled all backbone traffic to Atlanta, overloading it.CDN, proxy and all services in affected locationsPost-mortem

What these outages have in common

An application running in one region, or depending on services anchored in one region, goes down with it.

Staying online

  • Run active-active

    A warm standby that never serves real traffic is untested until the outage.

  • Find hidden dependencies

    Identity, DNS, secrets, CI/CD, and observability often live in one region even when the app doesn't.

  • Plan the data layer

    Choose replication per service based on how much inconsistency it can tolerate.

  • Route by health

    Use health-checked global routing instead of manual DNS changes, with limits on how much capacity automation can remove.

FAQ

This tracker documents 62 major outages at AWS, Microsoft Azure, Google Cloud, and Cloudflare from January 2020 to October 23, 2026: 14 at AWS, 20 at Azure, 12 at Google Cloud, and 16 at Cloudflare. 16 happened in 2025 and 18 so far in 2026. Counts reflect what each provider documents publicly, so they are not a reliability ranking.

Methodology

Major incidents at AWS, Microsoft Azure, Google Cloud, and Cloudflare from January 1, 2020. Sources: AWS Post-Event Summaries and Health Dashboard history, Azure Post Incident Reviews, Google Cloud incident reports, and Cloudflare post-mortems; where none exists, a credible news report, marked as such. Durations come from each provider's own start and end times and measure the full event window, with the core fault in parentheses. Root causes are paraphrased from the provider's report. Recent years are better documented because some status histories keep a limited window. Downtime figures are from the publishers named. Published by Control Plane.

Inclusion rule: major, customer-facing outages documented by the provider. Latency or degraded performance in a small area isn't included.

Cite this data: Control Plane, "Cloud Outage Tracker," updated October 23, 2026, https://controlplane.com/cloud-outage-tracker.

Run Unbreakable
Apps and Agents

Sign up free. No cloud accounts required.