Connect with us

News

Google Blames API Mishap for Global Cloud Outage That Disrupted Billions of Requests

Published

on

<p data-start&equals;"222" data-end&equals;"433">A routine quota update turned into a global meltdown Thursday as Google Cloud&&num;8217&semi;s API management system buckled&comma; causing a ripple effect that froze core Google apps and third-party services for over three hours&period;<&sol;p>&NewLine;<p data-start&equals;"435" data-end&equals;"643">From around 10&colon;49 a&period;m&period; ET to 3&colon;49 p&period;m&period; ET&comma; the outage disrupted millions of users and impacted services used by everyone from remote workers and tech startups to social media addicts and enterprise engineers&period;<&sol;p>&NewLine;<h2 data-start&equals;"645" data-end&equals;"705">What Went Wrong&quest; Google&&num;8217&semi;s API Platform Choked on Bad Data<&sol;h2>&NewLine;<p data-start&equals;"707" data-end&equals;"928">Google says the culprit was &OpenCurlyDoubleQuote;invalid automated quota data” that slipped through internal checks and reached global systems&period; That’s a fancy way of saying their API gatekeeper had a data hiccup—and no one caught it in time&period;<&sol;p>&NewLine;<p data-start&equals;"930" data-end&equals;"1258">Only after Google’s engineering team bypassed the faulty quota validation logic did things start returning to normal&period; That workaround got most regions back online within two hours&period; But the us-central1 region &lpar;which covers major data centers in Iowa&rpar; took much longer&comma; with some services stuck in cleanup mode even after the fix&period;<&sol;p>&NewLine;<p data-start&equals;"1260" data-end&equals;"1316">Here&&num;8217&semi;s what Google shared in their preliminary analysis&colon;<&sol;p>&NewLine;<ul data-start&equals;"1318" data-end&equals;"1512">&NewLine;<li data-start&equals;"1318" data-end&equals;"1367">&NewLine;<p data-start&equals;"1320" data-end&equals;"1367">The root cause&colon; a flawed automated quota update<&sol;p>&NewLine;<&sol;li>&NewLine;<li data-start&equals;"1368" data-end&equals;"1436">&NewLine;<p data-start&equals;"1370" data-end&equals;"1436">The symptom&colon; 503 errors when external apps tried using Google APIs<&sol;p>&NewLine;<&sol;li>&NewLine;<li data-start&equals;"1437" data-end&equals;"1512">&NewLine;<p data-start&equals;"1439" data-end&equals;"1512">The domino effect&colon; widespread failure across Google services and partners<&sol;p>&NewLine;<&sol;li>&NewLine;<&sol;ul>&NewLine;<p data-start&equals;"1514" data-end&equals;"1691">For such a tech giant&comma; that kind of single point of failure seems&&num;8230&semi; avoidable&period; But then again&comma; this isn’t the first time an API change has thrown a wrench into a global system&period;<&sol;p>&NewLine;<p data-start&equals;"1514" data-end&equals;"1691"><a href&equals;"https&colon;&sol;&sol;www&period;theibulletin&period;com&sol;wp-content&sol;uploads&sol;2025&sol;06&sol;google-cloud-data-center-outage-incident&period;jpg"><img class&equals;"aligncenter size-full wp-image-57674" src&equals;"https&colon;&sol;&sol;www&period;theibulletin&period;com&sol;wp-content&sol;uploads&sol;2025&sol;06&sol;google-cloud-data-center-outage-incident&period;jpg" alt&equals;"google-cloud-data-center-outage-incident" width&equals;"1046" height&equals;"816" &sol;><&sol;a><&sol;p>&NewLine;<h2 data-start&equals;"1693" data-end&equals;"1747">Who Got Hit the Hardest&quest; It Wasn&&num;8217&semi;t Just Gmail Users<&sol;h2>&NewLine;<p data-start&equals;"1749" data-end&equals;"1917">The list of affected services reads like a who&&num;8217&semi;s who of Google apps&period; Think Gmail&comma; Calendar&comma; Drive&comma; Meet&comma; Docs—basically&comma; most tools the average office leans on daily&period;<&sol;p>&NewLine;<p data-start&equals;"1919" data-end&equals;"2139">But the real damage was seen in third-party platforms that sit on top of Google Cloud infrastructure&period; Apps like Discord&comma; Spotify&comma; and Snapchat all reported issues ranging from slow performance to complete unavailability&period;<&sol;p>&NewLine;<p data-start&equals;"2141" data-end&equals;"2207">For developers and backend engineers&comma; the headache was even worse&colon;<&sol;p>&NewLine;<ul data-start&equals;"2209" data-end&equals;"2447">&NewLine;<li data-start&equals;"2209" data-end&equals;"2285">&NewLine;<p data-start&equals;"2211" data-end&equals;"2285">NPM&comma; a popular JavaScript package manager&comma; struggled to serve code modules<&sol;p>&NewLine;<&sol;li>&NewLine;<li data-start&equals;"2286" data-end&equals;"2369">&NewLine;<p data-start&equals;"2288" data-end&equals;"2369">Firebase Studio&comma; critical for app development and deployment&comma; became inaccessible<&sol;p>&NewLine;<&sol;li>&NewLine;<li data-start&equals;"2370" data-end&equals;"2447">&NewLine;<p data-start&equals;"2372" data-end&equals;"2447">Some Cloudflare services relying on Workers KV sputtered or failed outright<&sol;p>&NewLine;<&sol;li>&NewLine;<&sol;ul>&NewLine;<p data-start&equals;"2449" data-end&equals;"2544">You could almost hear the collective groan of developers from different time zones all at once&period;<&sol;p>&NewLine;<h2 data-start&equals;"2546" data-end&equals;"2595">The Chain Reaction&colon; Cloudflare Takes a Hit Too<&sol;h2>&NewLine;<p data-start&equals;"2597" data-end&equals;"2795">Cloudflare&comma; a key backbone provider for countless websites and apps&comma; also got caught in the blast radius&period; It wasn’t their infrastructure that failed directly—it was their dependency on Google Cloud&period;<&sol;p>&NewLine;<p data-start&equals;"2797" data-end&equals;"3019">The failure hit Workers KV&comma; Cloudflare&&num;8217&semi;s key-value store used for everything from authentication tokens to CDN asset configuration&period; The result&quest; Spikes in error rates&comma; configuration failures&comma; and disrupted service delivery&period;<&sol;p>&NewLine;<p data-start&equals;"3021" data-end&equals;"3151">In a candid post-mortem&comma; Cloudflare clarified the failure wasn&&num;8217&semi;t security-related and no data was lost&period; But they did confirm that&colon;<&sol;p>&NewLine;<p data-start&equals;"3155" data-end&equals;"3289">&OpenCurlyDoubleQuote;The underlying storage infrastructure used by our Workers KV service&comma; backed by a third-party cloud provider&comma; experienced an outage&period;”<&sol;p>&NewLine;<p data-start&equals;"3291" data-end&equals;"3330">Translation&quest; It was Google Cloud again&period;<&sol;p>&NewLine;<h2 data-start&equals;"3332" data-end&equals;"3388">Google Admits Testing and Error Handling Were Lacking<&sol;h2>&NewLine;<p data-start&equals;"3390" data-end&equals;"3600">In an unusual show of transparency&comma; Google admitted that the system didn&&num;8217&semi;t have sufficient safeguards in place to catch the problem early&period; The flawed data update should’ve been flagged in testing—but it wasn’t&period;<&sol;p>&NewLine;<p data-start&equals;"3602" data-end&equals;"3758">That kind of lapse is raising eyebrows across the industry&comma; particularly because of Google Cloud&&num;8217&semi;s positioning as a platform for mission-critical workloads&period;<&sol;p>&NewLine;<p data-start&equals;"3811" data-end&equals;"3868">&OpenCurlyDoubleQuote;We lacked effective testing and error-handling systems&period;”<&sol;p>&NewLine;<p data-start&equals;"3870" data-end&equals;"4018">For a company pushing AI&comma; quantum computing&comma; and enterprise-scale infrastructure&comma; that’s a bit like a pilot admitting they forgot to check the fuel&period;<&sol;p>&NewLine;<h2 data-start&equals;"4020" data-end&equals;"4075">By the Numbers&colon; How Long Did It Last and What Broke&quest;<&sol;h2>&NewLine;<p data-start&equals;"4077" data-end&equals;"4185">Below is a rough breakdown of service impact and duration based on publicly available data and user reports&colon;<&sol;p>&NewLine;<div class&equals;"&lowbar;tableContainer&lowbar;16hzy&lowbar;1">&NewLine;<div class&equals;"&lowbar;tableWrapper&lowbar;16hzy&lowbar;14 group flex w-fit flex-col-reverse" tabindex&equals;"-1">&NewLine;<table class&equals;"w-fit min-w-&lpar;--thread-content-width&rpar;" data-start&equals;"4187" data-end&equals;"4865">&NewLine;<thead data-start&equals;"4187" data-end&equals;"4283">&NewLine;<tr data-start&equals;"4187" data-end&equals;"4283">&NewLine;<th data-start&equals;"4187" data-end&equals;"4213" data-col-size&equals;"sm">Service Affected<&sol;th>&NewLine;<th data-start&equals;"4213" data-end&equals;"4232" data-col-size&equals;"sm">Issue Start &lpar;ET&rpar;<&sol;th>&NewLine;<th data-start&equals;"4232" data-end&equals;"4251" data-col-size&equals;"sm">Partial Recovery<&sol;th>&NewLine;<th data-start&equals;"4251" data-end&equals;"4267" data-col-size&equals;"sm">Full Recovery<&sol;th>&NewLine;<th data-start&equals;"4267" data-end&equals;"4283" data-col-size&equals;"sm">Duration<&sol;th>&NewLine;<&sol;tr>&NewLine;<&sol;thead>&NewLine;<tbody data-start&equals;"4381" data-end&equals;"4865">&NewLine;<tr data-start&equals;"4381" data-end&equals;"4477">&NewLine;<td data-start&equals;"4381" data-end&equals;"4407" data-col-size&equals;"sm">Gmail<&sol;td>&NewLine;<td data-start&equals;"4407" data-end&equals;"4426" data-col-size&equals;"sm">10&colon;49 AM<&sol;td>&NewLine;<td data-start&equals;"4426" data-end&equals;"4445" data-col-size&equals;"sm">~12&colon;30 PM<&sol;td>&NewLine;<td data-start&equals;"4445" data-end&equals;"4461" data-col-size&equals;"sm">3&colon;49 PM<&sol;td>&NewLine;<td data-start&equals;"4461" data-end&equals;"4477" data-col-size&equals;"sm">~5 hours<&sol;td>&NewLine;<&sol;tr>&NewLine;<tr data-start&equals;"4478" data-end&equals;"4574">&NewLine;<td data-start&equals;"4478" data-end&equals;"4504" data-col-size&equals;"sm">Google Drive<&sol;td>&NewLine;<td data-start&equals;"4504" data-end&equals;"4523" data-col-size&equals;"sm">11&colon;00 AM<&sol;td>&NewLine;<td data-start&equals;"4523" data-end&equals;"4542" data-col-size&equals;"sm">~12&colon;45 PM<&sol;td>&NewLine;<td data-start&equals;"4542" data-end&equals;"4558" data-col-size&equals;"sm">3&colon;49 PM<&sol;td>&NewLine;<td data-start&equals;"4558" data-end&equals;"4574" data-col-size&equals;"sm">~4&period;5 hours<&sol;td>&NewLine;<&sol;tr>&NewLine;<tr data-start&equals;"4575" data-end&equals;"4671">&NewLine;<td data-start&equals;"4575" data-end&equals;"4601" data-col-size&equals;"sm">Firebase<&sol;td>&NewLine;<td data-start&equals;"4601" data-end&equals;"4620" data-col-size&equals;"sm">10&colon;55 AM<&sol;td>&NewLine;<td data-start&equals;"4620" data-end&equals;"4639" data-col-size&equals;"sm">~12&colon;40 PM<&sol;td>&NewLine;<td data-start&equals;"4639" data-end&equals;"4655" data-col-size&equals;"sm">3&colon;30 PM<&sol;td>&NewLine;<td data-start&equals;"4655" data-end&equals;"4671" data-col-size&equals;"sm">~4&period;5 hours<&sol;td>&NewLine;<&sol;tr>&NewLine;<tr data-start&equals;"4672" data-end&equals;"4768">&NewLine;<td data-start&equals;"4672" data-end&equals;"4698" data-col-size&equals;"sm">Cloudflare Workers KV<&sol;td>&NewLine;<td data-start&equals;"4698" data-end&equals;"4717" data-col-size&equals;"sm">11&colon;15 AM<&sol;td>&NewLine;<td data-start&equals;"4717" data-end&equals;"4736" data-col-size&equals;"sm">~1&colon;15 PM<&sol;td>&NewLine;<td data-start&equals;"4736" data-end&equals;"4752" data-col-size&equals;"sm">4&colon;00 PM<&sol;td>&NewLine;<td data-start&equals;"4752" data-end&equals;"4768" data-col-size&equals;"sm">~5 hours<&sol;td>&NewLine;<&sol;tr>&NewLine;<tr data-start&equals;"4769" data-end&equals;"4865">&NewLine;<td data-start&equals;"4769" data-end&equals;"4795" data-col-size&equals;"sm">Spotify &sol; Snapchat<&sol;td>&NewLine;<td data-start&equals;"4795" data-end&equals;"4814" data-col-size&equals;"sm">11&colon;30 AM<&sol;td>&NewLine;<td data-start&equals;"4814" data-end&equals;"4833" data-col-size&equals;"sm">~2&colon;00 PM<&sol;td>&NewLine;<td data-start&equals;"4833" data-end&equals;"4849" data-col-size&equals;"sm">4&colon;00 PM<&sol;td>&NewLine;<td data-start&equals;"4849" data-end&equals;"4865" data-col-size&equals;"sm">~4&period;5 hours<&sol;td>&NewLine;<&sol;tr>&NewLine;<&sol;tbody>&NewLine;<&sol;table>&NewLine;<div class&equals;"sticky end-&lpar;--thread-content-margin&rpar; h-0 self-end select-none">&NewLine;<div class&equals;"absolute end-0 flex items-end"><&sol;div>&NewLine;<&sol;div>&NewLine;<&sol;div>&NewLine;<&sol;div>&NewLine;<p data-start&equals;"4867" data-end&equals;"4977">It’s worth noting that not all users were hit equally&period; Some services were spotty&semi; others were totally offline&period;<&sol;p>&NewLine;<h2 data-start&equals;"4979" data-end&equals;"5024">Fallout and Fixes&colon; Will This Happen Again&quest;<&sol;h2>&NewLine;<p data-start&equals;"5026" data-end&equals;"5240">Google is still preparing a full incident report&period; But they’ve already pledged changes&period; That includes more robust data validation&comma; better internal testing&comma; and presumably more human oversight on system-wide updates&period;<&sol;p>&NewLine;<p data-start&equals;"5242" data-end&equals;"5463">Cloudflare&comma; for its part&comma; has already taken action&period; They&&num;8217&semi;re moving the core of their KV store to their own R2 object storage solution&period; It’s a long-term play to reduce dependency on third-party providers like Google Cloud&period;<&sol;p>&NewLine;<p data-start&equals;"5465" data-end&equals;"5611">As one engineer half-jokingly put it on X &lpar;formerly Twitter&rpar;&comma; &OpenCurlyDoubleQuote;If one quota update can break the internet&comma; maybe we’ve over-optimized just a bit&period;”<&sol;p>&NewLine;

Hayden Patrick is a writer who specializes in entertainment and sports. He is passionate about movies, music, games, and sports, and he shares his opinions and reviews on these topics. He also writes on other topics when there is no one available, such as health, education, business, and more.

Click to comment

Leave a Reply

Your email address will not be published. Required fields are marked *

TRENDING