# Choose a loading indicator

> Pick a progress bar, a spinner or nothing at all, and see what you can style with AjaxPress Pro.

Source: https://arraystory.com/docs/ajaxpress/loaders-and-transitions/

While the next page loads, AjaxPress shows a loading indicator, so visitors know their click registered. Most pages arrive in well under a second, so the indicator is brief, but on a slow connection it's what tells visitors something is happening.

You'll find everything on **Settings → AjaxPress → Animations**, with a live preview beside the settings.

## Pick a loader

Under **Loader → Select Loader**, choose one of three:

| Loader | What visitors see | Good for |
| --- | --- | --- |
| **Progress Bar** (default) | A thin bar across the top of the screen that fills as the page loads | Almost every site. It's unobtrusive and familiar |
| **Spinner** | A spinning icon, with an optional message, over a light overlay | Sites where pages take a moment, and you want the wait to be obvious |
| **None** | No bar or spinner | Fast sites, or when you'd rather rely on a [page transition](https://arraystory.com/docs/ajaxpress/page-transitions/) |

Choosing a loader is free. Click **Save Settings** after you pick one.

## Free and Pro

With the free plugin, both loaders use a clean default look: a blue shimmering bar along the top, or a centred spinner.

[AjaxPress Pro](https://arraystory.com/docs/ajaxpress/ajaxpress-pro/) lets you style every part of them:

- [Progress bar](https://arraystory.com/docs/ajaxpress/progress-bar/): position, thickness, colour, transparency and shimmer.
- [Spinner](https://arraystory.com/docs/ajaxpress/spinner/): icon, message, layout, font and backdrop.
- [Loading cursor](https://arraystory.com/docs/ajaxpress/loading-cursor/): the mouse pointer while a page loads.
- [Page transitions](https://arraystory.com/docs/ajaxpress/page-transitions/): fade, slide, flip or scale between pages.

For anything else, use [Custom CSS](https://arraystory.com/docs/ajaxpress/custom-css/), which is free.

## Which should I pick?

Start with the progress bar. Add a short **Fade** [transition](https://arraystory.com/docs/ajaxpress/page-transitions/) if you have Pro, and [prefetch](https://arraystory.com/docs/ajaxpress/prefetch/) to make pages appear before the bar has much to do. Switch to the spinner only if your pages are slow to load and visitors seem unsure whether their click worked.

## For developers

Replace the loader entirely with your own, from a theme or plugin, with `registerLoader()`. See the [JavaScript extension API](https://arraystory.com/docs/ajaxpress/javascript-extension-api/#custom-loader).
