Free Online CSS Skeleton Loader Generator
Build skeleton placeholders for text lines of varying widths, a heading, an avatar circle, an image block and a full card. Set the base and highlight colour, the corner radius, the shimmer direction and speed, or use a plain pulse instead, with a reduced motion block written every time.
On the left is a card skeleton, on the right the pieces on their own. Both are real elements running the generated CSS, on a white surface so the colours read the way they will on a light page.
Enjoying WizTools123? Help keep our server infrastructure 100% free and open for everyone.
How to Build a CSS Skeleton Loader
A few steps, and nothing is uploaded.
What to Know About Skeleton Screens
Including why a skeleton that does not match the layout is worse than none.
@media (prefers-reduced-motion: reduce) block: the shimmer is switched off and the block sits at its base colour, and the pulse is slowed by the factor you choose. A static grey placeholder still says loading perfectly well, which is why stopping it is safe here in a way it is not for a spinner.
aria-hidden="true" so it is not read as a pile of empty elements, and put the message in a live region, for example a wrapper with role="status" containing the text Loading. The comment at the top of the output shows that shape.
Key Features & Capabilities
What this tool does, and what it deliberately does not.
About the CSS Skeleton Loader Generator
A skeleton screen is a promise about the layout. It says the content is coming and it will be this shape, and it works because the eye has somewhere to rest while the network does its job. It stops working the moment the placeholder and the real content disagree about size, because then the arrival of the data throws the page around, and the person loses their place in whatever they were reading.
This page generates the pieces that a skeleton is made from rather than pretending to know your component. There is a base class that carries the colour and the animation, and then a line, a title, an avatar and an image block, plus a small card layout showing how they stack. The preview puts a real card skeleton on a white surface next to the individual pieces, so you can judge the colours the way they will actually appear.
The two decisions worth explaining are the animation and the reduced motion block. The shimmer is a gradient whose background position is animated, which the compositor handles cheaply, and the pulse is a plain background colour animation for when even that is too much on a long list. The reduced motion block is always written, and unlike a spinner a skeleton loses nothing by standing still, so the shimmer is switched off completely rather than merely slowed.
Frequently Asked Questions
Layout shift, reduced motion, screen readers and when to use one.