Failover Simulator
Set a failure rate for every hop in a fallback chain and read the exact traffic split, latency and cost it produces.
96 requests per million fail everywhere — about 4.02 nines.
- served by primary
- served by second
- served by third
- not served at all
- Served by the primary
- 88.000%
- Served by the second hop
- 11.520%
- Served by the third hop
- 0.470%
- Served by nothing
- 0.0096%
- Mean latency, successful requests
- 1,088 ms
- Mean latency, counting failures
- 1,088 ms
- Latency the primary alone would give
- 800 ms
- Cost per 1,000 requests
- $3.26
- Cost if the primary never failed
- $3.00
- Cost premium the chain is paying
- 8.6%
A fallback chain is a multiplier, not a fix. If the primary drops 12% of calls and the second drops 4% of what it receives, the share that reaches neither is 12% × 4% × whatever the third drops — which is why the availability figure at the top stays reassuring long after the system underneath has stopped being healthy. That is the useful thing to see: drag the primary from 1% to 40% and the headline barely moves.
What moves is everything else. Each failover costs a timeout before it starts, so mean latency climbs in steps of whatever you set that timeout to, and every request the primary sheds gets served by a hop you priced differently. The cost premium row is the one that finds real outages: a chain absorbing a bad afternoon shows up as a bill that is 30% higher than the day before, days before anyone reads a dashboard. Alert on the share of traffic served by the primary, not on the error rate, and you get the same warning while it is still cheap.
What this leaves out is correlation, and it is the big one. The independence assumption is what turns three mediocre providers into four nines on paper. Real chains fail together — one region, one upstream model host, one expired certificate — and when they do, the multiplication above stops applying and the true availability is closer to the worst single hop than to the product. Treat the number as the best case your topology allows, then ask what the three hops share.