CSV
The inventory
alt-text-inventory.csv
Eight sample rows from a made-up shop, covering each kind of image and a logo. Open it in a spreadsheet, delete the samples, and add a row for each image you find.
- Format
- Comma-separated values (RFC 4180)
- Size
- 2,294 bytes
- Contents
- 10 columns, 8 rows
Preview: the header and the first 3 rows
ID,Page,Image,Purpose,Current alt,Proposed alt,Long description,Decision,Status,Notes
IMG-001,All pages (header),logo.svg - the Example Shop wordmark; links to the home page,Functional,logo,Example Shop home,,Rewrite,Done,"A linked logo: the alt gives the words in the logo, then where the link goes."
IMG-002,/products/oak-side-table/,oak-side-table-front.jpg - the main product photo,Informative,IMG_2041.jpg,Oak side table with one drawer and a lower shelf,,Rewrite,Checked,"The current alt is the camera's file name. The price and finish are already in the text beside the photo, so the alt leaves them out."
IMG-003,/,leaf-divider.svg - a line of leaves between two sections,Decorative,leaf divider,,,Mark decorative,Done,"Use alt="""" so screen readers skip it; it adds nothing a reader needs."
The columns, in order
- ID
- Page
- Image
- Purpose
- Current alt
- Proposed alt
- Long description
- Decision
- Status
- Notes
Markdown
The guide
alt-text-guide.md
How to decide what an image is for, how to write each kind of alternative, what each column means, and how to review the inventory.
- Format
- Markdown text (.md)
- Size
- 6,427 bytes
- Contents
- 83 lines
Preview: the first 18 lines
# Alt text inventory: a guide
> Template version 1.0, 2026-10-07, from https://auricartisan.com/templates/alt-text-inventory/
> Licence: CC0 1.0 (https://creativecommons.org/publicdomain/zero/1.0/). Copy it, change it and use it for anything; no credit needed.
> This guide goes with alt-text-inventory.csv. Delete the sample rows in the CSV before you start.
A text alternative stands in for an image for anyone who cannot see it: people who use a screen reader, people who turn images off, and anyone whose images fail to load. WCAG 2.2 asks for one that serves the same purpose as the image (1.1.1 Non-text Content, Level A).
The right words depend on what the image does on the page, not only on what it shows. So the inventory records the purpose first, and the words second.
## 1. Decide what the image is for
Ask these questions in order. The first one you answer yes to gives the purpose. They follow the order of the questions in the W3C WAI alt decision tree (https://www.w3.org/WAI/tutorials/images/decision-tree/).
1. Is there text in the image?
- The same words are on the page as real text nearby: Decorative.
- The text does a job, such as a letter used as the icon of a button: Functional, as in question 2.
- Otherwise: Image of text. The alternative is the words.