Skip to content

Image Alt Text Checker

This image alt text checker fetches a single URL and reads the alt attribute on every image it finds.

Note

We fetch the URL server-side and read every <img> tag's alt attribute. alt="" is correct markup for a decorative image, not a defect, so we only flag an image whose alt attribute is absent entirely or contains only whitespace. Images with real alt text also get five quality checks: over 125 characters (the screen-reader length guideline), a redundant leading phrase such as "image of" (a screen reader already announces it's an image), the same alt text reused across two or more images (usually a copy-pasted placeholder rather than a real description), alt text that is itself a filename rather than a description (a screen reader then just announces the filename), and an underscore in the image's filename (search engines read a hyphen as a word separator but not an underscore).

You can see which images have no alt text at all, which are marked alt="" (the correct way to flag a purely decorative image) and which already carry real, descriptive text. Images with real alt text are also checked for length against the screen-reader guideline and for a redundant opening phrase like "image of".

Use this tool often? Bookmark this page, so it is one click away next time.

Email me this result

Want a copy for your records or a client? Leave your email and we'll send you this result. It is written by a real person at Crawl Cove, not an automated blast, so it may take a little while to arrive. We'll only use your address to send it, unless you also tick the box below. Privacy policy.

That email address doesn't look right. Please check it and try again.

Something went wrong saving your address. Your result above is unaffected; please try again.

Got it. We'll email your result to you. Nothing else lands in your inbox unless you ticked the tips box.

What this image alt text checker shows you

Paste a URL and it is fetched server-side. The tool reads every <img> tag on the page and sorts each one into three states: no alt attribute at all, alt="" (empty, marking the image as decorative), or alt text with real content. Only the first is a genuine defect; the other two are both correct markup for different kinds of image.

How to check if an image has alt text, by hand

Right-click the image and choose Inspect (Chrome, Edge and Firefox all call it that). The developer tools open on its <img> tag: alt="..." with words inside means it has alt text, alt="" means it has been marked decorative, and no alt at all means it is missing. To go through every image on a page, view the source instead (Ctrl+U on Windows, Option+Command+U in Chrome on a Mac), search for <img and read the alt attribute on each match. That is fine for a handful of images. This checker does the same reading for up to 200 images in one go and sorts them into missing, decorative and described. Two limits apply to the source view and to this checker alike, because both read the HTML the server sends: an image a script adds after the page loads is not in it, and only Inspect, which shows the live page, will find that one. An image set as a CSS background has no alt attribute to check at all, so if it carries meaning, the text belongs on the page instead.

Why alt="" is not a defect, even though it looks empty

An empty alt attribute is the W3C-correct way to mark an image as purely decorative, telling assistive technology to skip it because it carries no information a screen reader needs to announce. The defect is an ABSENT alt attribute, not a deliberately empty one: without it, a screen reader falls back to reading out the image's file name, which is rarely useful and sometimes confusing. A checker that flags every alt="" as an error pushes you toward writing text for images that do not need it.

The one case an empty alt does not excuse

Whitespace inside the attribute, alt=" " rather than alt="", is treated as a defect here rather than as decorative markup. Nobody marks an image decorative by typing a space; it reads as an accident, and the fix is either real descriptive text or a genuinely empty attribute.

What good alt text actually says

Alt text should describe what the image shows or does, in the context of the page, concisely enough that a screen reader user gets the same information a sighted visitor does at a glance. "Image of a chart" describes nothing useful; "Bar chart showing organic clicks rising from 400 to 1,200 over six months" does the job. It is also read by image search, so a vague or missing description forfeits that traffic on top of the accessibility cost.

Five quality checks on top of presence

Having alt text at all is not the same as having good alt text, so this checker flags five further issues. On any image that carries real description: text over 125 characters, the point past which WebAIM's guidance says a screen reader listener starts hearing a paragraph rather than a caption; a redundant opening phrase such as "image of", "picture of" or "photo of", which wastes that listener's time because a screen reader already announces it has reached an image before reading the text at all; the same alt text reused word-for-word on two or more images, usually a generic placeholder copied down a gallery rather than text describing each photo; and alt text that is itself a filename, such as "IMG_1234.jpg", left over from an image picker or a CMS default rather than written as a description, which leaves a screen reader announcing the raw filename anyway. On every image regardless of alt state: a filename containing an underscore, which search engines read as joining the words either side of it rather than separating them the way a hyphen does.

One page here, your whole site there

Checking a page you already suspect is useful, but the images that quietly cost the most are usually repeated across a template: a product gallery, an author avatar, an icon set used on every post. Finding every offending image means crawling the whole site rather than testing pages one at a time. Crawl Cove catalogues every image it crawls (alt text, declared width and height, and the page it sits on) in one pass. For the full walkthrough of the distinction and quality checks above, see our guide to auditing image alt text properly.

Image alt text: how to audit it properly · Image SEO checker (whole-site) · Full site audit

Frequently asked questions

What is alt text?
A text description added to an HTML <img> tag's alt attribute. Screen readers announce it in place of the image, and search engines use it to understand what the image shows, since they cannot see it themselves.
How do I check if an image has alt text?
Right-click the image, choose Inspect, and look at its <img> tag in the developer tools: alt="..." with words in it means it has alt text, alt="" means it is marked decorative, and no alt attribute means it is missing. For a whole page, enter the URL above and every image is sorted into those three states for you.
Is an alt tag the same as alt text?
Yes, in everyday use. Strictly there is no such thing as an alt tag: alt is an attribute on the <img> tag, and the words inside it are the alt text. People search for an alt tag checker and an alt text checker meaning the same thing, and this tool answers both: it reads the alt attribute on every image on the page and reports which images are missing it, which are correctly marked decorative with alt="" and which carry a real description.
Is alt="" the same as missing alt text?
No. alt="" is a deliberate, correct way to mark an image as purely decorative, telling assistive technology to skip it. A missing alt attribute is the real defect, because a screen reader then falls back to reading out the file name instead.
Should every image have descriptive alt text?
No. Purely decorative images (a background flourish, a spacer, an icon that repeats a nearby text label) are better served by alt="" than by forced description. Meaningful images, product photos, charts, screenshots, should have real, concise alt text.
Does alt text affect SEO?
Yes, mainly through image search: search engines read alt text to understand and index an image, so a missing or vague description forfeits that traffic. It does not directly affect the ranking of the surrounding page in the way, say, a title tag does.
Is this image alt text checker free?
Yes. It is completely free and needs no sign-up. Enter a URL and every image tag on that page is fetched and read server-side.
Can I check a page I do not own?
Yes, the same as any browser could reach the URL directly. It is a read-only check: one request to the page, nothing is submitted to the target, and results are not stored anywhere you or anyone else can browse back to.
Does this check every image on my site?
No, this checks one URL you enter at a time, up to 200 images on that page. Crawl Cove catalogues every image across your whole site as it crawls, with the page each one sits on, so a template reused across many pages is flagged everywhere it appears.
How long should alt text be?
WebAIM's guidance is to keep it under about 125 characters. Screen readers announce alt text in full with no way to skip ahead, so much longer than that starts to feel like being read a paragraph rather than shown an image. This checker flags any described image over that length.
Why is "image of" flagged as a problem?
A screen reader already announces that it has reached an image before it reads the alt text, so opening with "image of", "picture of" or a similar phrase repeats information the listener already has and wastes their time. Describe what the image shows instead, for example "Bar chart showing organic clicks rising from 400 to 1,200" rather than "Image of a bar chart showing organic clicks rising from 400 to 1,200".
Why is duplicate alt text a problem?
Alt text is meant to describe what makes that specific image relevant on that specific page. The same phrase reused across several images, "product photo" on every item in a gallery, for example, gives a screen reader listener no way to tell the images apart and gives search engines no distinguishing information either. This checker flags any described image whose alt text exactly matches another image's on the same page.
Why does an underscore in an image filename matter?
Google has long treated a hyphen in a URL or filename as a word separator, so product-photo.jpg is read as two words. An underscore is not treated the same way, so product_photo.jpg can be read as one run-together word instead. It is a minor signal on its own, but it is free to fix by renaming the file and using hyphens.
Why is alt text that looks like a filename flagged?
Something such as alt="IMG_1234.jpg" or alt="dsc00123" is not a description, it is the file's own name, usually left in by an image picker or a CMS default that nobody replaced. A screen reader then announces the raw filename, which gives a listener no more information than an absent alt attribute would, and search engines get nothing useful to index either. This checker flags alt text that either carries an image file extension or exactly matches the image's own filename once stripped of one.
Can I export the results?
Yes. A "Download CSV" button appears once a check completes, listing every image's source, alt state, alt text, length, and which of the five quality checks it triggered.

From one page to your whole site

This checks one page. Crawl Cove catalogues every image on your whole site as it crawls, alt text, declared width and height, and the page each one sits on, so a gallery template used across 40 pages is flagged once per page rather than once per site. See audit image alt text across your whole site or compare the plans.

Download free

More free tools