Usodna napaka je vrsta računalniške težave, pri kateri neka vrsta dejavnosti povzroči, da trenutno delujoči program preneha delovati in se zapre. V večini primerov pojav usodne napake vodi do prikaza sporočila, ki delno razloži naravo napake, nato pa uporabnika vrne v operacijski sistem. Kljub zloveščemu zvoku imena pojav te vrste računalniške napake običajno ne pomeni, da je strojna oprema trajno onemogočena ali poškodovana, čeprav je za odpravo težave morda potrebna pomoč strokovnjaka za informacijski sistem.
Čeprav so razlogi za usodno napako različni, obstaja nekaj scenarijev, ki predstavljajo večino incidentov. Eden pogostejših je prejem nezakonitega navodila oziroma navodil, ki niso v skladu s programsko kodo. Ko se to zgodi, se program običajno izklopi, saj v programiranju ni protokolov, ki bi omogočili nadaljevanje.
V primeru, da se med izvajanjem določenega ukaza dostopa do neke vrste neveljavne kode ali podatkov, lahko pride do usodne napake. Osnovni vzrok za težavo je lahko koda ali podatki, ki so bili na nek način poškodovani ali pa niso več prisotni na trdem disku za uporabo. Program še enkrat ne more obdelati naročila in se izklopi, namesto da bi poskušal nadaljevati.
Ko je program prekinjen zaradi pojava usodne napake, obstaja velika verjetnost, da bodo vsi podatki, ki jih je program obdelal v času napake, izgubljeni. Zaradi tega je pomembno, da si med sejo dosledno vzamete trenutek za shranjevanje podatkov. To pomeni, da če nekdo uporablja program za obdelavo besedil, odvisnost od funkcije samodejnega shranjevanja ne zadostuje. Ustavitev vsakih nekaj minut za začetek ročnega shranjevanja bo vsaj pomenila, da je izguba podatkov minimalna, določeno datoteko pa je vedno mogoče kopirati in po potrebi naložiti v drug sistem.
Čeprav lahko izraz vzbuja strah pred velikimi težavami, je usodna napaka običajno resna, a kratkoročna težava, ki jo je mogoče uspešno prepoznati in popraviti. Z analizo prikazanega sporočila o napaki in uporabo teh podatkov za izolacijo težave je pogosto mogoče popraviti izvor napake in omogočiti, da se delovanje sistema nadaljuje brez nadaljnjih incidentov. Medtem ko imajo nekateri uporabniki morda ozadje za natančno diagnosticiranje in odpravljanje napak te vrste, bodo drugi potrebovali pozornost strokovnjaka, kot je računalniški programer.