CSS Loading Spinner Generator
Generate a simple animated CSS loading spinner.
Pure-CSS loading spinners
A spinner reassures users that something is happening, and a simple CSS one needs no images or libraries. This generator builds an animated spinner from adjustable size, color, and speed, with a live preview so you can see it turn.
Hand-writing the rotation keyframes and border trick each time is repetitive, so a ready recipe is handy. Tune the look, watch it spin, and copy the CSS to drop a lightweight loading indicator into any project.
Copy-ready spinner
The spinner is a bordered element rotated with a keyframe animation, needing no image or library. It is generated in your browser, nothing uploaded.
Frequently asked questions
How is the spinner built?
A square element with border-radius: 999px, a light gray border, and one colored top border, rotated 360 degrees by a linear infinite animation at the speed you choose.
How do I make the spinner accessible?
Add role="status" and visually hidden text such as "Loading…" so screen readers announce it, since the spinning border itself is invisible to them.
What speed looks right?
600 to 1000ms per turn feels active without being frantic. The default is 800ms; much faster can look like an error, and much slower looks stuck.
Related tools
Practical utilities for front-end design and implementation work.