Performant and powerful data synchronization for React

Fetch, cache and update data in your React and React Native applications all without touching any "global state".

Declarative & Automatic

Writing your data fetching logic by hand is over. Tell React Query where to get your data and how fresh you need it to be and the rest is automatic. React Query handles caching, background updates and stale data out of the box with zero-configuration.

Simple & Familiar

If you know how to work with promises or async/await, then you already know how to use React Query. There's no global state to manage, reducers, normalization systems or heavy configurations to understand. Simply pass a function that resolves your data (or throws an error) and the rest is history.

Powerful & Configurable

React Query is configurable down to each observer instance of a query with knobs and options to fit every use-case. It comes wired up with dedicated devtools, infinite-loading APIs, and first class mutation tools that make updating your data a breeze. Don't worry though, everything is pre-configured for success!

Trusted in Production by
GoogleWalmartFacebookPayPalAmazonAmerican ExpressMicrosoftTargetEbayAutodeskCarFAXDocusignHPMLBVolvoOcadoUPC.chEFI.comReactBricksNozzle.ioGoogleWalmartFacebookPayPalAmazonAmerican ExpressMicrosoftTargetEbayAutodeskCarFAXDocusignHPMLBVolvoOcadoUPC.chEFI.comReactBricksNozzle.ioGoogleWalmartFacebookPayPalAmazonAmerican ExpressMicrosoftTargetEbayAutodeskCarFAXDocusignHPMLBVolvoOcadoUPC.chEFI.comReactBricksNozzle.io
ANNOUNCING
React Query Essentials
The official React Query course by Tanner Linsley
ENROLL NOW
Diamond Sponsors
Become a Sponsor
Gold Sponsors
Become a Sponsor
Silver Sponsors
Bronze Sponsors
Nozzle - Google Keyword Rank Tracker
Fans
  • Steven Miyakawa (@SamSamskies)
  • Alex Trost (@a-trost)
  • Andrey (@andreyvital)
  • Anoop (@Anoupz)
  • Daniel Almaguer (@deini)
  • Chris Vaszauskas (@chrisvasz)
  • Christian Rudh (@crudh)
  • Vianney Carel (@vcarel)
  • Freddie (@fdjones)
  • Johnny Bell (@johnnyxbell)
  • Garrett Fritz (@gfritzdev)
  • Juliano Farias (@frontendwizard)
  • Peter Pistorius (@peterp)
  • Agustín Villalobos (@agustin-v)
  • Panigo (@rangigo)
  • Jesse Jafa, (@awareness481)
  • Arijit Bhattacharya, (@hoodwink73)
  • Bryan Grill, (@brygrill)
  • Peter Hozák, (@Aprillion)
  • Arijit Bhattacharya, (@hoodwink73)
  • Jonathan Chang, (@jdkschang)
  • Ash Connell, (@ashconnell)
  • Sara Bee, (@doeg)
  • Mihir Kedia (@meitros)

Less Code. Fewer Edge Cases.

Instead of writing reducers, caching logic, timers, retry logic, complex async/await scripting (I could keep going...), you literally write a tiny fraction of the code you normally would. You will be surprised at how little code you're writing or how much code you're deleting when you use React Query.

One Dep, All the Features.

With React as the only dependency, React Query is extremely lean, but also strategically packed to the brim with features you're bound to need in almost any project. From weekend hobbies all the way up to enterprise e-commerce systems (lookin' at you Walmart!), React Query is jam packed with battle-hardened tools to help you succeed.

Backend agnosticDedicated DevtoolsAuto CachingAuto RefetchingWindow Focus RefetchingPolling/Realtime QueriesParallel QueriesDependent QueriesMutations APIAutomatic Garbage CollectionPaginated/Cursor QueriesLoad-More/Infinite Scroll QueriesScroll RecoveryRequest CancellationSuspense Ready!Render-as-you-fetchPrefetchingVariable-length Parallel QueriesOffline SupportSSR SupportData Selectors

Subscribe to our newsletter

The latest TanStack news, articles, and resources, sent to your inbox.

    I won't send you spam.

    Unsubscribe at any time.

    © 2020 Tanner Linsley. All rights reserved.