'''Muistivuoto''' on tyypillinen [[ohjelmointi|ohjelmoinninohjelmointivirhe]], tyypillisimpiäjossa virheitä.[[tietokoneohjelma]] Tälläei tarkoitetaanvapauta muistinvaraamaansa [[dynaaminen muistinvaraus|muistia]] varaustakun ohjelmakoodissasitä ilmanei muistinenää vapauttamistatarvita. Kun muistivuotoa sisältävää ohjelman osaa suoritetaan riittävän monta kertaa, voi vapaa muisti loppua, mikä aiheuttaa ohjelmiston kaatumisen. Joissakin ohjelmointikielissä, kuten [[Java]]ssa, on automaattinen roskienkerääjä, joka pyrkii vapauttamaan ohjelmiston varaamia resursseja ohjelman uusiokäyttöön. Tällaista automaattista roskienkerääjää ei ole kuitenkaan esimerkiksi [[C (ohjelmointikieli)|C]]:ssä ja [[C++]]:ssa. Se voidaan toteuttaa olemassa olevilla kirjastoilla taikka toteuttaa itse ohjelman päättyessä kirjoittamalla kaikkien muuttujien päälle nollia. Muistin yli- ja alivuototilanteet on myös hyvä ottaa huomioon.