Free Alt Text Checker
Paste a page URL and every image on it gets checked for alt text - missing, empty, or fine - along with its filename, dimensions, file size and whether it lazy-loads. Up to 40 images, in under a second. No signup, nothing stored. Pair it with the Meta Description Generator to cover the rest of your on-page tags.
Image SEO Checker
Scan a page's images for missing alt text, non-descriptive filenames, missing dimensions (layout shift risk), missing lazy-loading, and oversized files. Checks up to 40 images per page.
What alt text is for
Alt text is what a screen reader says out loud when it reaches an image. That is the primary job, and everything else is a side effect.
For someone using a screen reader, a page of images with no alt text is a page with holes in it. If the image is a product, they do not know what the product looks like. If it is a chart, they lose the data. If it is a button, they may not know what it does. That is the actual cost, and it is the reason the requirement exists.
Search engines benefit from the same text for the same reason - they cannot see the image either. So writing good alt text for accessibility gives you the SEO outcome automatically, while writing it for SEO usually produces something a screen reader user finds worse than silence. Do it in that order.
How to write alt text that works
Describe what the image is doing in context, not what is literally in the frame. The same photograph needs different alt text on a product page and in a blog post about sustainable materials.
Six before and after examples:
Keep it under about 125 characters. If the image needs a paragraph to explain, that paragraph belongs in the page text where everyone can read it, with short alt text pointing at it.
When alt text should be empty
This is the distinction most guides get wrong, and this tool gets right.
A missing alt attribute means nobody made a decision. A screen reader encountering it may read out the filename - so the user hears “I M G underscore 4 4 7 1 dot jpg” - or announce an unlabelled graphic. That is always wrong.
An empty alt attribute, written as alt equals two quote marks with nothing between them, is a decision. It says: this image is decorative, skip it entirely. For background textures, dividers, spacer graphics and icons that sit next to text saying the same thing, that is exactly right, and it makes the page better rather than worse.
So the tool reports a missing attribute as an error and an empty one as a warning - a warning because it needs a human to confirm the image really is decorative, not because empty is wrong.
The failure mode to avoid: writing alt text for every decorative flourish. A screen reader user hearing “decorative swirl divider” fourteen times on one page has a worse experience than one who hears nothing.
What else the checker looks at
Filenames. IMG_4471.jpg tells a search engine nothing. merino-runner-charcoal.jpg does. It is a small signal and it is free at upload time.
Width and height attributes. Without them the browser does not know how much space to reserve, so the page reflows as images arrive and the text jumps under the reader’s cursor. That is Cumulative Layout Shift, it is one of the three Core Web Vitals, and it is one of the easiest to fix - set the attributes and it goes away.
Lazy loading. Images below the fold should carry loading equals lazy so they do not compete with the content people can actually see. The exception is your hero image, which should never be lazy-loaded, because it is usually the Largest Contentful Paint element and delaying it directly worsens your score.
File size and format. A hero image at two megabytes is the most common single cause of a failing LCP. WebP is typically 60 to 80 percent smaller than the equivalent PNG or JPEG at the same visible quality. Run oversized images through the Image Compressor before you upload them.
This checker looks at images specifically - for dead links elsewhere on the page, run the Broken Link Checker too.
Alt text and WCAG
The relevant rule is WCAG success criterion 1.1.1, Non-text Content, at Level A - the lowest and most widely required conformance level. It says non-text content needs a text alternative serving the equivalent purpose, and that decorative content should be implemented so assistive technology can ignore it.
Level A is the baseline almost every accessibility policy references, which is why missing alt text turns up so often in audits and legal complaints. It is not an advanced requirement.
Where the alt text field lives
WordPress: the Media Library, or the block settings panel when you insert the image. Setting it in the Media Library sets a default; the block-level value overrides it for that placement, which is what you want when the same image is used in two contexts.
Shopify: in the Files area, or the image alt field on the product. Theme images are usually set in the theme editor rather than the product.
Webflow: select the image in the Designer and set Alt Text in the settings panel. Webflow also offers a decorative option, which writes the empty attribute correctly.
Framer: the image layer properties.
FAQ
Frequently Asked Questions
What is the difference between a missing alt attribute and an empty one?
A missing attribute means nobody made a decision, and a screen reader may read out the filename. An empty attribute is a decision: this image is decorative, skip it. Empty is correct for decorative images. Missing never is.
How long should alt text be?
Long enough to convey what the image does in context, usually under 125 characters. If it needs a paragraph, that content belongs in the page text.
Should I put keywords in alt text?
Only where the keyword genuinely describes the image. Stuffing alt text is an accessibility failure and one of the few image SEO practices Google has explicitly called out.
Does alt text help images rank in Google Images?
It is one of the strongest signals available, alongside the filename, the surrounding text and the page it sits on. Google cannot see the image the way you can.
Why does the checker only find one or two images on my site?
Because it reads the HTML your server returns. If your site renders images with JavaScript - React, Framer, many page builders - they are not in that HTML. Run it against a server-rendered page to see the full picture.
Do decorative icons need alt text?
No. Give them an empty alt attribute so screen readers skip them. Announcing every decorative icon makes a page harder to use, not easier.