Vedlejší efekt v programování nastává, když provádění funkce vede k tomu, že se stane něco jiného, než striktní provedení funkce a příjem standardního výstupu. To by mohlo znamenat, že se hodnota proměnné mění při výpočtu ve funkci. Deklarativní programovací jazyky mají zřídka vedlejší účinky; kód je přímočarý a nepopisuje každý krok potřebný k dokončení funkce. Pokud jsou objekty, které používají, neměnné, což v deklarativním programování obvykle jsou, budou se funkce chovat při každém spuštění stejně, aniž by měly vedlejší účinky v jiné části programu.
Vedlejší účinek často mění stav samotného programu, nejen místní oblast, ve které se objevuje. Toto se někdy označuje jako „globální“ změna, kdy se mění hodnoty proměnných mimo místní oblast dané funkce. Aby aplikace nebo počítačový program fungovaly, musí samozřejmě umožňovat úpravy prostřednictvím vedlejších účinků: výstupy se někdy musí změnit. A databáze budou mít mnoho vedlejších účinků při změně a mutaci dat. Ale čistě funkční programování má také výhody.
Funkční programování, které se vyhne vedlejším účinkům, je pro vývojáře snazší číst a analyzovat. Čisté funkce (které nemají žádné vedlejší účinky) provádějí pokaždé, když se opakují, stejný výpočet, bez jakékoli variace nebo vedlejšího účinku. Vyhýbání se vedlejším účinkům v programu zvyšuje jeho čitelnost a spolehlivost.