Load content progressively rather than waiting for everything to be ready.
Don't block the whole page until all data loads.
Loading states give users feedback when content or processes aren't immediately available. Effective use of loading states reduces perceived wait times, and improves UX and retention by communicating the system is actively working on the request.
Shows the specific progress of a task, typically represented by a progress bar. Use it for longer processes where the duration time can be estimated.
Use this to show an ongoing process without specifying progress. It's useful when you can't predict the task's duration. Ideal for shorter processes, it often uses Spinner or Skeleton components.
Wait times affect which option to choose when providing a loading state. It is hard to estimate how long the process will take, but you can use them as general guidance.
Loading time | Usage |
---|---|
Less than 1 second | Don't display a loading state. Showing a loading indicator for a brief duration can be jarring for the user due to the flickering of the content. |
1 - 10 seconds | Use indeterminate loading indicator such as Spinner or Skeleton. |
More than 10 seconds | Use a progress bar as the loading indicator and provide an estimate of the duration if possible. |
Avoid blocking the whole page until all data loads. Load the page incrementally based on the importance of the content.
Load content progressively rather than waiting for everything to be ready.
Don't block the whole page until all data loads.
Loading content independently can improve perceived performance. However, too much independent loading might cause a visual overload.
Group elements that form logical units, serve related purposes, or are close to each other. For example, you might group all elements of a user profile card to load together, rather than loading the avatar, name, and details separately.
Group related elements together into logical groups and load them independently.
Don’t load every element independently. It creates chaotic environment.