Image alt text: why it matters and how to write it

Alt text is the written description of an image: the text a screen reader speaks aloud to someone who can't see the picture, and the text a search engine reads to understand what the image shows. It's one of the few things on a page that's simultaneously an accessibility requirement, a small SEO win, and a sign of whether a site was built with care.

It's also one of the most neglected, which is why our check flags both missing alt text and the generic, useless kind ("image," "photo," "image1.jpg").

What alt text is

It's the alt attribute on an image tag:

<img src="dashboard.png" alt="Acme dashboard showing weekly active users trending up" />

When the image can't be seen (because the user relies on a screen reader, or the image fails to load, or a search engine is cataloging it), the alt text stands in for it. Good alt text means those situations still make sense. Missing or generic alt text means they don't.

Why it matters

Accessibility, first. For someone using a screen reader, alt text is the image. "Image" or no alt at all tells them nothing; they just hear "image, image, image" down the page. Real descriptions let them actually use your site. This is the main reason to do it, and in many places it's a legal accessibility requirement, not a nicety.

SEO, second. Search engines use alt text to understand images, which helps you show up in image search and gives the engine more context about the page. It's a modest signal, but a free one.

Resilience, third. When an image fails to load (slow connection, broken path), the alt text shows in its place. Descriptive alt keeps the page usable; "img_4821.jpg" makes it look broken.

How to write good alt text

The trick is to describe the image's purpose and content, the way you'd describe it to someone over the phone:

  • Be specific. Not "chart" but "bar chart showing 40% faster load times after optimization."
  • Keep it concise. A sentence, usually. You're describing, not narrating.
  • Don't start with "image of" or "picture of." Screen readers already announce it's an image; the prefix is redundant.
  • Match the context. The same photo might warrant different alt on different pages, depending on why it's there.
  • Skip the keyword stuffing. Cramming search terms into alt text is the old spam move; it reads badly to screen readers and engines both. Describe the image honestly.

The one exception: decorative images

Not every image needs descriptive alt. Purely decorative images (background flourishes, spacers, a divider line) should have an empty alt attribute:

<img src="divider.svg" alt="" />

An empty alt="" tells screen readers "skip this, it's decoration." That's correct and intentional, different from omitting alt entirely, which leaves the reader to announce the filename. So: descriptive alt for meaningful images, empty alt for decorative ones, never a missing attribute or a filename.

How to audit your images

  1. Look for images with no alt attribute at all, the worst case.
  2. Look for generic alt: "image," "photo," "logo," or filenames like "DSC_0042.jpg."
  3. Check that meaningful images describe what they show, and decorative ones use alt="".
  4. Prioritize the images that carry information (charts, product shots, diagrams) over the purely decorative.

Most CMSs have an alt field next to each image upload. The fix is usually less about code and more about a habit: write a real description every time you add an image.

Common mistakes

  • Missing alt attributes entirely.
  • Generic placeholders like "image," "photo," or the raw filename.
  • Keyword-stuffed alt that reads as spam.
  • Decorative images with descriptive alt that makes screen readers announce noise (use alt="").
  • Over-describing: a paragraph of alt text where a sentence would do.

FAQ

Does alt text help SEO?

Modestly and for free. It helps with image search and gives engines context about the page. The bigger reason to write it is accessibility.

Should every image have alt text?

Every image needs an alt attribute. Meaningful images get a description; purely decorative ones get an empty alt="" so screen readers skip them.

How long should alt text be?

Usually a sentence. Describe what matters about the image concisely. You're not writing a caption or an essay.

Is it bad to put keywords in alt text?

Stuffing keywords is bad for both screen readers and engines. A natural, accurate description that happens to include relevant words is fine; a keyword list is not.

Key Takeaways

  • Alt text serves three roles at once: it is read aloud to screen reader users, shown when an image fails to load, and read by search engines to understand the image, so missing or generic alt fails all three.
  • Every image needs an alt attribute. Meaningful images get a specific description, and purely decorative images get an empty alt="" so screen readers skip them; a missing attribute is never correct.
  • Good alt text is specific and concise, usually a single sentence, and should not begin with "image of" or "picture of," because screen readers already announce that it is an image.
  • Keyword stuffing in alt text reads as spam to both screen readers and search engines; an accurate description that happens to include relevant words is fine, but a list of keywords is not.

Want to find images on your site with missing or generic alt text? Run a free audit. We flag both. More in the SEO explainers.