How do I write alt text that actually helps?
Alt text is the text a screen reader reads out in place of an image, and what a browser shows when an image fails to load. WCAG 1.1.1 (level A) asks that non-text content has a text alternative that serves the equivalent purpose.1 The key word is purpose: good alt text gives a customer who cannot see the image the same information, or lets them do the same thing, as a customer who can.
It is also one of the most common problems on the web. WebAIM's 2026 scan of the top million home pages found images with missing alternative text on 53.1% of them.3 The US Department of Justice lists missing text alternatives among the barriers that keep blind people from understanding images, charts and illustrations.4
Start with the image's job
W3C's alt decision tree asks a few questions in turn: does the image contain text, is it in a link or button, does it add meaning, or is it decoration?2 Each answer leads to a different kind of alt text.
| Image | What the alt text should do | Example |
|---|---|---|
| Product photo | Describe what a buyer would look for in it. | "Linen shirt in sage green, front view, with coconut shell buttons" |
| Linked image, such as a category tile | Say where the link goes. | "Shop women's sandals" |
| Icon button | Say what the button does. | "Search", "Open cart", "Remove from cart" |
| Image of text, such as a sale banner | Repeat the text in the image. | "Autumn sale: 20% off all knitwear until Sunday" |
| Decorative image | Nothing. Use an empty alt attribute so screen readers skip it. | alt="" |
| Chart, size guide or diagram | Give a short summary in the alt text and put the full information in text on the page. | "Size chart, details in the table below" |
Product photos: describe what a buyer needs
A sighted customer looks at a product photo to answer questions: what colour is it, what is it made of, how big is it, what comes in the box. Alt text should answer the same questions where the photo does. Some practical rules:
- Be specific. "Blue mug" is less useful than "Hand-thrown stoneware mug in speckled cobalt blue with a wide handle".
- Describe the difference between photos. If a product has five photos, say what each one shows: "back view", "detail of the zip", "worn with jeans by a model".
- Use the name you sell it under. If the colour option is called "Sage", say "sage green" so the photo and the variant picker match.
- Do not repeat the product title word for word on every photo. The customer has just heard the title in the heading. Add what the photo shows.
- Leave out "image of" or "photo of". Screen readers already announce that it is an image.
Links and buttons: describe the action, not the picture
When an image is the only content of a link or button, its alt text becomes the link or button's name. A cart icon with alt text "shopping bag icon" tells a screen reader user what the picture looks like, not what happens when they press it. Use "Cart" or "Open cart, 2 items" instead. W3C's decision tree puts it simply: for a functional image, describe the destination or the action.2 The same applies to logos that link to your home page: "Acme Outdoor, home" is more useful than "Acme logo".
Decorative images: empty, not missing
Background textures, dividers and stock photos that add mood but no information should be implemented so assistive technology can ignore them.1 For an img element that means alt="", with nothing between the quotes. That is different from leaving the attribute out: without any alt attribute, some screen readers read out the file name instead, such as "IMG underscore 4471 dot jpeg".7
The same goes for images whose information is already in the text next to them. If a product card shows a photo with the product name directly under it, and both are in the same link, an empty alt on the photo avoids hearing the name twice.
Where to add alt text
Shopify
In Shopify admin, go to Products, open a product, select a media item and choose Add alt text. Shopify allows up to 512 characters and recommends 125 or fewer, and alt text can also be uploaded in bulk with a product CSV.5 Shopify's media editor may suggest alt text where none is filled in; read each suggestion before you accept it.5 Banners and other images placed in theme sections are separate from product media: add their alt text in the theme editor by selecting the section and editing the image.8
WordPress and WooCommerce
In the WordPress Media Library, open an image and fill in the Alt Text field in the attachment details; WordPress describes it as used for accessibility.6 WooCommerce product and gallery images are chosen from or uploaded to the Media Library, so the same field applies.9 The Caption, Title and Description fields are different and are not read as alt text.
Check what you have
- Run an automated check. It will find images with no alt attribute and linked images with no name. Jralo's free check lists each problem it finds and how many pages it affects.
- Look at the alt text that is there. A tool cannot tell whether "DSC_0042" or "product" is a useful description; you can.
- Turn on a screen reader and listen to one product page from top to bottom. Duplicated or meaningless descriptions stand out quickly.
- Fix templates once and content item by item. A logo or icon button with no name is usually a theme fix; product photo descriptions are content you add in the admin.
Alt text is one of the few accessibility fixes that is usually a content job rather than a code change, which makes it a good place to start. For a wider first pass, see how to check your website in 15 minutes.
Questions people ask
How long should alt text be?
As long as it needs to be to give the same information, and no longer. WCAG sets no length limit. Shopify allows up to 512 characters and recommends 125 or fewer. If an image carries more detail than a sentence or two can hold, such as a size chart, put that information in text on the page.
Should alt text start with "image of"?
There is no need. Screen readers already announce that the element is an image or graphic, so "image of" usually repeats what the customer just heard. Start with what matters.
Can AI write my alt text?
It can draft it. Shopify's media editor, for example, may suggest alt text for images that have none, which you can accept, edit or replace. A tool cannot know why the image is on that page, so read every suggestion and add the detail a customer needs, such as the exact colour name you sell it under.
Check your site now
Jralo's free check tests your homepage and up to five pages for accessibility (WCAG 2.2 A and AA) and website QA problems, and tells you which countries' accessibility laws are likely relevant to you. No sign-up.
Run the free checkSources
Every number and legal statement in this post links to one of these sources, read on 13 October 2026.
- W3C WAI: Understanding Success Criterion 1.1.1 Non-text Content
- W3C WAI: An alt decision tree (Images tutorial)
- WebAIM: The WebAIM Million, 2026 report
- US Department of Justice: Guidance on Web Accessibility and the ADA (2022)
- Shopify Help Center: Adding alt text to product media
- WordPress documentation: Media Library screen (Alt Text field)
- W3C WAI: Decorative Images (Images tutorial)
- Shopify Help Center: Adding alternative text to your theme images
- WooCommerce documentation: Adding product images and galleries
More questions
- What did WCAG 2.2 add to WCAG 2.1?
- How can I prove my website is monitored for accessibility?
- Does the European Accessibility Act apply to my online store?
- Do accessibility widgets make a website ADA compliant?
- Got an ADA website demand letter? What to do first
- How do I check if my website is accessible? A 15-minute method
- Website accessibility laws by country (2026)