When do you need a state-management library instead of useState/Context?
Quick answer
When global client state is complex/high-churn, or for server state. Use Zustand/Redux Toolkit for the former, React Query/SWR for the latter.
In detail
Local state + lifting + context cover most apps. Reach for tools when you feel pain: server state (API data) needs caching, dedup, refetch, and loading/error handling — React Query/SWR do this far better than effects. Complex global client state (carts, multi-step flows) benefits from a store with selectors and devtools (Zustand, Redux Toolkit). Key insight: server state and UI state are different problems with different tools.
💡Separate concerns
Server state (async, cached, shared) ≠ client/UI state (local, sync).
Why interviewers ask this: Tests architectural judgement, not just API knowledge.
Common follow-up questions
- →What does React Query give you over useEffect fetching?
This is 1 of 118+ questions in the React Interview Kit
Get every question with detailed answers, follow-ups and real code — plus coding challenges and a last-minute revision sheet. One-time payment, instant access.
⚡ Get the React Interview Kit → ₹399