Checkers
Image SEO Checker
Alt text, dimensions, formats and lazy loading
Images are where accessibility, performance and SEO fail together. A missing alt attribute is a WCAG failure and a lost ranking signal. A missing width and height is a layout shift, which is a Core Web Vitals problem. An uncompressed hero image is usually the Largest Contentful Paint.
- Free, no signupNo account, no card
- No AI in the score986 deterministic rules
- Nothing publishedYour scans stay yours
- Answers in secondsQuick scan, no browser
So this pulls the image rules from all three modules into one view: alt text presence and quality, explicit dimensions, modern formats, responsive srcset and sizes, lazy loading on below-fold images and eager loading on the one above it, and decorative images correctly marked as decorative.
That last distinction is worth stating: an empty alt is not a missing alt. `alt=""` is the correct way to say an image carries no meaning, and a checker that flags it is wrong - which is a mistake this product made on its own illustrations before it was caught.
Why this matters
Hundreds of images, no list of what is wrong
Images pile up over years, added by different people through a CMS that never insists on alt text. Nothing anywhere tells you which ones a screen reader cannot describe, which ones shove the page around as they load, and which ones weigh ten times what they should. Each of those answers currently lives in a different tool, so the full picture never lands in one place.
What it costs you when this is wrong
A screen reader reads out your filenames
With no alt attribute at all, assistive technology falls back to the file name, so a product grid is announced as "IMG_4021.jpg" twelve times over. It never appears in your analytics; you hear about it in a complaint.
The tap lands on the wrong thing
An image with no reserved space is zero pixels high until it loads, then pushes everything below it down. On a phone, a finger already moving towards "Add to basket" hits whatever slid into its place, and it reaches you as a rising bounce rate rather than a bug report.
Words baked into an image cannot be read
A price, an opening time or an offer set inside a JPEG is invisible to a search engine and to any assistant reading the page. You find out when someone asks an AI tool what you charge and it answers that the page does not say.
Why run it here
Nine modules, one image view
Forty-one rules touch images, and they sit in the SEO, accessibility, performance, structured data, security, HTML and AI modules. This page gathers all of them, and the list you can read is filtered by the same one-line pattern that scopes the scan, so the published list and the run cannot drift apart.
An empty alt is not a missing alt
An absent attribute is the only thing counted as a failure. An image carrying alt="" is counted the other way, by a separate rule, as a decorative image marked correctly, so a page built properly is not punished for it.
Findings name the image, not a total
The layout-shift check returns the selector and source of every image with no reserved space instead of a count, and it accepts an inline aspect-ratio as reserving space, so images your CSS already handles are left alone. Each finding also links the W3C or WCAG clause behind it.
This check runs on its own here, and as part of the full audit alongside the other 985 rules. Either way the findings carry their evidence and their citation, and the report is never published or kept.
How to fix image SEO
Images are usually the largest thing on a page and the least examined. These five changes improve accessibility, ranking and load time at once.
Give every image an alt attribute — descriptive when meaningful, empty when purely decorative.
Set explicit width and height so the browser reserves space and the page stops shifting as images arrive.
Serve modern formats such as WebP or AVIF, with a fallback where you still need one.
Size images to their displayed dimensions rather than shipping a 4000px original scaled down in CSS.
Lazy-load images below the fold, and never lazy-load the largest element above it — that one change alone can wreck your LCP.
What happens when you run it
Enter your address
Just the domain is enough — example.com, with or without the https. No account, no card, no crawl of your whole site.
We render it like a visitor
Your page opens in a real browser and JavaScript runs to completion, so what gets audited is the page a person actually sees — not the raw HTML your server sent. A screenshot comes back with the report as evidence of exactly what we measured.
You get findings you can act on
Up to 986 checks run against that rendered page. Each finding names the rule, quotes the evidence found on your page, cites the public specification behind it, and says what to change. Nothing is a judgement call — run it twice on an unchanged page and the score is identical.
What runs this check
- Real browser rendering
- WCAG 2.2 rule engines
- Core Web Vitals measurement
Named because provenance is the product. Every finding in your report says which of these produced it, so you can check the reasoning rather than take a score on faith.
What this checks
41 rules · 16 affect your scoreEvery meaningful <img> needs an alt attribute so screen reader users get equivalent information.
A11Y_IMG_ALT_MISSING scoredEnsure <img> elements have alternative text or a role of none or presentation Evaluated against the live rendered page by a WCAG rule engine, so it only runs on a full scan.
A11Y_AXE_IMAGE_ALT scoredEnsure <input type="image"> elements have alternative text Evaluated against the live rendered page by a WCAG rule engine, so it only runs on a full scan.
A11Y_AXE_INPUT_IMAGE_ALT scoredEnsure [role="img"] elements have alternative text Evaluated against the live rendered page by a WCAG rule engine, so it only runs on a full scan.
A11Y_AXE_ROLE_IMG_ALT scoredEnsure that server-side image maps are not used Evaluated against the live rendered page by a WCAG rule engine, so it only runs on a full scan.
A11Y_AXE_SERVER_SIDE_IMAGE_MAP scoredEnsure <svg> elements with an img, graphics-document or graphics-symbol role have accessible text Evaluated against the live rendered page by a WCAG rule engine, so it only runs on a full scan.
A11Y_AXE_SVG_IMG_ALT scoredAn <img> without intrinsic dimensions occupies zero height until it loads, then pushes everything below it down. Declaring width and height lets the browser reserve the space up front, which is the primary fix for layout shift.
PERF_IMAGE_DIMENSIONS scoredMissing alt text costs image-search visibility as well as accessibility - image search cannot index what it cannot describe.
SEO_IMG_ALT_COVERAGE scoredImages declare a source
MediumAn img with no src or srcset is invalid and renders as a broken-image placeholder.
HTML_IMG_REQUIRES_SRC scoredImages whose filename suggests they carry words - text, headline, quote, copy. Text baked into an image cannot be read, quoted or acted on: an agent asked to find your pricing will not find it if the price is a JPEG. Matched on filename only, deliberately: an empty alt attribute is the CORRECT way to mark a decorative image, so counting those would flag every properly-marked illustration on the page.
AGENTIC_NO_TEXT_AS_IMAGE scoredEnsure image alternative is not repeated as text Evaluated against the live rendered page by a WCAG rule engine, so it only runs on a full scan.
A11Y_AXE_IMAGE_REDUNDANT_ALT scoredImages remain indexable
Mediumnoimageindex removes the page's images from image search entirely.
GEO_ROBOTS_NOIMAGEINDEX scoredDozens of images on one page means dozens of requests competing with the resources that block rendering.
PERF_IMAGE_COUNT scoredScreen readers already announce the element as an image, so "image of…" is read twice.
A11Y_IMG_REDUNDANT_ALT scoredBase64 inflates payload by ~33% and cannot be cached separately from the HTML.
PERF_BASE64_IMAGES scoredIf robots.txt disallows ImagesiftBot, ImageSift image indexing cannot fetch this page.
GEO_IMAGESIFTBOT_ALLOWED scoredog:image is the preview thumbnail on every social and messaging platform. A shared link with no image gets materially less engagement.
SEO_OG_IMAGE detectionAll images reserve space
MediumEvery image without dimensions is a potential layout shift.
PERF_IMAGE_WIDTH_HEIGHT_ALL detectionWebP and AVIF are typically 25-50% smaller than equivalent JPEG or PNG at the same visual quality.
PERF_MODERN_IMAGE_FORMATS detectionMost rich result types require an image; without one the entity is ineligible for them.
SCHEMA_IMAGE_PRESENT detectionsrcset lets the browser pick a correctly sized image per device instead of downloading a desktop asset on a phone.
SEO_IMG_SRCSET detectionText baked into images is invisible to every extractor.
AEO_NO_TEXT_IN_IMAGES_ONLY detectionPages with relevant imagery earn more engagement and qualify for image search traffic.
SEO_IMAGES_PRESENT detectionOpen Graph image alt text refines how this page is represented when shared or parsed as a rich object. Informational - relevance depends on page type.
SEO_OG_IMAGE_ALT detection
Showing 24 of 41. Browse every rule image seo checker runs.
Questions
- Should every image have alt text?
- Every image needs an alt attribute; not every image needs alt text. Decorative images take `alt=""`, which tells assistive technology to skip them. Omitting the attribute entirely is the failure - a screen reader then falls back to announcing the filename.
- Do width and height still matter with responsive CSS?
- More than ever. Browsers use them to reserve space before the image loads, which is what prevents layout shift. With `height: auto` in CSS the attributes set the aspect ratio and do not constrain the rendered size.
Also checks
This page answers these searches too — they are the same job, so they share one page rather than being split across near-identical ones:
- alt text checker
- image alt checker
- image optimization checker
- missing alt text
Other checkers
- HTML ValidatorW3C markup conformance, checked by a real parser
- CSS ValidatorStylesheets parsed and checked against the W3C property grammars
- Schema Markup ValidatorJSON-LD parsed, expanded to real schema.org IRIs, and checked
- Rich Results TestWhich search features your structured data qualifies for
- Website Scam DetectorThe trust signals people and payment processors check before believing a site
- AI ValidatorWhether AI models can find, read, quote and operate your site
- Broken Link CheckerEvery link on the page requested, with blocked and broken told apart
- SEO CheckerTitles, meta, canonicals, indexability and internal linking
- Accessibility CheckerTwo WCAG engines — one in a real browser, one on your markup
- Security Headers CheckerResponse headers, CSP quality, and the TLS certificate underneath
- Core Web Vitals CheckerMeasured for real, plus the page-weight causes behind the numbers
- AI Agent Readiness CheckerCan an agent find your buttons, read your labels and finish the task
- W3C ValidatorMarkup and stylesheet conformance in one pass
- Answer Engine CheckerWhether AI answer engines can quote you, and attribute it
- AI Crawler CheckerWhich AI crawlers your robots.txt actually lets in
- SSL Certificate CheckerA real handshake: certificate, expiry, protocol and cipher
- robots.txt CheckerWhat your robots.txt actually allows, group by group
- Meta Tag CheckerTitles, descriptions, canonicals and robots directives
- Open Graph CheckerHow your link looks when someone shares it
- Mobile-Friendly TestViewport, tap targets and responsive behaviour
- Website CheckerEvery module, one scan, one prioritised fix list
Run the image seo checker now
No signup, no credit card. Quick answers in seconds; a full audit takes about a minute.
Run a free scanNo signup. No credit card. Nothing stored but the result.