Špagetový kód (anglicky spaghetti code) je pejorativní označení, které používají programátoři pro zdrojový kód webové aplikace či jiného programu, který není dostatečně strukturovaný a fragmentovaný do jednotlivých, logicky spolu souvisejících funkčních částí.
Špagetový kód je zamotaný, vzájemně se zde prolínají části, které získávají data, zpracovávají je a také je formátují a zobrazují (na rozdíl od MVC architektury). K pochopení jedné části kódu je obvykle potřeba porozumět kódu celé aplikace (na rozdíl od správně navržených objektů při objektovém programování).
Nevýhody špagetového kódu:
- programátoři snadno mohou při úpravách kódu pokazit jiné části programu
- do takového chaosu není snadné zasvětit nového programátora
- programátoři odcházejí, protože dělat se špagetovým kódem není žádná radost