The alpha, twice a week
That was 5 min.
Get the best new moments in your inbox every Wednesday and Saturday. It's free.
Check your inbox
We sent a link to your address. Click it to finish signing up. Not there in a minute? Look in spam.
or
The Pragmatic Engineer · 5 min · Oct 7, 2026
Fail open or fail closed depends on the business context
Sam Newman

Gergely OroszHost · Host, The Pragmatic Engineer
Spent four years at Uber heading mobile, web and backend teams; shipped part of its payments system.
About this segment
Sam uses e-commerce versus concert tickets to show the same outage calls for opposite choices. Uber's payment handling shows the right answer shifts as company goals shift.
From “Building resilient systems with Sam Newman”, Oct 7, 2026. Watch the full episode
Thanks. We'll look at and fix what's off.
“Keep that problem exactly the same, but now change the business context. Now we're sending concert tickets. So you're getting tickets to go see Tay-Tay, right?”
Takeaways
- E-commerce can sell unsure stock because backorders and refunds are cheap
- Concert tickets must fail closed because a false sale devastates the customer
- Fail open versus closed is decided feature by feature, with the product owner
In this episode
Full episode1:21:33Fail open or fail closed depends on the business context4:39
- 1:08:19Make retries safe with idempotency keys, not just fingerprints4:48Up next
- 1:26:21Robustness is only one of four parts of resilience1:58
- 5 more moments in the full episode
Transcript
Transcribed by machine (Whisper) from the episode’s audio, so a word may be off here and there.
- 1:21:46
context so the example I give there is like if an e-commerce company if I want to buy an item online right physical item online and if at that moment I want to purchase it if you're not sure if you've got it or not most e-commerce companies will say yeah sure you can have it because they know there's a good chance they do actually have it in stock and if they don't have it in stock They can get it in and back order it.
- 1:22:09
And the worst case scenario, they can email and say, sorry, and refund you the money, right? So that's not great. It's not ideal. Now, if they said, we don't know if we've got this item, therefore we're not going to sell it to you. They're missing out on a sale. And I could go buy that somewhere else probably. And they might have had it. So e-commerce companies in that situation, because of that sort of understanding of the relationship with the customer and the impacts if they get it wrong, they're going to try selling the item.
- 1:22:33
Keep that problem exactly the same, but now change the business context. Now we're sending concert tickets. So you're getting tickets to go see Tay-Tay, right? You're going to go see Taylor Swift. And we're not sure if you've got the Taylor Swift ticket or not because our link to that system is down. But those Taylor Swift tickets are yours. You're taking your kids, taking your wife. It's all going to be awesome.
- 1:22:53
We're going to Portugal. We're going to go see Taylor Swift. It's going to be amazing. And then we email you. Sorry. We don't actually have those tickets. Now, the problem with that is, firstly, the devastation in your organization is a bit different. They can't backorder a ticket. Yep. and so in that situation it's like the impact to the customer is so much greater and then they book the flight and well you might book the flight so what they do is they make a different decision so in that situation if they don't know if they got the ticket they don't sell a ticket I'm not sure if you cover it in the book but this is the fail open versus fail close right when you have an error or you're unsure are you going to go through or not and as you say this can be a decision the same problem two companies can take a decision
- 1:23:30
a company years down the road could take a decision Uber had this classic example of when we weren't sure if the payment went through. Do we allow the ride to continue or not? And early in the company's years, we always failed open. Yeah, just have the ride. We might have the money and if not, we'll deal with it. As the company starts to go for profitability, we fail closed. We're not sure we have the money.
- 1:23:55
If the charge went through, you're not going to get the ride. And again, same company, different focus. And if you're a developer, you needed to pay attention to what is important right now for the business. It was growth initially, and it's okay if we lose money. And then now it's, I don't know, unit economics, profitability. But also that open close versus open, that's a failed close versus a failed open discussion isn't one size fits all for the whole system.
- 1:24:19
It's on a feature by feature basis. And even then, you could say this taxi ride is 10 euros, or it's a thousand euros. You can make different decisions. Now, if you approach this from a mathematical and from a computer science viewpoint, we just talked about cap theory. that was a conversation about cap theory right so in the chapter i talk about here's cap here's which is an extension of cap i explain what those models are because when you get deep You'll hear about them. But fundamentally, that's what this is about, right? When you have a partition, that's what the P in CAP really defines. I can't talk to one part of my system. Remember, it's rule number two. But I can't talk to another part of my system. What do I do? And all you need to know as a developer, I can't talk to that. What do I do? Sometimes we can make technical decisions. I'll try again. I hope I don't bring my systems down for the retry storm, but I'll try again. If that doesn't work, what do I do?
- 1:25:13
Well, actually, often the answer is, yeah, sure, you can look at CAP and Pac-Helk or whatever else, but go have a conversation with a product owner. What should we do? The resolution of that often ends up being a decision about are we trading off consistency versus availability in Pac-Helk or harvest and yield if you're going into that version of Brewer's Conjecture. But don't worry about that. That's in the book.
- 1:25:32
That's why it's a later chapter. That's chapter like 12, I think, or 11. Don't start there. Start with having the conversation. Rule number two, I can't talk to this part of the system right now. What should we do? and that starts with having the chat that starts having the chat when we're talking about resilience you talk about the dimensions to think about resilience what what are these dimensions i