Alt Text and Captions Are a Craft Signal, Not a Checkbox
You are scrolling an agency’s client account, trying to work out whether the polish is a standard or a showreel. The hero posts will not tell you, they were made to be shown. So you look at the parts nobody dressed up for the meeting: alt text and captions, sitting in plain view.
Accessibility gets judged as a checkbox. It should be judged as copy.
Most people who look at this at all check for presence: is there alt text, are there captions, tick and move on. That is a weak signal, and weaker every year, because platforms increasingly generate a baseline themselves. Auto-generated alt text and automatic captions tend to appear whether or not anyone touched them. Check rather than assume. Presence alone can mean only that somebody uploaded a file.
Quality is the part defaults cannot fake. Same argument as what separates a written caption from a filled in one: a caption someone wrote and a caption someone completed look identical at a glance and read completely differently up close. Alt text and burned-in captions are copy too, so judge them as copy.
What generic alt text looks like when you actually read it
The patterns repeat. Most common is alt text that restates the words already visible on the image, so someone who cannot see it gets the headline and nothing else. Then the flat object list: “person, outdoor, text, smiling”. Accurate, useless, unconnected to why the post exists. Then alt text left exactly as the platform generated it, describing pixels rather than intent. And the loudest tell, alt text near-identical across a run of unrelated posts. When a product shot, an event photo and a quote card share one description, somebody pasted one string down the whole grid.
A single instance proves nothing, somebody was rushed on a Thursday. The tell is the same shortcut repeating across dozens of posts: not a bad day, but how the account is run.
What considered alt text looks like instead
Written alt text adds what the image cannot carry alone. On a chart it says what the chart shows and which way the point runs, not “graph”. On a screenshot it renders the text legible in the frame, because that text is the content. On a photograph it names what is happening outside the frame, which the caption skipped because a sighted viewer got it free. The second marker is variation: a product post reads differently from a team photo, because someone was looking at that image. Formula alt text has one shape forever.
What makes this credible is that it buys nothing visible. Nobody scrolling sees it and it lifts no reported number. It is more work per post with no applause attached, so when it holds up across an account, somebody decided the standard applies whether anyone checks or not.
Captions are the same test, played out in timing
An unedited auto-caption dump reads flat and unbroken, words arriving in clumps timed to the transcription engine, not the speaker. No emphasis anywhere. Lines break where the buffer filled rather than where the meaning turns. And every so often a word that is plainly wrong, left uncorrected.
Considered captions break where a person breathes. The line ends on the beat before the turn, so the punchline lands on its own line instead of at the tail of the previous one, and emphasis falls on the word carrying the joke. Mistranscribed brand and product names are the fastest tell available, because the engine renders an unfamiliar name as the nearest common word. If that shipped, nobody who knew the account watched the video with sound off first.
Why this belongs in the same evidence pile as everything else you’re judging
None of this is a separate skill. The discipline required to write specific alt text on a post nobody will screen-reader-check is the discipline that produces a caption not left to a template, or an edit actually finished rather than shipped at good enough. One standard applied where it is inconvenient, which is what makes it evidence. The failure mode it catches: an account that looks meticulous in the hero grid and reveals an assembly line the moment you check anything nobody optimised for applause. The same lesson as what a portfolio leaves out, the same method as reading strategy from what’s publicly visible.
How to actually check it, without a screen reader
- In a desktop browser, right-click an image and choose Inspect. Developer tools open with that element selected in the DOM tree, and the alt attribute is right there in the HTML.
- Where a platform exposes its own alt-text view, use that. Expect the exact path to have moved.
- Check five to ten posts, not one. A single post cannot show you a pattern.
- Watch two or three videos with sound off, reading the captions as captions rather than as a transcript, and noting where the lines break.
The one it’s tempting to fake
One version fools a quick look. The account has genuinely considered alt text and captions on the handful of posts pushed hardest, and reverts to defaults everywhere else. That is not a standard, it is a performance for a particular audience, a cousin of the trap in why one excellent campaign tells you almost nothing. So skip whatever the agency points to first and read the alt text in the middle of the grid, on ordinary posts nobody expected anyone to examine.
Where to see this applied
Our selections come from reading accounts this way, past the hero grid, into the parts not built to be shown. If an agency’s ordinary output holds up, nominate an agency.
FAQ
Isn’t alt text quality more about the client’s budget than the agency’s craft?
Writing specific alt text costs attention, not money. It is free on every platform that offers the field. Unedited defaults across a whole account, whatever the client’s size, say more about the process than the budget. A small budget explains a cheaper edit. It does not explain one description pasted across unrelated posts.
Is one post with bad alt text enough to judge an agency by?
No. One instance is noise, the same way one weak caption does not tell you a copywriter cannot write. The signal is the pattern, and whether the care is spread evenly or clustered on the posts that were always going to be seen.
Sources
- MDN Web Docs, the img element and its alt attribute, fetched 2026-09-06.
- Chrome DevTools documentation, inspecting a node in the DOM tree, fetched 2026-09-06.