Come al solito non vi fu una sola causa, ma una serie di errori e negligenze che, messi insieme portarono all'incidente...
Tralasciando le cause tecniche (il ricevitore dell'ILS, sostituito a Linate, si rivelò difettoso, i cross check di quota e distanza vennero fatti male o non fatti del tutto), e lo Human Factor (il primo ufficiale,molto giovane, si avvide che qualcosa non tornava e suggerì di riattaccare, il comandante, molto esperto, non diede peso alle osservazioni del collega e volle continuare l'avvicinamento) ci furono anche responsabilità da parte del CTA svizzero.
Normalmente la separazione dagli ostacoli è responsabilità del pilota, tranne il caso in cui il volo sia sotto vettore radar.
Per difinizione il vettoramento termina, o quando l'aeromobile si reinserisce sulla rotta autorizzata, o quando riporta di essere completamente stabilizzato sull'ILS (per completamente si intende stabile sia sul Loc che sul Glide).
Il controllore di Zurigo, dopo aver autorizzato il volo AZ all'ILS, omise di chiedergli di riportare stabile e lo stesos volo AZ omise di fare tale riporto.
Quindi, formalmente, la separazione dagli ostacoli non cessò mai di essere responsabilità del CTA.
A prescindere da questo il controllore aveva sempre il dovere di effettuare il monitoring della quota, anche dopo aver cambiato il volo con la TWR.
Purtroppo invece il volo AZ si era stabilizzato su un sentiero di discesa circa 1000 piedi più in basso di quello nominale, e nessuno se ne accorse!
In realtà il controllore si avvide che qualcosa non andava solo quando la separazione con l'aeromobile che seguiva il Dc-9 (un Sabena, se non ricordo male) andò a decadere (il software di allora del radar di Zurigo, in caso di perdita del ritorno del radar, anziché cancellare la traccia, la "congelava" nell'ultima posizione osservata. Quindi sul radar, dopo l'incidente, la traccia del Dc-) si ferma, mentre quella dietro continua l'avvicinamento).
A quel punto le registrazioni sono abbastanza agghiaccianti:
il CTA avvisa la Sabena che c'è un aeromobile poche miglia avanti a lui e gli chiede di riportarlo in vista. La Sabena risponde "Traffic not in sight, but we see flames below us..." Il controllore non può rispondere altro che "Roger..."