Indeterminate progress indicator

A looping spinner or moving bar that shows work is happening when the app cannot calculate a percentage.

loading spinner with no percentagethe bar that keeps sliding while it loadsendless loading barwait animation when the app does not know how longspinning loaderit is loading but there is no numberindeterminite progressthe spinning wheel that never says how long

See it

Live demo coming soon

What it is

An indeterminate progress indicator is a looping spinner or moving bar that says work is happening without claiming how much is complete. In HTML, a progress element with no value attribute represents this exact state; Material Design commonly shows it as a circular spinner or a bar sweeping along a track.

Use one only when the task has begun but its duration or total work is unknown. If you can measure completion, switch to a determinate bar; if the wait is just content arriving, a skeleton screen may communicate the page structure more usefully.

Gotcha: perpetual motion is not progress. Pair the indicator with a specific status label, mark the affected region as busy, and provide an error or retry state if the operation stalls. Respect reduced-motion preferences rather than forcing a fast loop on everyone.

Ask AI for it

Build an indeterminate linear progress indicator for an unknown-duration upload. Use a div with role='progressbar', aria-label='Upload progress', and no aria-valuenow, which is how ARIA expresses an unknown value. Place it beside the text 'Preparing upload' and set aria-busy='true' on the affected region. Inside a 4px muted track with overflow: hidden and border-radius: 999px, animate a child bar 40% of the track width across it with a CSS keyframe animation on transform: translateX(), looping over 1.2s. Under prefers-reduced-motion: reduce, replace the travelling motion with a static striped fill. When progress becomes measurable, swap in a native HTML progress element with value and max attributes.

You might have meant

progress barskeleton screenempty statetoast