Culture of Chaos: The crash of TAM Airlines flight 3054

Admiral Cloudberg
26 min readMar 19, 2022

Note: this accident was previously featured in episode 20 of the plane crash series on January 20th, 2018, prior to the series’ arrival on Medium. This article is written without reference to and supersedes the original.

Firefighters struggle to control the inferno following the crash of TAM flight 3054. (The Guardian)

On the 17th of July 2007, the worst air disaster in South American history unfolded on a slippery runway in São Paulo, Brazil, as a TAM Airlines Airbus A320 lost control on landing and careened into a gas station and an office building. The fiery crash claimed the lives of 199 people and sent shockwaves throughout Brazilian aviation. Already in turmoil following a devastating midair collision the previous year, Brazil’s air travel system now faced an even greater existential crisis as the public lost confidence in the ability of airlines and regulators alike to keep passengers safe.

Resolving the crisis required that authorities find and correct the failures which caused TAM Airlines flight 3054 to crash in flames in São Paulo. Investigators would discover that the fully loaded A320 did not slow down properly after touchdown, hurtling off the end of the runway at nearly 100 knots despite the pilots’ desperate attempts to stop it. The reason? Somehow, one of the plane’s engines was still set to climb power, having been left there accidentally in a shocking error by the captain. This finding raised concerns about the quality of pilot training at the airline, but it also highlighted the stress placed on pilots landing at São Paulo’s Congonhas airport, which was known for its very short runway, lack of traction when wet, and complete absence of safety margins. And so investigators were forced to consider a troubling irony: since pilots make more mistakes when under stress, had the airport’s reputation for dangerous landings become, in this case, a self-fulfilling prophecy?


Passengers queue at an overcrowded information desk during the Brazilian aviation crisis. (Fabio Pozzebom)

In 2006, Brazil’s airline industry entered a state of great upheaval. The previous year, Brazil’s oldest and formerly largest airline, VARIG, had undergone bankruptcy protection and judicial reorganization, and by the summer of 2006 the situation had become so dire that it was forced to suspend all operations. Then, while airlines were still scrambling to fill the resulting void in the market, disaster struck: on September 29th, a Boeing 737 belonging to Brazilian low-cost carrier Gol collided in midair with a business jet over the Amazon, killing all 154 people on board in what was then Brazil’s worst air disaster. It soon became clear that outdated procedures and equipment, exacerbated by inexperienced and poorly trained personnel, had caused air traffic controllers to put the two planes on a collision course.

Brazil’s air traffic control system, one of the world’s last major networks to be run by the military, immediately fell into crisis. Military controllers felt that they needed better equipment, training, and working conditions, but they were forbidden from striking, so they initiated a coordinated work slowdown instead. The slowdown, arriving at the same time as the holiday travel rush, led to chaos as thousands of flights suffered cancellations and delays, stranding passengers at airports across the country. At the height of the crisis, more than half of all flights in Brazil were affected. And as 2006 gave way to 2007, public anger boiled over at the seeming inability of the government and the airlines to get passengers to their destinations safely and on time.

TAM Airlines planes at Congonhas Airport in 2012. (Yasuyoshi Chiba)

For TAM Airlines, Brazil’s second largest domestic carrier, the crisis colored every aspect of day-to-day operations. The airline had been expanding rapidly to try to fill the hole left by the decline of VARIG during the 2000s, adding new planes and new flights at a breakneck pace. Between 2003 and 2007, TAM’s total annual flight time and number of pilots both more than doubled. But the chaos in the industry was also taking its toll. Relations between the airline and its customers had become unusually bitter, as disgruntled passengers, incensed at the unending delays, harassed pilots and assaulted check-in staff. In an attempt to improve customer relations, the airline had instructed pilots to stand in the galley and greet passengers during boarding, a counterproductive measure which not only exposed pilots to more abuse, but also made the delays even worse, as the practice robbed pilots of time they otherwise would have spent preparing their planes for departure. As a result, stress among TAM crews was on the rise, but the airline didn’t seem to acknowledge this reality, employing only one psychologist to handle more than 5,000 pilots.

São Paulo-Congonhas Airport, seen from the air. (Wikimedia user Mariordo)

By July 2007, the crisis still had not resolved itself. The government had yet to allocate the additional funds necessary to bring the country’s air infrastructure into line with demand, and in the absence of such action, there was no way for the overloaded system to clear the escalating backlog of delayed and cancelled flights.

Part of the problem was the centrality of São Paulo’s Congonhas Airport within the Brazilian air traffic network. As the largest city in South America, São Paulo is necessarily Brazil’s top air travel destination, but Congonhas, its main domestic airport, was hopelessly ill-equipped for this purpose. When Congonhas was built in 1936, the population of São Paulo was approximately one million, and the airport was situated on a hilltop some miles outside the city — in fact, at the time it was criticized as being too distant. But within a few decades, São Paulo’s population exploded to such an extent that by the 1970s, the city had reached and then surrounded Congonhas Airport before it could expand to meet modern standards. By 2007, with São Paulo’s population climbing well past 10 million, the tiny airport with its 1,900-meter main runway lay deep inside the core of the city, surrounded by dense residential districts and high-rise apartment buildings.

Another view of Congonhas Airport, highlighting its position on top of a hill. (Marcos Ferreira)

In 1985, a new, much larger airport opened in the São Paulo suburb of Guarulhos, designed to accommodate international flights that were unable to land on Congonhas’s short runway. However, this failed to correct the imbalance between Congonhas’s capacity and the size of the market it served. Ironically, the old airport’s position relatively close to the center of the city only increased demand for flights there, and by the 1990s it had become the busiest airport in Brazil, forcing authorities to develop a strict system of landing slots in order to keep the airport from becoming hopelessly gridlocked. Even so, by the 2000s, the airport was routinely operating at 50% above its maximum design capacity. Construction of a new, bigger terminal had begun in 2002, but by 2007 the project still hadn’t been finished, making the overcrowding problem even worse.

The end of runway 35L, where the accident would later occur, seen here earlier in the 2000s. (unknown author)

As noted earlier, because of its location surrounded by neighborhoods, it was infeasible to upgrade the airport’s runway as standards evolved and airplanes got bigger. At 1,900 meters, its main runway was among the shortest at any major airport anywhere, and its parallel auxiliary runway was even shorter. Furthermore, the main runway dropped off steeply onto city streets at both ends with no overrun area whatsoever. Although international standards required a minimum 90-meter overrun area, there was simply no room to install one. And as if that wasn’t enough, the runway surface was also notoriously slippery, with poor frictional characteristics and a nasty tendency to accumulate standing water during periods of heavy rain. All of these facts gave Congonhas a reputation as an airport with no margin for error, where failure to stop on the runway would likely be a death sentence for everyone on board.

By 2007 there had not been a serious runway overrun accident, but those who flew there and those who lived nearby agreed that such a crash was probably inevitable. In fact, ever since a TAM Airlines Fokker 100 crashed into houses after takeoff from Congonhas in 1996, killing 99 people, local residents had been lobbying for the airport to be closed altogether. Unfortunately, the economic and structural pressures to keep the airport in operation far outweighed any safety concerns, especially once the aviation crisis began in 2006, rendering any reduction in capacity at the country’s busiest airport potentially catastrophic.

PR-MBK, the aircraft involved in the accident. (Davi Ribeiro)

It was amid this context that TAM Airlines flight 3054 prepared to depart the southern city of Porto Alegre, bound for Congonhas, on the 17th of July 2007. The Airbus A320 had been booked to capacity: in fact, every one of its 174 passenger seats had been filled, plus two additional lap children, as well as all 11 crew seats, five of which were occupied by off-duty TAM employees, while the four flight attendants and two pilots occupied the other six. In total, 187 people were crammed onto the plane.

In command of the flight that evening was 53-year-old Captain Henrique Stefanini Di Sacco, a veteran pilot with over 30 years’ experience and 13,600 flying hours. His copilot was another captain, 54-year-old Kleyber Aguilar Lima, whose experience was even greater, at 14,000 hours, although he was quite new to the A320. While the practice is generally avoided in the industry, pairing two captains instead of a captain and a first officer was not uncommon at TAM because the airline had not properly controlled its ratio of senior to junior crewmembers.

The route of TAM flight 3054. (Google + own work)

By the time flight 3054 departed Porto Alegre at 17:19, the pilots were already worried about the upcoming landing in Congonhas. For one, their plane had been operating since July 13th with one thrust reverser inoperative. The thrust reversers redirect engine thrust forward on landing in order to help slow the plane, but they account for less than 10% of an aircraft’s stopping power under normal conditions, and as such it’s legal to fly with one reverser unavailable. In this case, mechanics had disconnected the right thrust reverser due to a leaky hydraulic actuator, leaving only the left one until such time as the airline could acquire the parts and downtime necessary to carry out a repair.

This ATR-42 slid off the same runway the day before the accident. (Bureau of Aircraft Accidents Archives)

Nevertheless, the inoperative thrust reverser would add a few dozen meters to their stopping distance, and that wasn’t the only point of concern. Rain had been falling at Congonhas for the past two days, and was still coming down intermittently when flight 3054 left Porto Alegre. Because of the main runway’s tendency to become slippery when wet, since January 2007 the airport had been shutting the runway down whenever pilots started reporting poor braking conditions, reopening it only once an inspector had confirmed that there was no standing water. The previous day, traffic had been forced to stop several times, including that afternoon when a Pantanal Airlines ATR-42 twin turboprop hydroplaned off the runway and spun out into the grass, striking a utility box and a pole. No one was hurt in the incident, but the plane was damaged beyond repair.

A thrust reverser deployed on an Airbus A321. (Pieter van Marion)

The pilots of flight 3054, well aware of both the frequent shutdowns and the previous day’s accident, were not looking forward to the prospect of trying to land at Congonhas. They would have to face a slippery runway at night in wet weather with an inoperative thrust reverser and a landing weight close to the maximum for the airport. Stress in the cockpit would understandably have been running high.

Five minutes after departure, the Porto Alegre controller informed them that Congonhas had shut down again due to reports of poor braking action. It was bad news, but not unexpected, and the runway would probably reopen soon anyway. And so flight 3054 continued toward São Paulo uninterrupted, until at 18:03 the pilots learned that the runway was indeed open once more.

By 18:43, flight 3054 had begun its descent toward the airport, at night and in dense cloud. The landing was foremost on the mind of Captain Stefanini Di Sacco. “Remember, we have only one reverse,” he said.

“Yes… only the left,” said Captain Aguilar Lima.

Although he said nothing about it, it seems that Captain Stefanini Di Sacco had planned in advance a seemingly minor deviation from standard procedure. Beginning in January of that year, the proper procedure for landing with one thrust reverser, as described in the airplane’s Minimum Equipment List, had been exactly the same as landing with both reversers: the pilot simply reduces thrust to idle, then moves both thrust levers to the reverse position as normal, even though one reverser will not work.

However, using this procedure requires adding 55 meters to the landing distance calculation. The problem lay in the way thrust lever inputs are translated into actual engine thrust. When the A320’s thrust levers are moved back from the idle position to the reverse position, the amount of thrust produced by the engines actually increases, but it is mechanically deflected forward by the reverser system to slow the plane. Consequently, commanding reverse thrust on an engine with an inoperative thrust reverser will cause that engine to momentarily experience an increase in forward thrust, due to the absence of the mechanical deflection, before a safety system steps in to correct the situation. Although it would only last a split second, this increase in thrust added a few dozen meters to the distance required to stop the airplane.

The difference between the new procedure and the old procedure for landing with one thrust reverser. (Mayday + own work)

Already concerned about the risk of landing on the short, slippery runway at Congonhas with only one thrust reverser, Captain Stefanini Di Sacco apparently felt that his safety margin would be improved by using an old procedure that had been in effect up until 2007. In that procedure, the pilot moves both thrust levers to idle, but then moves only the thrust lever for the engine with the working reverser onward to the reverse position. By avoiding the momentary application of forward thrust on one engine, this procedure results in a shorter stopping distance. Even though using the old procedure was considered a deviation, Stefanini Di Sacco clearly considered the tradeoff to be worth it, considering the catastrophic consequences of overrunning the runway even by as little as 55 meters.

As flight 3054 approached Congonhas, all seemed to be going according to plan. The crew successfully locked on to the instrument landing system, configured the plane for landing, and broke through the clouds in time to catch sight of the runway. Now was the moment of truth.

“Ask him about the rain condition, the runway condition, and if the runway is slippery,” Stefanini Di Sacco said to Aguilar Lima, who was working the radio.

Aguilar Lima keyed his mic and said to air traffic control, “TAM on final approach, two miles away. Could you confirm conditions?”

“It’s wet, and it is slippery,” the controller reported. “I will report three five left clear, three zero five four.”

“Wet and slippery!” Stefanini complained. This was exactly what he had been afraid of.

As Aguilar Lima called out their speed and altitude, flight 3054 descended through 500 feet, then 300, then 200, then 100. The engines were set to climb power in order to maintain flight in the low-speed, high-drag landing configuration, but, sensing that the plane was about to touch down, an automated voice now began to call out “RETARD, RETARD,” reminding the pilots to reduce thrust to idle for landing.

In response to the callouts, Captain Stefanini Di Sacco reached over to reduce thrust, as he normally would at this phase of flight. Carefully considering the inoperative reverser and his plan to handle it, he grabbed the left thrust lever and moved it to idle. The wheels contacted the runway with a bump, and he moved the thrust lever further back, to the reverse position.

“Reverse number one only,” he said. The left reverser came to life with a roar, as he expected. He had no idea that he had just made a terrible mistake: he had left the right thrust lever at climb power.

How Captain Stefanini inadvertently botched the procedure. (Mayday + own work)

With the right engine still producing climb thrust, there was no way to stop the plane on the runway. The ground spoilers, which normally extend automatically on touchdown to reduce lift and force the plane onto the runway, did not deploy, as both thrust levers must be at or below idle for this to occur. Consequently, the autobrakes, which only activate once the ground spoilers have deployed, also did not engage. The non-engagement of the spoilers alone caused a 60–80% reduction in braking effectiveness before even considering the extra thrust from the right engine. Under such conditions, even with maximum manual braking, the plane would have needed about three times as much distance to stop as was actually available.

Three seconds after touchdown, Aguilar Lima first noticed that something was wrong when he spotted a spoiler warning. “Spoilers, nothing!” he exclaimed.

“Aiii, look at this!” said Stefanini. The plane had barely slowed down at all. Was it because the spoilers hadn’t deployed? Maybe they were hydroplaning? Six seconds after touchdown, both pilots slammed on the brakes as hard as they could, but it wasn’t enough.

“Slow down, slow down!” Aguilar Lima said, increasingly alarmed.

“It can’t, it can’t!” Stefanini shouted. “Oh my god! Oh my god!”

The trajectory of flight 3054 as it neared and then ran off the end of the runway. (Wikimedia user Rcaterina)

The end of the runway was fast approaching, the lights of the city rising to fill their windscreen. The plane swayed from side to side as the pilots fought to overcome the asymmetric thrust, which was pushing them hard to the left.

“Go go go, turn turn turn turn!” Aguilar screamed. “Turn, turn to, no, turn, turn!”

The plane began to run off the left side of the runway, crushing the runway edge lights before rumbling through the grass and across a taxiway.

“Oh no!” someone shouted. The cockpit voice recorder captured the sound of a flight attendant screaming in terror. And then the plane, still traveling at 96 knots — 178 km/h — careened off the cliff at the end of the runway. For a split second, the A320 continued out into space, just barely clearing ten lanes of traffic on Washington Luís Avenue and its adjacent frontage road, before slamming into a row of buildings on the opposite side. The plane crushed part of a Shell gas station, killing customers in their cars, before plowing directly into a four-story concrete office building belonging to TAM Airlines’ own express cargo service. A huge explosion consumed both buildings and the plane; debris flew in all directions as the A320 completely disintegrated in the blink of an eye, taking with it the lives of all 187 passengers and crew.

This CGI animation from Mayday: Season 11, episode 1 “Deadly Reputation” depicts the final moments of TAM flight 3054.

Unfortunately, the carnage was extensive among bystanders as well. Several people were killed at the Shell station, and more in the TAM Airlines building, where fire ripped through the hallways, cutting off stairwells and forcing people to jump from the windows to escape. Firefighters, responding to the scene of the disaster, managed to rescue some of them, but others were not as lucky. It took 24 hours for firefighters to put out the blaze in the partially collapsed building, and only then could the search for victims begin. It would be days before authorities confirmed that 12 people on the ground had died, bringing the total death toll to 199 — the worst plane crash ever to occur in Brazil, and indeed all of South America.

Firefighters battle the flames at the TAM Express building. (Milton Mansilha)

The crash immediately dealt a crippling blow to Brazil’s already foundering airline industry. Congonhas Airport temporarily suspended operations, sending even more delays cascading throughout the system, even as airlines — spooked by the crash — exacerbated the problem by taking prudent precautions such as refusing to land in bad weather or grounding planes with mechanical defects. Passengers gave up on air travel out of despair and crowded into bus terminals instead. People pleaded for something to be done, but the government seemed barely aware of what was going on. And as they had been doing ever since the previous crash, the three agencies involved in air transport — Infraero, the air infrastructure authority; the ANAC, the civil aviation regulator; and the Air Force — seemed more interested in blaming each other for the crisis than in finding a solution.

The vertical stabilizer and empennage were among the only recognizable parts of the plane. (The Guardian)

Meanwhile, military investigators from Brazil’s Aeronautical Accidents Investigation and Prevention Center, or CENIPA, set about finding the cause of the crash. It was immediately apparent that the plane had departed the runway at very high speed, much higher than in a normal runway overrun accident. Security camera footage from the airport confirmed this, revealing that the plane crossed from one side of the frame to the other in just three seconds, as opposed to eleven seconds under normal conditions. This immediately put to rest theories that the aircraft had made a normal landing, only to lose control due to water on the runway — something else must have gone wrong.

The actual security footage of TAM 3054’s fatal landing. (Radiobras)

It was true, however, that the runway itself posed a danger. In a parallel line of inquiry, investigators found that the main runway had been closed between May 14th and June 28th for resurfacing in an attempt to resolve problems with poor traction that had plagued the airport for years. But when the runway reopened on June 29th, the work wasn’t done: under pressure to get traffic moving through Congonhas again, Infraero had decided to open the main runway before carving rainwater drainage grooves into its surface. Without these grooves, water could accumulate on the runway, increasing the risk of hydroplaning. This was the cause of the ATR-42 accident on July 16th, but it did not explain the devastating A320 crash the following day. It did, however, raise troubling questions about what other corners might have been cut in order to meet demand for passenger turnover.

Heavy machinery was brought in to clear the wreckage after fire crews had extinguished the blaze. (AP)

Upon examining the contents of the black boxes, investigators discovered that flight 3054’s right engine was generating climb power throughout the landing, right up until the plane slammed into the building. This led to speculation that the pilots had attempted to balk the landing and take off again, only to fall short, but as more evidence rolled in, this possibility seemed increasingly unlikely. Instead, it seemed that Captain Stefanini Di Sacco fully intended to land his plane and bring it to a stop, but inexplicably left the right engine at high power. This not only hindered deceleration, but also prevented the automatic deployment of the ground spoilers and autobrakes, significantly reducing the plane’s already compromised stopping power. At that point, even a dry runway with excellent grip would have been insufficient to prevent the accident.

Firefighters carry a victim away from the crash scene. (Agência Luz)

The cause of this catastrophic error lay in Stefanini’s attempt to use an out-of-date procedure for landing with one thrust reverser. The possibility of this specific error was in fact the reason Airbus had changed the procedure in the first place. The act of moving both thrust levers to idle, and then only moving one of them to reverse, primed pilots to move only one thrust lever during the most important part of the procedure. When under stress, this occasionally caused pilots to forget to move the other thrust lever at all. In 1998, this exact sequence of events led to the crash of a Philippine Airlines A320 in the city of Bacolod (shown below) after the pilot accidentally left one thrust lever at high power during a single-reverser landing. The plane overran the runway and crashed into houses, killing three people on the ground, although all 130 passengers and crew survived. Six years later, in 2004, another A320 overran the runway in Taipei, Taiwan under similar circumstances, although nobody was seriously hurt in that incident. And similar accidents had also happened on other aircraft types, most notably the 2006 crash of an S7 Airlines Airbus A310 in Irkutsk, Russia, after the captain accidentally accelerated an engine while landing with one reverser inoperative. That crash claimed the lives of 125 out of 203 passengers and crew.

The previous crash involving Philippine Airlines in 1998. (AP)

In response to the accidents involving the A320, Airbus changed the applicable procedure in order to remove any difference between the positions of the two thrust levers when landing with one reverser. As was noted previously, this reduced the danger of an incorrect power setting, but added 55 meters to the landing distance. On flight 3054, Captain Stefanini Di Sacco, worried about stopping his fully loaded plane on the slippery runway at Congonhas, decided to revert to the older procedure to save those 55 meters, in the process reintroducing the potential for error which Airbus had tried to eliminate. That this was a conscious decision and not a lapse in memory was substantiated by the fact that Captain Stefanini Di Sacco had used the new procedure correctly when he landed in Porto Alegre on the previous leg of the flight.

Wreckage of the A320 lies next to the burned-out remains of the building. (Agência Luz)

With the pilots under great stress at the moment of landing, and the older procedure again in use, the conditions were now ripe for this perennial error to strike again. The base level of stress was already high due to the turmoil in the industry and at the airline; on top of this, they were landing at the most notorious airport in Brazil, with a plane close to the max landing weight, at night, on a wet and slippery runway, the day after another plane nearly crashed under identical circumstances. Captain Stefanini Di Sacco became hyper-focused on stopping the plane safely after landing, and he planned to accomplish this in part by moving only one thrust lever to the reverse position. In this condition of stress-induced tunnel vision, he simply forgot to move the second thrust lever to idle. And so, even though the state of the runway played no direct role in the crash, the runway’s reputation for danger created the stress which led to the captain’s error, becoming a darkly ironic self-fulfilling prophecy.

Firefighters remove another victim from the wreckage. (Reuters)

Once this mistake had been made, the pilots did not have much time to catch it before disaster became inevitable. First of all, investigators noted that spotting a thrust lever in the wrong position would have been difficult unless the pilots were specifically looking for it, due to the dark cockpit environment and the small size of the lever. Secondly, the automatic “RETARD” callouts, intended to remind the pilot to reduce thrust to idle, ceased when one engine entered reverse thrust, removing a potential cue that the other engine had not in fact been rolled back. And finally, the only warning the pilots received was a notification that the ground spoilers had not extended. This failure was a result of the high power setting on the right engine, but the warning gave no indication as to the reason the spoilers had not deployed, potentially leading the pilots to an incorrect conclusion about the cause of their difficulties. It therefore seems quite likely that as the plane sped down the runway, the pilots incorrectly believed that they could not stop because the spoilers had failed and the aircraft was hydroplaning.

Simulations would later show that the crash could have been avoided if the pilots had recognized the problem and reduced power on the right engine within seven seconds after touchdown. The simulations also revealed that if the pilots had cancelled reverse thrust on the left engine and attempted to take off again — a violation of proper procedure — the resulting takeoff would have been successful at any point within 15 seconds after touchdown. However, investigators were careful to note that such a maneuver is not recommended, because previous attempts to balk a landing after deployment of the thrust reversers have sometimes ended in disaster.

The TAM Express building burns after the crash. (AP)

Investigators also questioned whether the A320 itself could have done more. All airplanes have warnings which will alert the crew to various incorrect settings during takeoff or landing, but with very few exceptions, an incorrect thrust lever position is not one of them. Typically this is because thrust lever position — especially reverse or takeoff/go around (TOGA) — is the parameter used by most such warning systems to determine the pilot’s intention, and if this setting is wrong, the aircraft will wrongly interpret the intention of the pilot as well.

However, investigators noted that in this case, the weight-on-wheels sensors had detected that the plane was on the ground, the ground spoilers were armed, the pilots were pressing on the brakes, and the #1 engine was in reverse, all clues which would strongly indicate to a human observer that the pilot intended to land, and yet the continued non-activation of the ground spoilers and autobrakes showed that the A320’s software logic weighed the presence of one engine at climb power above all of this contradictory evidence. This simple software logic inhibiting deployment of the spoilers and autobrakes unless both thrust levers are at or below idle power is intended to prevent the spoilers from deploying in flight, and to automatically stow them in the event of a balked landing or go-around. But in the opinion of CENIPA, a more advanced logic could be developed to take into account more parameters. Had such a logic existed, leading to the automatic deployment of the ground spoilers and autobrakes, the crash would have been much less severe.

Cranes were brought in to begin removing the wreckage once the bodies of victims had been recovered. (Reuters)

Another feature which might have prevented the accident in fact already existed. After the previous incidents in the Philippines and Taiwan, Airbus developed a new warning system for the A320 which would sound an alarm and trigger a caution message if one thrust lever was set above idle during landing. Airbus issued a service bulletin explaining how to install the alarm, but they lacked the authority to make it mandatory — that would have required action by regulatory bodies in the form of an Airworthiness Directive. However, no Airworthiness Directive was ever issued, and TAM Airlines, being averse to excess costs, declined to install the warning. French investigators, participating in the investigation on behalf of Airbus, would later push back against some of CENIPA’s criticism of the company, noting that Airbus had made available the technology which would have prevented this type of accident, and could not be held responsible for the fact that TAM Airlines was too cheap to buy it.

An engine came to rest inside the second floor of the TAM Express building. (Bureau of Aircraft Accidents Archives)

While pursuing their investigation of the airport itself, investigators found yet another point at which the accident could have been averted. In April 2006, representatives of various stakeholders had arranged a meeting to discuss the problem of standing water on the main runway at Congonhas. During the meeting, a representative of the ANAC suggested several mitigating actions, one of which was to require landing aircraft to have two working thrust reversers when the runway was wet. Subsequently, in December of that year, a draft document containing recommendations for jet operations on wet runways, including the thrust reverser requirement, was posted to the ANAC’s website. However, it was mysteriously taken down a few weeks later, and no similar requirement was put in place by airport authorities. Had they done so, the crash of flight 3054 would not have happened because the plane wouldn’t have been allowed to land at Congonhas in the first place.

Another similar missed opportunity presented itself in February 2007, when concerns over the condition of the runway prompted a district court to ban Boeing, Fokker, and Airbus jets from landing at Congonhas. However, the ban was quickly overturned on appeal because, in the opinion of the judge, the safety concerns presented before the court did not outweigh the economic consequences of banning the majority of traffic from Brazil’s busiest airport.

Firefighters work at the scene of the crash. (Reuters)

This incident highlighted the fundamental problem with Brazil’s air travel system: it was penny wise but pound foolish. In the short term, shutting down Congonhas would have had steep economic consequences, but in the long term it would have saved lives and spurred the development of more airports that could better serve the needs of the population.

The same could be said of TAM Airlines. As it sought to expand rapidly to fill the gap left by VARIG, airline management paid too little attention to the risks inherent in this strategy. Investigators would find that pilots at TAM were receiving fewer hours of simulator training than Airbus recommended, because the process would otherwise be unable to keep up with the pace of hiring. One item not covered in training was landing with one thrust reverser, a fact which was reflected in the presence of no less than five different reverser deployment techniques recorded on the accident airplane’s flight data recorder during the 28 landings leading up to the accident. Only one of these five techniques was correct.

Onlookers gathered to watch heavy machinery remove the wreckage. (Reuters)

The problems at TAM didn’t end there. The airline’s organizational structure left much to be desired, with various departments scattered around São Paulo with minimal interaction between them. The Safety Department barely communicated with the training department, preventing safety lessons learned in the course of operations from being incorporated into the training curriculum. Furthermore, the Safety Department only employed 21 qualified personnel, a laughable number for an airline with 19,000 employees. Because of this lack of staff, the department was unable to provide feedback to pilots who submitted safety reports, a fact which caused many pilots to believe no one was reading them. Pilots consequently stopped submitting the reports, and the Safety Department got the false impression that safety was improving. This kind of rank incompetence also extended to the structure of the “anonymous” safety reporting system, which could only be used from a company computer network that required a login using one’s real name, rendering the system in no way anonymous. Fearing consequences for reporting safety-related events, pilots rarely bothered to do so. And the list just kept going: the airline only employed one psychologist for 5,000 pilots, it didn’t keep proper track of the ratio of captains to first officers, and perhaps most worryingly, management was indirectly pressuring pilots to avoid diverting flights in order to dispel the company’s reputation for impunctuality.

Within a couple days, northbound traffic on Washington Luís Avenue had reopened, even as work continued at the crash site. (The New York Times)

This culture of chaos and incompetence went all the way to the top of Brazil’s aviation industry. CENIPA reserved harsh criticism for the recently-created ANAC, which it argued was too slow to implement reforms and had failed to coordinate its actions with Infraero, the Air Force, or the airlines. Investigators noted that the final rule requiring two working thrust reversers to land on a wet runway, originally drafted in April 2006, was not implemented until May 2008, well after the accident. And to add insult to injury, when CENIPA requested documents from the ANAC as part of its investigation into the crash, the agency took more than a year to respond!

In some ways, however, the crisis of Brazilian aviation may have been unavoidable. During the 2000s, demand for air travel was growing 15% year on year, an unsustainable pace for any country, let alone one where money allocated for infrastructure often seems to vanish into a black hole. But entrenched corruption, in combination with top officials who had carved out their “turf” and refused to share it, made even basic reforms impossible, and so Brazil continued to plunge headlong into this explosion of air travel while using infrastructure designed for passenger numbers from the 1980s. By 2007, Brazilians had gotten the impression that the authorities who were supposed to keep air travel safe and efficient in fact had no idea what they were doing. The government’s lack of response was perhaps best encapsulated by the words of tourism minister Marta Suplicy, who told enraged passengers to simply “relax and enjoy” the delays.

An engineered materials arrestor bed under construction at Congonhas, seen here on Google Street View in 2021. (Google)

In the years after the accident, the central role of Congonhas Airport in the Brazilian air traffic network was reduced, with many flights to São Paulo switching to the larger Guarulhos Airport instead. Nevertheless, Congonhas remains the second busiest airport in Brazil after São Paulo-Guarulhos. Today, it’s just as cramped as it has always been, and planes continue to land on those same carrier-like runways. However, in 2021, construction began on an Engineered Materials Arrestor System, an expensive but highly effective system designed to stop speeding airplanes by bogging them down in specially engineered gravel. The system, constructed on runway 35L close to where flight 3054 crashed, will surely help pilots feel less stressed about landing at Congonhas.

A TAM Airlines A320 passes over the memorial to the crash victims, located on the former site of the buildings destroyed in the disaster. (Leonardo Soares)

As for the aviation crisis, it eventually resolved itself, slowly and painfully, over the next couple of years. Infrastructure improvements were eventually made, although clearly not as many as there could have been, given the continued lack of safety margins at Congonhas. Inflexibility remains a serious problem, with nearly two thirds of Brazil’s domestic market split between just two airlines: TAM, now known as LATAM since its merger with LAN Chile; and low-cost carrier Gol. However, safety has improved, as none of Brazil’s major airlines have suffered a fatal accident since the crash of flight 3054, no doubt in part thanks to the 82 safety recommendations issued by CENIPA in order to prevent such a disaster from happening again. This safety record is reason enough to be optimistic that Brazilian aviation will not sink again to the depths it reached during the dark years of 2006 and 2007. Instead, let us remember that chaotic era, and the lives that it cost, as a cautionary tale of systemic collapse, and the consequences of kicking the can down the road. As Brazil found out the hard way, modernization — of both infrastructure and mindset — is best undertaken before it’s too late. We can only hope that that lesson has been learned.


Join the discussion of this article on Reddit!

Visit r/admiralcloudberg to read and discuss over 200 similar articles.

You can also support me on Patreon.



Admiral Cloudberg

Kyra Dempsey, analyzer of plane crashes. @Admiral_Cloudberg on Reddit, @KyraCloudy on Twitter and Bluesky. Email inquires ->