Matterhorn 13-004 · PDF/UA-1 UA1:7.3-3
Figure tag with no alt text: what to write and when not to
A Figure element has neither /Alt nor /ActualText. Every Figure must have one or the other; if the image is decorative it should be an artifact instead of a Figure.
The condition, as the protocol states it. “<Figure> tag alternative or replacement text missing.”
Matterhorn Protocol 1.1, checkpoint 13, index 13-004, section UA1:7.3-3. Software can decide this one on its own.
What a screen reader actually does
The reader announces "graphic" and nothing else, leaving the user to guess what was there.
What is in the file
A Figure structure element wraps the marked content that paints the image, and carries the description as an entry on the element itself:
21 0 obj
<< /Type /StructElem
/S /Figure
/P 9 0 R
/Pg 3 0 R
/Alt (Quarterly revenue by region, showing North overtaking South in Q3 2026.)
/K [ 7 ]
>>
endobj
The condition fires when a Figure has neither /Alt nor /ActualText. Taggart also reports a /Alt () — an /Alt present but empty — because it is the same failure wearing a disguise, and because it is what most auto-taggers write when they have nothing to say.
The decision that comes first
Before you write alt text, decide whether the image should be a Figure at all. Every image in a PDF is one of three things:
Informative. It carries meaning the text does not. It needs to be a Figure with /Alt.
Decorative. A rule line, a background wash, a corner flourish, a stock photo of people pointing at a whiteboard. It should be an artifact, not a Figure. Artifacting removes it from the structure tree, so a screen reader never encounters it at all — which is exactly right, and much better than announcing “graphic” forty times.
Text as an image. A drop cap, a wordmark, a scanned signature. It needs /ActualText, so the characters flow into the text stream and the sentence stays intact.
Getting this wrong in either direction is the failure that matters. Describing decoration wastes the reader’s attention; artifacting a chart deletes it from the document for anyone who cannot see it.
How to fix it free, in Acrobat Pro
For a handful of images, use the guided panel:
Accessibility → Set Alternate Text(in the Accessibility tool set).- Acrobat steps through every
Figurein the document. - Type the description, or tick Decorative figure to convert it to an artifact.
- Use the arrows to move through them all, then Save.
This is genuinely the fastest free method and it handles the decorative case properly. Its limits: it only finds images that are already tagged as Figure. An image that was never tagged does not appear, and you will not know it is missing — that is condition 13-001.
For those, and for anything the panel misses:
- Open the Tags panel with Highlight Content on.
- Find the image on the page and locate its tag.
- If it is not inside a
<Figure>: select the image with the Reading Order tool (Accessibility → Reading Order), then click Figure in the panel. - Right-click the tag → Properties → type into Alternate Text.
Upstream is better again. Word, PowerPoint and InDesign all carry alt text into the export — in Word it is right-click → View Alt Text, and the Mark as decorative checkbox exports as an artifact. Doing it there means it survives every future revision.
Writing alt text that earns its place
Three rules that hold up in practice.
Say what it contributes, not what it depicts. A line chart is not “a line chart showing revenue”. It is “Revenue grew steadily from Q1 to Q3, then fell 12% in Q4.”
Do not start with “image of” or “graphic of”. The reader is already told it is a graphic — the role announcement comes from the tag. Repeating it wastes the first three words of every description.
Do not repeat the caption. If a <Caption> sits next to the figure, the reader gets both. Alt text that duplicates the caption is announced twice.
Where Taggart differs
Taggart reports every Figure without a description, with its page and structure path, and separately flags images that were painted but never tagged — the ones Acrobat’s panel cannot show you.
Alt text generation is available and is never written silently. Three privacy modes are chosen at setup and shown persistently in the interface: a local model where no image bytes leave the machine, your own provider key with explicit per-document consent, or off entirely. Whichever you pick, every generated description arrives as a draft in the review queue, and the decision you make — approved, edited, rejected, or “this is decorative, artifact it” — is recorded in the remediation report with a timestamp.
That log is the point. Deciding an image is decorative is a claim about the document, and a compliance file should show who made it.
How Taggart handles it
Taggart detects this condition automatically. It is reported as a blocker, with the page, the structure path and the object id of every occurrence.
The fix is Add alternative text to figures. It changes what the document means, so Taggart proposes it and waits for your approval rather than applying it unattended.
Whatever Taggart changes, the page still looks identical. Fixes edit the PDF object model, not the content streams, and every remediation is re-rendered and compared against the original at structural similarity ≥ 0.999 before you get the file back. A tool that quietly reflows your document is worse than no tool.
Frequently asked questions
Can I use an empty Alt for a decorative image?
No. In HTML, alt="" is the correct way to mark an image decorative. In PDF there is no equivalent: an empty /Alt is a Figure that promises a description and delivers nothing, and it is reported as a failure. A decorative image must be an artifact instead, which removes it from the structure tree entirely.
What is the difference between Alt and ActualText?
Alt describes the content: a photograph, a chart, a diagram. ActualText replaces it: it is the literal text the graphic stands in for. A drop cap, a logo that spells a word, an image of a signature block — those need ActualText, because they belong in the sentence. A photograph needs Alt. Using ActualText for a described image splices your description into the running text, which is condition 13-005.
How long should alt text be?
Long enough to convey what the image contributes to the document, and no longer. A decorative flourish should not be a Figure at all. A photograph usually needs a sentence. A chart needs whatever it takes to convey the finding — and if that runs past a few sentences, the honest answer is that the data belongs in a table, which is condition 13-007.
Can AI write the alt text?
It can write a draft. Taggart will generate one, and it is always presented for human approval before it is written to the file. A description that is fluent and wrong is worse than none, because nobody reviewing the document can tell. Deciding whether an image is informative or decorative is a judgement about the document's purpose, and no model has that context.
Where this sits in the standards
| Standard | Reference |
|---|---|
| Matterhorn Protocol 1.1 | Checkpoint 13 (Graphics), index 13-004 |
| PDF/UA-1 (ISO 14289-1) | Clause 7.3-3 |
| WCAG 2.1 | 1.1.1 Non-text Content — Level A |
| EN 301 549 / Section 508 / ADA Title II | All three point at WCAG 2.1 Level AA for non-web documents, so a Level A or AA criterion here is in scope for each of them. |
Related conditions
- 13-001 Graphics objects are not tagged with a Figure tag An image or vector drawing that carries meaning is not inside a Figure element. Either it is untagged, or it has been swept into a paragraph.
- 13-003 A caption is not tagged with a Caption tag "Figure 3: Quarterly revenue" is tagged as a paragraph rather than as a Caption associated with its figure or table.
- 13-005 ActualText used for a Figure for which alternative text is more appropriate ActualText replaces the content for text-extraction purposes; Alt describes it. A photograph needs Alt. A drop cap or a glyph-as-image needs ActualText.
- 13-008 ActualText not present when a Figure is intended to be consumed primarily as text A drop cap, a logo that is a word, an image of a signature block — content that is text — needs ActualText so it flows into the text stream.
Other conditions in checkpoint 13
Checkpoint 13 covers graphics. These are its other failure conditions; the ones without a link are in the rule set but do not have a written page yet.
- 13-001 Graphics objects are not tagged with a Figure tag An image or vector drawing that carries meaning is not inside a Figure element. Either it is untagged, or it has been swept into a paragraph.
- 13-002 A link with a meaningful background lacks alternative text for both An image link — a button, a logo that navigates — needs alternative text that conveys both what the graphic shows and where the link goes.
- 13-003 A caption is not tagged with a Caption tag "Figure 3: Quarterly revenue" is tagged as a paragraph rather than as a Caption associated with its figure or table.
- 13-005 ActualText used for a Figure for which alternative text is more appropriate ActualText replaces the content for text-extraction purposes; Alt describes it. A photograph needs Alt. A drop cap or a glyph-as-image needs ActualText.
- 13-006 A graphic with meaning only as part of a group is tagged on its own A chart built from dozens of separate vector paths has been tagged as dozens of Figures instead of one. Each fragment is meaningless alone.
- 13-007 A more accessible representation is not used A data table rendered as a picture, or body text set as an image, when real text and real table structure were available.
- 13-008 ActualText not present when a Figure is intended to be consumed primarily as text A drop cap, a logo that is a word, an image of a signature block — content that is text — needs ActualText so it flows into the text stream.
Check your own file. Taggart’s validator is free and unlimited — every machine-checkable Matterhorn condition, no page cap, no watermark, no account needed.
Verified against a real document on . Last updated .