Image Alt Text: Complete SEO & Accessibility Guide
Here is the order of priority that most "alt text for SEO" guides get backwards: alt text exists first for people who cannot see the image, and second for search engines. The accessibility job is the real job. The SEO benefit is a side effect of doing the accessibility job well, because Google's image understanding leans on the same signal a screen reader does. Write alt text for a blind user navigating your page with their ears, and you will, almost by accident, write the alt text Google wants too.
This is the rules-and-reasoning post. For copy-paste examples across products, blog images, and charts, see 30 alt text examples. For how alt differs from the title attribute and a caption, see alt vs title vs caption.
What a screen reader actually does with alt text
When a screen reader (VoiceOver on macOS/iOS, NVDA or JAWS on Windows, TalkBack on Android) reaches an <img>, it does one of three things:
althas text → it announces "image, " then reads the text. So<img src="chart.png" alt="Mobile traffic grew 42% year over year">is heard as "image, mobile traffic grew 42 percent year over year."alt=""(empty, intentional) → it skips the image entirely. The user never knows it was there. This is correct for decorative images.altis missing altogether → many screen readers fall back to reading the file name out loud. The user hears "image, D-S-C underscore 0-2-9-1 dot J-P-G." That is the single worst outcome, and it is what happens when you forget the attribute rather than deliberately emptying it.
That last point is the one to internalise: alt="" and no alt are not the same thing. One is a deliberate "nothing to see here"; the other is a bug that leaks a filename.
How Google Images actually uses it
Google has been explicit on this for years. From their own image SEO documentation: "Google uses alt text along with computer vision algorithms and the contents of the page to understand the subject matter of the image." Two things follow from that sentence.
First, alt text is not the only signal. Google also reads the surrounding text, the filename, the caption, and runs its own image recognition. So alt text is one input, not a magic ranking lever. Second, it is the input you control most directly, and the one that disambiguates an image its vision model might read wrong. A photo of a person holding a phone could be a hundred things; alt="Customer scanning a QR code menu at a restaurant table" tells Google exactly which.
Good alt text is how images earn traffic from Google Images and the image packs that appear in regular search. It is not how your page ranks for its main keyword; that is a different and much smaller effect that people routinely overstate.
Length: aim short, lead with what matters
There is no hard character limit enforced by Google, but there is a practical one set by screen readers: some older configurations of JAWS truncate around 125 characters, and a sentence longer than that is tiring to listen to regardless. So the working target is one clear sentence, roughly 8–16 words.
Lead with the subject, because both screen-reader users and Google weight the front of the string. Compare:
- Weak:
alt="A nice photo we took showing our new stainless steel French press that holds 34 ounces" - Strong:
alt="Stainless steel French press, 34 ounce capacity"
If an image genuinely needs a long description, like a complex diagram or a data-dense infographic, don't cram it into alt. Put a short summary in alt and the full breakdown in visible body text or a caption next to it, where everyone benefits.
When to use empty alt=""
Use alt="" when the image adds nothing a non-sighted user would miss: decorative dividers, background flourishes, spacer images, or an icon sitting right next to text that already says the same thing. A shopping-cart icon beside the visible word "Cart" should be alt=""; describing it would just make the screen reader say "Cart" twice.
The test is simple: if this image vanished, would the user lose any information or function? If no, alt="". If yes, describe it.
The keyword-stuffing trap
This is where SEO instincts actively hurt you. Alt text is not a place to dump keywords. Stuffing like this:
<img src="shoes.jpg" alt="running shoes best running shoes cheap running shoes buy running shoes online">
…does three bad things at once: it's useless to a screen-reader user (who hears the same phrase four times), it reads as spam to Google's quality systems, and it can trip accessibility audits. There is no "keyword density" target for alt text; that whole concept is an SEO myth. Write what the image is. If a relevant keyword fits naturally because it accurately describes the image, fine; if you're forcing it, stop.
A quick self-check before you publish
You don't need a tool for alt text; you need a habit. Read your alt strings out loud as if you couldn't see the page. If a sentence describes the image clearly and you'd be happy hearing it, ship it. While you're auditing on-page elements, our Heading Analyzer and Meta Generator cover the text signals that sit alongside your images, and the SVG Viewer is handy when you're deciding which images should be scalable vector art in the first place. See image formats for SEO.
Frequently Asked Questions
Is alt text a Google ranking factor for my whole page?
Only weakly, and mostly for image search. Alt text helps Google understand and rank the image in Google Images and image packs. Its effect on your page ranking for its main keyword is minor; accessibility and image-search visibility are the real wins, not a page-level ranking boost.
Should every image have alt text?
Every meaningful image needs descriptive alt text. Purely decorative images should have an explicit empty alt="" so screen readers skip them. The one thing to never do is omit the attribute entirely, which causes some screen readers to read the filename aloud.
Does alt text have a strict character limit?
No fixed limit from Google, but keep it to roughly one sentence (about 125 characters) because some screen readers truncate around there and long alt text is tiring to listen to. For complex images, use a short alt plus a fuller description in visible text.
Should I start alt text with "image of" or "photo of"?
No. Screen readers already announce "image" before reading the alt text, so a prefix makes them say it twice. Start directly with the subject.
How is alt text different from a caption or the title attribute?
alt is read by assistive tech and is usually invisible; a caption (<figcaption>) is visible to everyone; the title attribute is a hover tooltip that's largely ignored by screen readers. See alt vs title vs caption for the full breakdown.