A observable change that occurs outside a function’s scope. Does not exist within a pure functional programming language. Invisible inputs to or outputs from functions.