Alt text examples › Decorative images
The best alt text for a decorative image is no text at all: alt="" tells screen readers to skip it. The mistake goes both ways: describing ornaments wastes the listener's time, while marking a meaningful image as decorative hides information. The test: if you removed the image, would the page lose anything? If not, it is decorative.
| # | The image | Bad alt | Good alt | Why |
|---|---|---|---|---|
| 1 | Abstract gradient blob behind a hero headline | blue and purple gradient shape | alt="" | Pure visual styling. Ideally a CSS background, otherwise empty alt. |
| 2 | Divider swirl between blog sections | divider | alt="" | Layout ornament: announcing it interrupts reading. |
| 3 | Stock photo of a laptop on a desk at the top of a generic blog post | laptop | alt="" | When the photo adds no information to the article (mood only), empty alt is correct. If the article is about that laptop, describe it. |
| 4 | Image with no alt attribute at all | (alt attribute missing) | alt="" | Missing is not the same as empty: screen readers may read "DSC_0042 dot JPG". Always write the attribute. |
| 5 | Icon next to a text link that already says "Download PDF" | PDF icon | alt="" | The adjacent text carries the meaning; the icon would be announced twice. |
| 6 | Background texture image used as an <img> in a card | texture | alt="" | Ornamental texture carries no content. |
| 7 | Photo of a chef plating a dish on a restaurant homepage, next to the text "Seasonal tasting menu" | alt="" | Chef plating a seasonal tasting dish of scallops and peas | Not decorative: it shows what the restaurant serves. Marking informative images as decorative is the opposite mistake. |
| 8 | Spacer GIF in an old email template | spacer | alt="" | Layout hacks must be invisible to assistive tech. |
WCAG 1.1.1 Non-text Content (Level A): pure decoration must be implemented so assistive technology can ignore it, which means alt="" (empty, not missing). A missing alt attribute makes many screen readers read the file name instead. The full requirement is explained in our guide to WCAG 1.1.1 alt text requirements.
Upload a photo to the free generator and get a draft in seconds (3 images a day, no signup). On WordPress, Alt Text BYOK writes it automatically on upload and fixes your whole media library in bulk, using your own AI key.
Try the free alt text generator Alt Text BYOK for WordPress