Maybe it's not enforced by redux itself, but you cannot use react-redux component then. React-redux will only rerender component , if state or part of it is new instance and not just mutated shallow copy, effectively requiring the state to be immutable.