A value or data structure that cannot be changed after it's created — any 'modification' produces a new value rather than altering the original.
In practice: Immutable data is safer to share across concurrent code (no mutation races) and easier to reason about (you always know what a value is). React's entire state update model is built on immutability — mutating state directly instead of replacing it is one of the most common React bugs.