Alt text is not a caption track
Alt text describes a still or post. Speech captions transcribe audio. Do not paste one into the other.
Alt text describes a still (or a post’s image) for someone who cannot see it. Speech captions transcribe audio for someone who cannot hear it. They are different WCAG jobs: 1.1.1 Non-text Content versus 1.2.2 Captions (Prerecorded). Pasting the VO into Instagram alt and skipping burn-in leaves a mute feed without words. Pasting “woman holds bottle” into a caption preset leaves a deaf viewer without the claim. Do not mix them.
This is the still-versus-speech procedure for UGC posts. It is not an image-SEO essay.
Write alt text for the picture you actually posted
Alt text is a short description of the image or of the video’s poster, in the field the platform labelled “alt.” It is not timed. It does not follow the mouth. It does not live in the MP4’s caption burn.
Procedure for the still / poster:
- Identify the object: the extracted thumbnail, the carousel cover, the first frame the platform will show, or a photo post. Generate a video thumbnail if you still need that still from the keeper.
- Look at that still, not at the script. What is visible: person, pack, setting, any already-burned line.
- Write one or two sentences that name those things. Include the SKU if it is readable in the picture. Include the burned hook line if it is part of the image (“on-screen text: ships in twelve days”).
- Do not write the full VO. A 90-word transcript in alt is a different object stuffed into a field that screen readers will read as a blob, often on top of the caption field and the burn.
- Do not write SEO keyword soup. Alt is a description of this picture.
- Paste it into the platform’s alt field for that image. A YouTube custom thumbnail may not have the same field as an Instagram still; use whatever the destination actually exposes. Do not invent a Versely alt-text encoder inside the video file.
Checkable alt test:
- Hide the picture. Read the alt aloud. Can you say what the post looks like.
- Compare to the video. If the alt describes a different person or a different pack, you wrote a fantasy still. Extract the real frame.
If the post is video-only and the platform has no alt on the video file, you still owe captions for speech. Alt on a linked still (thumbnail, link-preview image) remains a still job.
Generated faces: say that only if you are describing what is visible and you also owe whatever AI disclosure the destination requires. Alt is not Article 50. Alt is not a TikTok AI toggle.
Caption the speech, not the furniture
Captions are timed lines for audio. On short-form they are burned in because mute autoplay will not enable a track.
Procedure:
- Picture lock the video.
- Add captions to video. Transcribe what is spoken. 165 language codes. BASIC 1× or DYNAMIC 2×.
- Correct names, numbers, the SKU, the claim.
- Place in the safe area.
- Watch muted. If the claim is only in alt text on the Instagram field, the feed viewer never sees it.
SDH (SDH) adds speaker IDs and non-speech when those matter. That is still a caption job. It is not alt. [door slams] in alt on a still of a smiling face is a lie about the picture.
Get a video transcript is a document. You may reuse a short phrase from it in alt if that phrase is also on the still. You may not dump the document into alt and skip the burn.
Closed captions (sidecar SRT/VTT) are the long-form cousin of burn-in. Also not alt. A course player that toggles CC does not read Instagram alt.
Do not paste the transcript into alt, or alt into captions
The mix-ups are specific. Avoid them by object.
Forbidden:
- Transcript → alt field, no burn-in, calling the Reel “accessible.” Mute autoplay never reads alt as a timed hook.
- Alt (“creator in a kitchen holds the blue 250ml bottle”) → caption preset, calling the file captioned. Nobody said that sentence. That is text overlay if you want it on screen, and it still does not transcribe the VO.
- Auto-captions of music or noise → alt. Alt describes the still.
- Legal disclaimer only in alt. If the ad owes a disclosure in the creative, burn or overlay it. Alt is not conspicuous in the ad the way a New York synthetic-performer sentence has to be.
Allowed reuse:
- The burned hook line is visible in the thumbnail, so alt mentions that on-screen text.
- The SKU name appears on the pack in the still, so alt names it — even if the VO also names it. That is describing the picture, not captioning the audio.
- A transcript document feeds the blog post. Different surface.
Procedure when you are shipping a UGC video plus a cover still:
- Extract the cover from the keeper. Letter it if needed.
- Write alt on that still.
- Burn captions on the video.
- Write the public caption field (the Instagram paragraph under the post) as social copy. That is a fourth object: marketing copy, not alt, not CC.
- Check that the four texts do not contradict: alt, burn, VO, post copy. Four versions of the price is how ads get pulled.
The AI caption generator does not fill alt. Do not prompt a video model to “add alt text.” There is nothing in the MP4 for that field to read.
Check each object on its own surface
QC is four passes, not one “accessibility” checkbox.
Checklist:
- Still / alt. Screen-reader test or read-aloud of the alt field. Picture described. No full VO dump.
- Burn-in. Phone, muted, first three seconds. Speech (or authored overlay) visible. Off chrome.
- Sidecar, if any. Player toggle. Times match. Not used as the Reels deliverable.
- Post copy. The Instagram/TikTok caption field. Hashtags and a CTA can live here. They are not captions in the WCAG 1.2.2 sense.
If you only had time for one pass on a talking-head Reel, burn-in wins. The feed is mute. Alt on a cover still is still worth doing when the platform shows a still; it does not replace the burn.
If you only had a photo carousel with no speech, alt (and maybe burned poster type) wins. There is nothing to caption. Running add_veed_captions on a silent still sequence is a pass spent on empty audio.
Article 50 labels, platform AI toggles, and paid-partnership disclosures are more objects. None of them are alt and none of them are speech captions. Stack them where their own rules say — first exposure, in the ad, in the platform UI — not in the alt field as a hiding place.
Describe the still, transcribe the speech, keep the fields apart in Versely. Bring a locked video and its cover still. Do not bring one paragraph for both.
FAQ
Can alt text stand in for captions on a talking-head Reel?
No. Alt describes the picture in a field many feed viewers never hear. Mute autoplay needs burned speech (or overlay) on the file.
Should I put the full VO in alt for SEO?
No. Alt is a description of the still. Dumping the transcript is a blob, and it is not a caption track.
Is the Instagram caption box the same as captions?
No. That box is post copy. WCAG captions are timed (or burned) speech. Alt is the still. Three fields.