You are right, if all your state is "cache state", then you don't need Redux. But at that point you don't need any state management library and are already searching for the wrong tool from the beginning. If you have actual global state, you'll come very quickly to a point where an actual state management library beats writing your own though, both in developer experience as well as performance.
Which you don't have to. React has been shipping useState, useContext, useReducer hooks for quite some time now - and will get you the exact same patterns seen in Redux (if so inclined).
- https://blog.isquaredsoftware.com/2021/01/context-redux-diff...
- https://blog.isquaredsoftware.com/2020/05/blogged-answers-a-...
Now if we're talking very high frequency updates, you'd probably keep the state in the component. That'd be faster then either approach - and such components are likely few in number.
Agreed, that's why I wrote "realizing" and not "having". Some devs use Redux as a hammer when they actually need a screwdriver - they just don't know better.
Kent C. Dodds has a great article covering both topics:
https://kentcdodds.com/blog/application-state-management-wit...