redux VS Recoil

Compare redux vs Recoil and see what are their differences.


Predictable state container for JavaScript apps (by reduxjs)


Recoil is an experimental state management library for React apps. It provides several capabilities that are difficult to achieve with React alone, while being compatible with the newest features of React. (by facebookexperimental)
Our great sponsors
  • SonarLint - Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
  • Scout APM - Less time debugging, more time building
  • OPS - Build and Run Open Source Unikernels
redux Recoil
123 20
57,400 15,504
0.5% 3.6%
8.9 9.5
5 days ago 6 days ago
TypeScript JavaScript
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.


Posts with mentions or reviews of redux. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-01-14.


Posts with mentions or reviews of Recoil. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-01-15.
  • State Management Recommendation - Working with APIs
    4 projects | | 15 Jan 2022
    One popular is Zustand, but meta recently dropped a new react lib called recoil which might come up with a similar solution.
  • My tech choices for building a modern SPA
    11 projects | | 9 Jan 2022
    If I do need shared client state, Redux works fine, but I have started to prefer Recoil. With Recoil, you don’t have to write reducers and actions. You can treat Recoil atoms like a shared useState. That reduces the code volume and ceremony needed to manage shared state. So my first choice is Recoil. It's pretty new though, so for more conservative projects, I choose Redux.
  • What are the new and exciting tech for React projects for 2022?
    16 projects | | 5 Jan 2022
    I've had a great development experience using Recoil instead of Redux in production. It fits perfectly in the react hook era.
  • advanced context with hooks. Trying to pass custom methods int the provider value
    3 projects | | 29 Dec 2021
    There's a handful of very tiny state management solutions that resolve this rerendering issue if you do run into performance issues down the road. Zustand, Recoil, and Jotai being the most popular of the minimalist solutions. Simple example comparing Zustand and Context that I made for a friend a while back. If you're doing this kind of thing all over the place, a more robust solution like MobX or Redux is probably a good thing to look into.
  • TIL, none of the popular state management tools are using React context under the hood, they all build their custom state subscription model
    4 projects | | 27 Dec 2021
    Have you ever hear of Recoil? I'm pretty sure it uses some crazy combination of Context and Refs.
    4 projects | | 27 Dec 2021
    The benefits of using a state management library is that it doesn't need to rerender the entire state tree every time the state changes (this is context's default behavior). Check out the video on the recoil homepage, the creator of recoil explains this concept really well:
  • How to get better and easier state management with Redux Toolkit
    11 projects | | 1 Dec 2021
    Outside there are more solutions for state management like Zustand, MobX and Recoil to name a few, so even if you have experience (or not) with those tools I would love to hear your feedback and experiences with state management!
  • State management library use-interstate
    2 projects | | 16 Nov 2021
    It can do more. It supports multikey state subscriptions, selectors. It is fully synced in its behavior with the natural React hook useState (which is not true for recoil, for example). It is because the library is written with the use of only standard React hooks under the hood. It is very flexible and allows dynamically resubscribing components to different states at any time of their life. With the help of TypeScript, the library use-interstate allows scaling to big applications. I tested its performance by comparing it with the libraries Redux and recoil: (this is a description for this project). It is at least not worse (some scenarios show the advantage of use-interstate). I put my effort to document every detail of the library, so feel free to try it. And please post your feedback.
  • React state management: Context API vs Recoil 🎯
    1 project | | 1 Nov 2021
    So even though there is bunch of different state management options available when it comes to React applications, I decided to test the Context API and Recoil.
  • Using Recoil instead of Redux For State Management In React Applications
    6 projects | | 16 Sep 2021
    Recoil is an open-source state management library with more than 14k stars on Github, it was invented by Dave McCabe, a Software Engineer at Facebook. It provides a global state so all components in a React application can share states easily and it is minimal compared to Redux with no boilerplate code setup needed.

What are some alternatives?

When comparing redux and Recoil you can also consider the following projects:

zustand - 🐻 Bear necessities for state management in React

MobX - Simple, scalable state management.

react-query - βš›οΈ Hooks for fetching, caching and updating asynchronous data in React

redux-toolkit - The official, opinionated, batteries-included toolset for efficient Redux development

rtk-query - Data fetching and caching addon for Redux Toolkit

rematch - The Redux Framework

effector-react - The state manager β˜„οΈ

react-final-form - 🏁 High performance subscription-based form state management for React

cerebral - Declarative state and side effects management for popular JavaScript frameworks

fluxible - A pluggable container for universal flux applications.

reflux - A simple library for uni-directional dataflow application architecture with React extensions inspired by Flux

fluxxor - :hammer_and_wrench: Flux architecture tools for React