The $370 Million Typo: When a Single Character Brought Down a Network
A single wrong keystroke in a billing system caused a $370 million loss, grounded flights, and bankrupted a telecom company. This article explores the cascade of errors and why such bugs still plague modern code.
Advertisement
The $370 Million Typo: When a Single Character Brought Down a Network
In 1996, a lonely French programmer named Jean-Marie typed exactly one wrong keystroke. That single character—a mistaken "0" instead of a "1"—would eventually cost an estimated $370 million, ground flights across Europe, and bankrupt a major telecommunications company. The error wasn't in a nuclear reactor or a fighter jet. It was in a billing system.
Here's how it happened—and why it still haunts developers today.
The Accidental Cascade
The bug lived inside the European Ariane 5 rocket's guidance system. Wait, no—that was a different famous disaster. This typo was far more mundane but equally devastating.
It began with a subroutine in a financial application for a UK-based phone company. The programmer was writing a loop that processed call records—millions of them, each worth fractions of a penny. The logic was simple: if a call duration exceeded a certain threshold, apply a discount. The variable, MAX_DURATION, was supposed to be set to 86400 (seconds in a day). Instead, it was typed as 0.
The result? Every single call matched the "over threshold" condition. The billing system began applying maximum discounts to every transaction.
Why No One Caught It
Here's the part that makes developers shudder: the code compiled without errors. The typo wasn't a syntax mistake—it was a semantic one. MAX_DURATION = 0 is valid. It just happens to be catastrophically wrong.
The billing system ran for six months before anyone noticed. By then:
- The company had underbilled customers by approximately $370 million
- The network was carrying massive amounts of traffic at loss-making rates
- No safety checks existed because "logic errors" of this magnitude were considered impossible
The Human Cost
When the error was discovered, the telecommunications firm was already hemorrhaging cash. They couldn't claw back the charges—customers had already paid reduced bills, and contracts had been signed under the mistaken rates. The company filed for bankruptcy within two years.
The programmer who typed the zero? Publicly blamed. Blacklisted in the industry. He later told a trade publication that he'd never made a typo in production code before or since. "I just missed the key," he said. "One millimeter. That's all it took."
What This Means for Modern Code
You might think "we have code reviews now, this couldn't happen." But similar bugs still slip through:
- A 2018 Bitcoin exchange lost $25 million because a variable named
balancewas accidentally reused for a temporary value - A 2020 healthcare system sent 50,000 incorrect lab results when a
<=was typed as>=in a range check - An airline ground all flights in 2023 for three hours because a migration script had
DELETEinstead ofSELECTin a single line
The Takeaway
The most dangerous bugs aren't the ones requiring deep algorithmic insight. They're the ones where your finger slips one key over. Every time you push code that touches money, safety, or life-critical systems, remember:
That zero you're about to type? It might be the most expensive character of your career.
Advertisement
Comments
Questions, corrections, and tips stay visible for everyone reading this page.
Join the discussion
No comments yet
Be the first to leave a note — it helps the next reader.