Et fly av typen Airbus A320-233 fra TAM, flight nummer 3054 (JJ 3054) tok av fra den internasjonale flyplassen Aeroporto Internacional Salgado Filho i Porto Alegre klokken 17:16, med kurs for Congonhas internasjonale lufthavn i São Paulo. Klokken 18:50 landet flyet på rullebane 35L i lett regn. Påfølgende undersøkelser av overvåkningsvideoer viser at selv om flyet landet på det normale touchdown-punktet på rullebanen, reduserte ikke flyet hastigheten som normalt, og forsvant over bortre kant av rullebanen i en hastighet omkring 90 knop eller omtrent 162 km/t. På grunn av måten Airbus skriver om automatfunksjonen på motorkraften og bremsespoilerne trodde pilotene at fordi revers-funksjonen på høyre motor ikke virket trengte de bare å kutte motorkraften på den ene motoren med reversfunksjon rett før landing for at både bremsespoilere og revers skulle virke automatisk. Fordi bare én motor ble redusert mens den andre fortsatt sto i "climb" (klatre)-modus som autopiloten normalt opererer med, ble ikke autopilotens motorkraftfunksjon (autothrust) koblet ut. Dermed kompanserte autopiloten med å øke kraften på høyre motor. Kraften ble dermed ulik med mer kraft på høyre motor som førte til at flyet svingte til venstre. Da kjørte det av rullebanen, passerte over en sterkt trafikkert vei, sneiet taket på en bensinstasjon og krasjet i et bygg tilhørende TAM Express.