Alt text check
Alt text is judged by what the image is for, not by how well the words describe it. Paste one image's alt text, say whether the image informs, decorates, works as a link or button, or carries a chart, and the check applies W3C's rules for that role. It runs in your browser and sends nothing anywhere.
Check one image's alt text
Alt text check — altstamp.com
Pre-filled with a bakery's product photo. Change any field; the findings update as you type. Nothing you type leaves your browser.
Load an example
Only what sits between the quotes of alt="…". Leave it empty for alt="".
- Role:
- Informative
- Alt text:
- "Picture of sourdough bread, best sourdough bread Portland, fresh sourdough bread bakery"
- Text beside it:
- Our country sourdough, baked every morning from a 36-hour starter.
What the check found
Fail: misses what 1.1.1 and W3C's alt decision tree ask. Fix: W3C's images tutorial advises against it. House style: our own line, not a WCAG rule.
- Fail
Reads like a list of search keywords
"sourdough" and "bread" each come up three times or more. Alt text is read aloud to people; a string of search terms does not tell them what the image shows.
Better
<img src="…" alt="One plain sentence about what the image shows">
- Fix
Starts with "Picture of"
Screen readers already announce an image, so the opener is said twice. Keep a word like painting or photograph only when the kind of picture matters.
Better
<img src="…" alt="Sourdough bread, best sourdough bread Portland, fresh sourdough bread bakery">
Roughly what a screen reader says
image, Picture of sourdough bread, best sourdough bread Portland, fresh sourdough bread bakery
The exact words vary by screen reader and browser.

What WCAG asks
- 1.1.1Non-text ContentA
- 2.4.4Link Purpose (In Context)A
- 1.4.5Images of TextAA
What it checks
The check reads one image at a time: its alt text, the role you say it plays, and the words around it. It then runs the rules below and reports each problem as a word, with the reason and a better pattern. The role matters most. The same alt can be right on a photo and wrong on a logo that links home, and W3C's alt decision tree starts from that question, not from the words.
| Rule | Applies to | Based on |
|---|---|---|
| No alt attribute at all | Every image | W3C decorative images: some screen readers read the file name |
| Empty alt on an image that carries meaning | Informative, chart | 1.1.1 and the decision tree |
| Empty alt in a link or button with no other text | Link or button | W3C functional images |
| Words in the alt of a decorative image | Decorative | 1.1.1, decoration ignored by assistive technology |
| A space between the quotes | Every image | W3C tips |
| A file name, a camera name or a placeholder word | Every image with alt | 1.1.1, equivalent purpose |
| The same word three times or more | Every image with alt | 1.1.1, equivalent purpose (our test) |
| Opens with "image of", "picture of" and similar | Every image with alt | W3C tips |
| Repeats the text beside it | Every image with alt | The decision tree |
| Says what an icon looks like, not what it does | Link or button | W3C functional images |
| Says "link", "button" or "click here" | Link or button | W3C tips |
| No long description for a chart | Chart, graph, map | W3C complex images |
| Longer than 150 characters | Every image with alt | House style (W3C sets no number) |
What it cannot do is look at the picture. It cannot tell you that "red brick shop front" is really a blue door, or that the photo you called decorative is the only place your opening hours appear. Those two judgements stay with whoever knows why the image is on the page. Site-wide scanners share the limit from the other side: as GitHub's engineers put it, most alt text checkers test whether an image has a name at all, not whether the name says anything useful. Our testing tools comparison sets the scanners side by side.
How to use it
- Pick what the image does. Ask in the decision tree's order: is it in a link or button, does it add meaning the text does not, and is that meaning a chart or map? If none of these, it is decorative. A picture with words in it lands on the same four answers: decorative when the words are already on the page, link or button when it is an icon with a job, and otherwise informative, with its words in the alt. Our guide to decorative images and empty alt covers the borderline cases.
- Paste the alt text from your site builder's image settings, or from the page source between the quotes of alt="". If the image has no alt attribute at all, tick the box instead.
- Add the caption or sentence beside the image, or for a linked image the link's own text. That is what lets the check catch repetition, and an empty alt that is correct because the link text already names it.
- Read the findings worst first, rewrite, and check again. For worked rewrites of product photos, logos, charts and icon buttons, see alt text examples.
What WCAG asks
What WCAG asks: 1.1.1 Non-text Content, Level A
All non-text content that is presented to the user has a text alternative that serves the equivalent purpose, except for the situations listed below.
Controls, Input If non-text content is a control or accepts user input, then it has a name that describes its purpose.
Decoration, Formatting, Invisible If non-text content is pure decoration, is used only for visual formatting, or is not presented to users, then it is implemented in a way that it can be ignored by assistive technology.
"Equivalent purpose" is the phrase that does the work. The alt is not a caption and not a description for its own sake; it does the job the image does. That is why a logo in a link becomes its destination, a chart gets a short name plus its data in text, and an ornament gets nothing. It is a Level A criterion, the first line of the WCAG 2.2 AA checklist, and images of text are a separate line there (1.4.5).
What a fail usually looks like
WebAIM's 2026 scan of the top million home pages found 16.2% of images with no alternative text at all (not counting alt=""), and 45% of those were linked images, which leaves the link with no name. Of the images that did have alt, 10.8% had questionable or repetitive text: "image", "graphic", a file name, or the same words as the text beside it. Those are the patterns this check looks for.
| Image | Before | After |
|---|---|---|
| Product photo on a bakery page | Picture of sourdough bread, best sourdough bread Portland | Round loaf with a dark blistered crust, cut open to show an airy crumb |
| Logo that links to the home page | Harbor Plumbing logo | Harbor Plumbing home |
| Search icon button | magnifying-glass.svg | Search |
| Divider between sections | decorative flourish divider | (empty: alt="") |
| Bookings chart on a results page | Chart | Bar chart of bookings by month, with the figures in the table below |
The same rules hold outside the website. A newsletter's images need alt for readers whose mail app blocks pictures (see accessible email), and an image in a PDF needs its alt set in the document itself (see how to make a PDF accessible). To hear your own alt text in place, try a screen reader for ten minutes with our screen reader testing guide.