Image Alt Text Checker

Which images are missing alt text, which have useless alt text, and which are correctly empty.

View the page source in your browser (Ctrl+U or ⌘+U) and paste the whole thing. Nothing is uploaded.

0Images
0No alt attribute
0Empty alt (decorative)
0Poor quality
0Good

Every image on the page

SourceAlt textAssessment

Also checked

    Runs in your browser. The HTML you paste is parsed in this tab with the browser's own DOMParser, which builds an inert document — scripts in your markup never run and nothing is requested from the pages it references. That means you can safely audit a staging site, a client page behind a login, or an unpublished draft.

    What the image Alt Text Checker does

    Alt text is the description read aloud when someone cannot see an image, and the text a browser shows when an image fails to load. It is an accessibility requirement first and an SEO benefit second — it is how images get understood and indexed, but the reason to write it well is that people rely on it.

    This checker finds every <img> in your HTML and sorts them into four groups. Missing means no alt attribute at all, which is the real failure: screen readers fall back to reading the filename aloud, so a listener hears “IMG underscore 4 0 2 1 dot jay peg”. Empty means alt="", which is correct and deliberate for decorative images — it tells assistive technology to skip the image entirely. Poor covers alt text that exists but does not work: generic words like “image”, the filename copied in, text over 125 characters, duplicates across the page, and the redundant “image of” prefix that screen readers already supply. Good is everything else.

    The distinction between missing and empty is the one people get wrong. Leaving off the attribute is never right. Setting it to empty is right whenever the image adds nothing — a divider, a background texture, an icon next to a label that already says the same thing. Describing a decorative image is as unhelpful as failing to describe an informative one.

    The tool also flags CSS background images, which cannot carry alt text at all. If a background image conveys information rather than decoration, it is in the wrong place and belongs in the HTML.

    How to use it

    1. Paste your page's HTML source.
    2. Fix every image in the No alt attribute column first — that is the accessibility failure.
    3. Then work through the poor-quality ones, writing what the image actually shows.
    4. Set alt="" deliberately on anything purely decorative.

    A worked example

    Four versions of alt text for a photograph of a treadmill test rig:

    Alt textAssessment
    (none)Failure — the filename is read aloud instead
    IMG_4021.jpgFilename as alt — no better than nothing
    running shoes flat feet best running shoes stabilityKeyword stuffing — unhelpful and detectable
    Treadmill test rig with a pressure plate under the beltGood — describes what is in the picture

    The last one contains no target keyword and is the correct answer. Alt text describes the image; if the keyword genuinely describes what is shown it will appear naturally, and if it does not, forcing it in produces text that is wrong for the person relying on it.

    Frequently asked questions

    What is the difference between a missing alt and an empty alt?

    A missing attribute is an error — assistive technology falls back to reading the filename. An empty alt=\"\" is a deliberate instruction to skip the image, which is correct for anything purely decorative. Always include the attribute; choose its content deliberately.

    How long should alt text be?

    Long enough to convey what the image shows, usually under 125 characters. If an image needs more than that, it probably carries information that belongs in the page text or a caption, where everyone can read it.

    Should I put keywords in alt text?

    Only if they genuinely describe the image. Alt text exists for people who cannot see the picture, and stuffing it is both an accessibility failure and a spam signal. If a keyword accurately describes what is shown, it belongs there anyway.

    Do CSS background images need alt text?

    They cannot have it. If a background image carries information, that is a sign it should be an <img> element instead. Backgrounds are appropriate only for decoration.