What happened
On the early morning of the accident, a Korean Air Boeing 747-300 was conducting a scheduled flight from Seoul to Guam. While cruising at 41,000 feet, the crew established contact with the Guam Combined Center/Radar Approach Control (CERAP) and received instructions to prepare for landing on runway 06L. During the descent, the crew requested a deviation to avoid severe weather conditions.
As the aircraft approached the airport, the controller informed the flight crew that the glideslope was unusable. There was confusion within the cockpit regarding this information; while some crew members questioned the status of the glideslope, the captain initially indicated it was functional. As the aircraft descended through 2,800 feet, the crew was instructed to intercept the localizer. Despite the lack of a functional glideslope, the flight crew continued the approach, descending through various altitudes while performing landing checklists.
The Ground Proximity Warning System (GPWS) issued several alerts, including radio altitude callouts and a "sink rate" warning as the aircraft descended at 1,400 feet per minute. Although the crew attempted to initiate a missed approach at approximately 730 feet, the aircraft continued to descend through 670 feet, at which point the autopilot disconnected. The Boeing 747-300 struck trees on Nimitz Hill at an altitude of approximately 660 feet before sliding through dense vegetation and catching fire. The accident resulted in a significant fatality count.
Findings
Investigations revealed that the captain failed to properly brief or execute the nonprecision approach, while the first officer and flight engineer did not effectively monitor the procedure. These errors were compounded by pilot fatigue and insufficient training provided by the operator. Additionally, a critical factor was that a software patch intended to reduce false alarms had rendered the Minimum Safe Altitude Warning (MSAW) system at the Agana Center ineffective, meaning the aircraft's descent below the minimum descent altitude went undetected by controllers.
