# Loading

Visual indicators that communicate progress while content is being retrieved or processed, keeping users informed and reducing frustration.

## When to use

- **Fetching data** – When retrieving content from a server (e.g., loading search results).
- **Submitting forms** – When a process takes time to complete (e.g., payment processing).
- **Lazy loading content** – When loading additional elements as users scroll.

## Best practices

- **Use the right indicator** – Spinners for short waits, skeleton screens for longer loads.
- **Provide a sense of progress** – Show percentage indicators or estimated wait times when possible.
- **Avoid unnecessary loading states** – Instant actions don’t need a spinner; only use indicators for noticeable delays.

Loading indicators should be subtle but effective, keeping users informed without causing unnecessary distraction.
