Using useSwr to manage data

Caelin Sutch
2 min readDec 1, 2022

The React useSwr hook is a convenient and powerful tool for managing data in your React apps. It is based on the SWR (stale-while-revalidate) strategy, which is a popular technique for optimizing the performance of web applications by caching data and updating it in the background.


One of the key benefits of using the useSwr hook is that it makes it easy to fetch and manage data in your React components. Instead of writing your own code to fetch data from an API and handle any errors or loading states, you can use the useSwr hook to do all of this for you.

For example, let’s say you want to fetch a list of users from an API in a React component. With the useSwr hook, you can do this with just a few lines of code:

import useSwr from 'swr';

const { data, error, isValidating } = useSwr('/api/users', fetcher);

if (error) {
return <p>Error: {error.message}</p>;
if (isValidating) {
return <p>Loading...</p>;

return <ul>{ => <li>{}</li>)}</ul>;

In this code, the useSwr hook is used to fetch the list of users from the /api/users endpoint using the fetcher function. The hook returns an object with three properties: data, error, and isValidating. The data property contains the fetched data, the error property contains any error that occurred, and the isValidating property is true when the data is…



Caelin Sutch

Founder, engineer, designer. Passionate about building cool shit.