Every source behind this page, graded. Filter by kind.
Collection note for honesty's sake: this guide was researched from a build container
whose network policy allowed direct fetches only to anthropic.com and GitHub's raw file
and git endpoints. The Anthropic postmortem was read in full; LiteLLM, Envoy AI Gateway
and BricksLLM were read from complete local clones; every other source below was read
through server-side search extraction rather than a direct page fetch, and quotes from
those sources are reproduced as the extraction returned them. The ledger shipped beside
this page (sources.md) marks which is which, row by row.
Postmortem
Anthropic2025-09-17
A postmortem of three recent issues
The fullest public account of a provider degrading without erroring: three overlapping
infrastructure bugs, a routine load-balancing change as amplifier, sticky routing
concentrating harm, and the provider's own evals missing what users reported.
Carry forward Everything your failover triggers on stayed
green for a month; quality failure needs its own detector.
anthropic.com/engineering/a-postmortem-of-three-recent-issues
Postmortem
OpenAI2024-12-12
API, ChatGPT & Sora facing issues: root-cause write-up
A telemetry deployment overwhelmed Kubernetes control planes in the largest clusters;
DNS caching deferred the symptom until the rollout was everywhere. All services down
or degraded for about four and a half hours.
Carry forward One provider is one failure domain; its
internal redundancy is not your redundancy.
status.openai.com/incidents/ctrsv3lwd797
Postmortem
OpenRouter2026-02
OpenRouter outages on February 17 and 19, 2026
The gateway's key-lookup cache failed twice; recovery stampeded the database; auth
timeouts reached customers as 401s. The DoS attack blamed on day one was exonerated by
the recurrence on day three.
Carry forward Audit which auxiliary dependencies sit on your
gateway's request path, and what error code their failure wears.
openrouter.ai/announcements/openrouter-outages-on-february-17-and-19-2026
Postmortem
Anthropic status2025-07
Elevated 529 errors on Sonnet 4
A status-history entry documenting the 529 overload code as a live, recurring
provider signal, distinct from the per-customer 429. Cited here because 529 is exactly
the code Portkey found missing from customers' fallback triggers.
Carry forward Build the trigger set from each provider's
actual error vocabulary, not from the HTTP RFC.
status.anthropic.com/incidents/tm5t7t243nvx
Source
BerriAI / LiteLLM2026-10 head
router_utils/cooldown_handlers.py and constants.py
The most widely deployed open implementation of the failover decision, read at commit
5338edb7: 5-second default cooldown, 50% failure threshold over a 5-request minimum,
immediate cooldown on 429, and an explicit exemption for single-deployment groups.
Carry forward Never open a breaker in front of the only
backend; the exemption is in the defaults because people got this wrong.
github.com/BerriAI/litellm/.../cooldown_handlers.py
Source
BerriAI / LiteLLM2024-08
PR #5358: refactor cooldown logic to CooldownCache
The argument in code form: cooldowns moved to per-model granularity, and router
retry-after fixed to honour the provider's own numbers instead of a local guess.
Carry forward Breaker granularity and retry timing both
belong to the provider's semantics, not the gateway's convenience.
github.com/BerriAI/litellm/pull/5358
ADR
Envoy AI Gateway2024
Proposal 001: founding design
The requirements document for the category, written by Bloomberg and Tetrate
engineers: unified API across providers, upstream credential management, and token-based
rate limiting called out as the extension Envoy itself lacked.
Carry forward If the unit of your rate limiter is requests,
you have not built an LLM gateway yet.
github.com/envoyproxy/ai-gateway/.../001-ai-gateway-proposal
ADR
Envoy AI Gateway2026
Proposal 009: quota-aware routing
Reserved-capacity-first routing: send traffic to provisioned-throughput pools while
quota remains, overflow to on-demand, return 429 only when every candidate is
exhausted; actual usage charged on a stream-done callback.
Carry forward Pre-flight checks see only input tokens;
budget enforcement at this layer is always one generation behind.
github.com/envoyproxy/ai-gateway/.../009-quota-aware-routing
ADR
Envoy AI Gateway2025
Proposal 005: original model tracking
When the gateway rewrites model names, metrics lose what the client asked for; the
proposal adds an OriginalModel dimension so usage aggregates by requested and served
model separately.
Carry forward Every rewrite the gateway performs must be
recorded twice: what was asked, what was done.
github.com/envoyproxy/ai-gateway/.../005-original-model
Eng blog
Uber2024-07-11
Navigating the LLM landscape: Uber's GenAI Gateway
A Go service wrapping vendor clients and in-house serving behind one OpenAI-style
API, with PII redaction, caching and auth. Unusually honest about the limit: gateway
availability is tied to vendor status, and redaction fights caching.
Carry forward The gateway centralises policy; it does not
by itself add a single nine.
uber.com/blog/genai-gateway
Eng blog
InfoQ2024-09
Uber builds GenAI gateway mirroring OpenAI API
Secondary coverage carrying the numbers Uber's post does not: about 30 teams, about
16 million queries a month, and the reasoning behind adopting the OpenAI dialect.
Carry forward Adoption, not architecture, is the gateway's
success metric; the dialect decision drives adoption.
infoq.com/news/2024/09/uber-genai-gateway-llm-openai
Eng blog
Grabn.d., checked 2026-10
Grab AI Gateway: connecting Grabbers to multiple GenAI providers
One reverse proxy before OpenAI, Azure, Bedrock and Vertex; short-lived exploration
keys issued by Slack bot against long-term service keys; per-request cost computed at
response time and archived with an audit trail.
Carry forward Make experimentation keys cheap to get and
quick to die; key lifecycle is the real access-control surface.
engineering.grab.com/grab-ai-gateway
Eng blog
Wealthsimple2023
Get to know our LLM Gateway
A regulated-finance build whose first justifications were audit and reliability, with
retries and fallbacks in the programmatic API; 72,000 requests to OpenAI and Cohere in
its first months.
Carry forward In regulated settings the gateway is the
compliance artefact; reliability features ride along.
engineering.wealthsimple.com/get-to-know-our-llm-gateway...
Eng blog
Assembled2025-06-12
Your LLM provider will go down, but you don't have to
The best published account of operating failover rather than designing it: manual
switching failed on per-use-case routing, minutes of delay and misclassified partial
outages; automation brought switching to hundreds of milliseconds.
Carry forward The on-call human is the slowest and least
accurate component in a failover path.
assembled.com/blog/your-llm-provider-will-go-down-but-you-dont-have-to
Eng blog
BricksLLM2023
How we built a highly scalable LLM gateway with Go
A build log with its own failure in it: per-chunk tokenizer initialisation added 8.3
seconds to streamed responses; the fix plus an async event bus brought gateway
overhead to about 30 ms. Also the clearest statement of the sync/async split.
Carry forward Token counting is the gateway's hot loop;
measure added latency per chunk.
github.com/bricks-cloud/BricksLLM/blob/main/blog/...
Eng blog
Dudu Lasryn.d., checked 2026-10
Implementing an LLM fallback mechanism
A practitioner hits a TypeError that lives only in the library's fallback branch,
traces it to a one-line change, and lands the fix upstream. The fallback path broke
while the happy path was fine.
Carry forward Force the fallback branch in CI; it has no
organic test coverage.
dudulasry.substack.com/p/implementing-an-llm-fallback-mechanism
Eng blog
TechCrunch2025-09-10
Anthropic reports outages: Claude and Console impacted
Users on GitHub and Hacker News noticed the failure around 12:20 p.m. ET; the status
update followed eight minutes later. A small, dated data point on detection order.
Carry forward Your error rates will know before the status
page does; alert on your own signal.
techcrunch.com/2025/09/10/anthropic-reports-outages...
Eng blog
Pulse22026-05
OpenRouter raises $113M as weekly volume reaches 25 trillion tokens
The scale figure that turns the aggregator from a convenience into shared
infrastructure: 25 trillion tokens a week, five times the volume of six months
earlier.
Carry forward Concentration you adopt for convenience
becomes concentration risk at someone else's growth rate.
pulse2.com/openrouter-113-million-raised...
Eng blog
CNCF2024-11-14
KubeCon NA 2024 day-2 keynote recap
Names the three pains that produced the shared gateway: divergent access patterns,
divergent credential management, and models with service-specific needs.
Carry forward The gateway's first customer is the platform
team drowning in provider differences, not the reliability engineer.
cncf.io/blog/2024/11/14/kubecon-cloudnativecon-north-america-2024...
Paper
Chen, Zaharia, Zou2023-05
FrugalGPT (arXiv:2305.05176)
Documents the economic asymmetry that makes routing worth building: API fees differing
by two orders of magnitude, and a learned cascade matching GPT-4 benchmarks at up to
98% lower cost.
Carry forward The router's budget case rests on price
spread, which is a market fact that can narrow; date your assumptions.
arxiv.org/abs/2305.05176
Paper
Ong et al., ICLR 20252024-06
RouteLLM: learning to route LLMs with preference data (arXiv:2406.18665)
Routes before generation rather than cascading after it: a router trained on
preference data picks strong or weak per query, cutting cost by more than half on the
authors' benchmarks without quality loss.
Carry forward Pre-generation routing is the only kind that
also saves latency; cascades pay twice on escalation.
arxiv.org/abs/2406.18665
Talk
Bloomberg @ KubeCon NA2024-11
Centralizing & simplifying enterprise AI workflows with Envoy AI Gateway
The end-user keynote in which Bloomberg presented the gateway as shared
infrastructure: unified model access, usage limiting and upstream authorization,
co-built in the open with Tetrate rather than kept as a fork.
Carry forward If every large company needs the same layer,
the differentiation is in the routing policy, not the proxy.
youtube.com/watch?v=do1viOk8nok
Talk
Twilio @ AI Engineer WF2026
Productionizing LLM gateways
Framing from the talk's published page: a fallback policy needs compatible behaviour,
tested capacity and a switch point before streamed output commits; set timeouts from
p99 measured per model and route. No in-video timestamps were reachable from this
session.
Carry forward A fallback target you have not load-tested is
capacity you are assuming, not capacity you have.
ai.engineer/talks/zrZ1amZBSPw-productionizing-llm-gateways-architecture
Vendor
OpenRoutern.d., checked 2026-10
Reliability and automatic failover
The two-layer failover model: provider-level failover on by default within a model,
cross-model fallback opt-in; and a concession worth the page, that internal failover
cannot protect against faults in the routing layer itself.
Carry forward Ask any gateway vendor what happens when the
gateway is the fault; the honest answer is "keep a second route".
openrouter.ai/blog/insights/reliability-failover
Vendor
Portkey2025
Anthropic's 12-hour outage: customer traffic analysis
The one measured account of fallbacks under a real outage: 99.86% success for
configured customers, with every listed residual failure a configuration fault (529
unmapped, expired keys, dead targets). Self-interested source; no independent check
exists.
Carry forward Fallback config is production code with an
expiry date; drill it on a schedule.
new.portkey.ai/announcements/anthropics-12-hour-outage
Vendor
Cloudflare2026, checked 2026-10
The AI engineering stack we built internally
The gateway vendor routing its own internal AI traffic through its gateway product,
20 million requests reported, for routing and cost attribution. Dogfooding evidence,
with the usual discount.
Carry forward Cost attribution, not failover, is the
feature that makes finance fund this layer.
blog.cloudflare.com/internal-ai-engineering-stack