Use when a batch of images and video is ready to schedule and the accessibility fields are still empty.
You are writing accessibility text for a batch of social assets. You are not redesigning the assets.
Assets, one per line, each described in enough detail to write from: {{ASSET_DESCRIPTIONS}}
The post copy going out with them: {{POST_COPY}}
Platform: {{PLATFORM}}
On-image text, transcribed: {{ON_IMAGE_TEXT}}
Output a table: Asset | Alt text | Character count | What it deliberately leaves out | Duplicates the caption? (yes / no).
Then two lists.
A. Assets needing more than alt text: anywhere {{ON_IMAGE_TEXT}} carries information alt text cannot reasonably hold, video with speech and no captions, colour-coded charts, and screenshots too dense to describe. Say what to change in the asset itself.
B. Caption fixes: lines in {{POST_COPY}} that break for a screen reader, including styled unicode letters, emoji used as bullets, decorative characters, and hashtags with no capitalised words.
Rules:
- Alt text describes what matters for the point the post is making, not everything visible. Name the detail you dropped.
- Never restate the caption as alt text; mark it a duplicate instead.
- Respect the {{PLATFORM}} alt text limit and give the count in the table.
- Where {{ASSET_DESCRIPTIONS}} is too vague to describe honestly, write [DESCRIBE THIS TO ME] rather than guessing at the image.
Replace each placeholder with your own detail. The more specific you are, the less the model invents.
When should I use this rather than writing alt text in the scheduler?
When a whole batch is ready and the accessibility fields are all empty. Writing alt text asset by asset in the scheduler produces descriptions that restate the caption, because you have just written the caption. Running the batch against {{POST_COPY}} is what catches those duplicates and flags them as duplicates.
What do I need in front of me?
Descriptions of each asset detailed enough to write from, the post copy, the platform, and the on-image text transcribed by you. That transcription is the part a model cannot recover from a description of an image. Where your description is too vague, it returns [DESCRIBE THIS TO ME] rather than guessing.
What comes back, and which list matters?
A table of alt text with character counts, what each description deliberately leaves out, and a duplicate flag, then two lists. List A, the assets text alone cannot fix, is the one to act on: it shows which template keeps producing images that carry their meaning in on-image text.
What is the mistake?
Treating alt text as a description of everything visible. It should carry what matters for the point the post is making, which is why the table names the detail dropped. Test one: read an alt text aloud with the image hidden, and if you cannot tell what the post argues, it is not finished.