AI Alt Text Generator Prompts: Accessibility Text From Photos
Write prompts for an ai alt text generator that turns photos and page context into WCAG-ready alt text for screen readers, products, and charts.
Generate optimized prompts for ChatGPT, Claude & more
Free prompt generator — no account needed.
Try Prompt Generator →An ai alt text generator turns a photo plus page context into short alternative text for screen readers and search. You attach the still, name the page job, and demand a factual line near 125 characters: subject and action, with no photo-of opener and no stuffed keywords. Decorative assets get empty alt. Charts name the trend. You leave with ROLE / TASK / FORMAT prompts for GPT-5.6 Sol, Claude Fable 5, and Gemini 3.5 Flash, kits for products and blog stills, chart and UI patterns, a CMS paste workflow, and a mistakes list. The sister comparison on this blog splits human captions from image-generation prompts. Stay here for accessibility. Soft scaffold: https://promptmake.net/text
What an AI alt text generator is for
You search "ai alt text generator" when a still needs words a screen reader can speak and a crawler can index. Alternative text (alt) is the HTML text that stands in for an image. A person who cannot see the file hears that line. A search engine reads it as a hint about the asset. WCAG 2.2 Success Criterion 1.1.1 (Non-text Content) is the rule set most teams test against as of mid-2026. Informative images need a short, honest substitute. Decorative images need empty alt so the reader skips them. Functional images (a search icon that is a button) need the action the user takes.
An AI path does the same job at volume. You attach a product shot, a blog hero, a chart, or a UI capture. You add context the pixels hide: page type, product name from your catalog, link target, language. The model writes a candidate line. You edit one pass for invented props and stuffed keywords. You paste into WordPress, Shopify, Webflow, or raw HTML. That is the finish line. Midjourney flags, FLUX photography clauses, and SDXL negatives belong in other guides on this blog.
This page supports the PromptMake alt text use case at https://promptmake.net/use-case/alt-text. The describer-versus-prompt article on this blog answers caption versus image-generation dialect. Stay here for accessibility prompts: how to ask GPT-5.6 Sol, Claude Fable 5, Claude Opus 5, Claude Sonnet 5, Gemini 3.5 Flash, or Gemini 3.1 Pro for alt that a human can trust.
Strong fit for:
- Editors and SEO folks who ship blog stills and need factual alt without writing 40 lines by hand
- Shop teams who must describe product photos at catalog scale without stuffing buy-now phrases into the alt field
Skip this page if you want a generator prompt for a new render. Open the image-to-prompt posts for that job. Alt text serves people first. Search follows honest nouns in the field.
How to prompt an alt text generator AI from a photo
Vision chat models such as GPT-5.6 Sol, Claude Fable 5, and Gemini 3.5 Flash can see an attached photo. They write the wrong kind of text if you ask for a description. A long caption fails a screen reader. A Midjourney-style tag list fails a person. Name the job in sentence one of the prompt: HTML alt text, short, factual, for a screen reader on this page. Feed context the pixels hide: product name from your catalog, whether the image is a link, whether the asset is decorative, the language of the page. The model sees mugs and marble. It does not see that this file sits on a US product page in English. Put that context in the prompt. Use the ROLE / TASK / FORMAT skeleton next, then the context checklist.
GPT-5.5 Instant is enough for a first pass on a quiet product still. GPT-5.6 Sol and Claude Opus 5 hold up better on charts, busy UI captures, and photos with text in the frame. Gemini 3.5 Flash is a fast batch partner if you keep the same skeleton and swap IMAGE_CONTEXT. Name the model in your notes so a teammate can rerun the same ask. Vague "describe this image" chats produce paragraphs. Alt fields want one sentence you can defend.
Role, task, and format for screen-reader text
Copy this skeleton. Fill the brackets. Attach the photo in the same turn.
ROLE: You write HTML alt text for screen-reader users and on-page search. You describe what is visible. You do not invent brands, emotions, or offers. You do not start with image of, photo of, or picture of.
TASK: Write one alt string for the attached image on PAGE_TYPE. Use IMAGE_CONTEXT for names and facts the pixels do not show. If the image is decorative, output [decorative] and nothing else. If the image is a control or a link, describe the action the user takes.
FORMAT: One sentence. Aim under 125 characters. Subject and action first. Add setting if it changes meaning. Match PAGE_LANGUAGE. Return the alt string alone: no quotes, no label, no extra line.
PAGE_TYPE: [product detail | blog hero | in-article photo | chart | UI screenshot | logo link | decorative]
IMAGE_CONTEXT: [product name and color from catalog, or chart takeaway you verified, or button purpose]
PAGE_LANGUAGE: [English]
RULES: No keyword stuffing. No call to action. No filename. If a visible word on the image matters (a poster headline, a UI label), include that word. If you cannot see a claimed brand, omit it.
REMINDER: People hear this line. Search engines store it. Keep it true.
That reminder keeps the model from writing ad copy. Models love tidy slogans. Your rule forces a substitute a screen reader can speak. After the first reply, run a 20-second edit: delete a color the photo does not show, drop a brand you did not supply, cut a second clause that restates the subject.
Context you must add besides the photo
Pixels omit the job. A white sneaker on seamless white can be a PDP hero or a decorative stripe. The right alt changes with that job. PDP hero wants the product name you sell and the view (side profile, pair on concrete). Size-guide thumbnail may be decorative if adjacent text names the chart. A home-logo link wants the destination: "Acme home". Paste PAGE_TYPE and IMAGE_CONTEXT with each still. Skip them and the model guesses a caption that fights the page.
Add locale and audience when they change words. A US apparel page says "sneakers". A UK page may say "trainers" if that is the catalog term. Match the page language so a screen-reader voice pack and the surrounding copy agree. Add a do-not list for claims you cannot see: sale badges you will set in HTML, "bestseller" banners, lifestyle stories. The photo shows a mug on marble. The sale lives in a CMS field. Keep them apart.
For charts, paste the takeaway you checked in the data. "Bar chart of traffic" fails. "Bar chart: site traffic up 47 percent from January to June 2024" works if that number is true. The model can misread axes. Your IMAGE_CONTEXT is the source of truth. For UI screenshots in docs, name the product and the screen: "Checkout page with Apple Pay selected". Skip pixel-level chrome unless a control is the point of the figure.
Step-by-step workflow from photo to HTML alt
A repeatable loop beats a lucky ChatGPT line. Decide the image job before you open a model. Crop or pick the file you will publish. Write PAGE_TYPE and IMAGE_CONTEXT in a notes doc so the prompt stays stable across GPT, Claude, and Gemini. Attach one still per turn, generate a line, edit invented props, then paste into the CMS alt field. Spot-check with a screen reader or an accessibility overlay on a staging URL. Save the prompt next to the component so the next editor does not invent a new voice. Prep and generate-and-paste sit on separate cards so you can hand the same sheet to a contractor.
Batch work follows the same loop with one extra rule: one PAGE_TYPE per batch. Mixing blog heroes and SKU cutouts in a single thread teaches the model to blend lengths and tone. Start a new chat when the job changes. For a 200-SKU drop, lock the skeleton, swap IMAGE_CONTEXT and the file, and keep a spreadsheet column for the edited alt you shipped. Models drift if you chat about lighting between SKUs. Soft help if the skeleton is messy: shape the ask once at https://promptmake.net/text, then fill PAGE_TYPE yourself.
Prep the file and the page job
- Open the page (or the template) where the image will live. Note nearby headings and captions so alt does not parrot them word for word.
- Classify the asset: informative, functional (control or link), or decorative.
- Crop to the published frame. Watermarks, browser chrome, and collage gutters become fake subjects.
- Write IMAGE_CONTEXT from sources you trust: catalog title, verified chart number, button purpose. Do not pull claims from the filename.
- Set PAGE_LANGUAGE to the language of the page.
- If the image is decorative (divider, background wash, leftover stock that adds no fact), plan empty alt and skip a generate. You can ask the model to confirm [decorative] so a junior editor does not invent a poem.
Prep is the part teams skip. A model cannot know your SKU name from a silent packshot. A model cannot know a logo is the home link unless you say so. Five minutes here save a rewrite after QA flags the field.
Generate, edit, and paste into the CMS
- Attach the file to GPT-5.6 Sol, Claude Fable 5, or Gemini 3.5 Flash. Paste the filled skeleton in the same message.
- Read the output against the pixels. Delete invented props, wrong colors, and extra clauses.
- Count characters. If the line runs far past 125, cut setting words that do not change meaning. Keep the subject and the action.
- For [decorative], set alt to empty in HTML (the attribute is present, the value is empty). Do not omit the attribute.
- For charts and dense infographics, keep a short alt plus a visible caption or aria-describedby block with the longer explanation.
- Paste into the CMS alt field. In HTML, that is the alt attribute on img. In Shopify and many page builders, it is the image alt or accessibility text box.
- Hear it once with VoiceOver, NVDA, or TalkBack on a staging page. If the spoken line fails, edit it before you ship.
- Store the prompt, the model name, and the date with the component. Reuse it for the next still in the same PAGE_TYPE.
Guests on PromptMake /text get about three generations per day; a free account raises that to about five. Spend those runs on the skeleton. Skip synonym retries of a weak ask. The dedicated alt text use case can analyze a still in product if you want photo-in, alt-out. This workflow stays prompt-first so you can run it in any vision chat you pay for.
Prompt kits by image type
One skeleton covers many assets if you swap PAGE_TYPE and the success test. Product photos need catalog nouns and view. Blog stills need subject and action without a recap of the headline. Charts need the finding you verified. UI shots need the screen and the state. Decorative files need a skip. Write a kit per family and keep IMAGE_CONTEXT as the moving part. These kits are paste-ready TASK add-ons. Keep ROLE, FORMAT, and RULES from the skeleton so length and tone do not drift. If a kit and the photo disagree, trust the photo and your catalog, then fix IMAGE_CONTEXT.
Do not mix kits in one turn. A product kit that leaks into a chart turn writes "blue bars on white" and skips the number. A blog kit that leaks into a logo link writes a scene instead of a destination. New chat, same ROLE, new PAGE_TYPE. Save four snippets in your notes app: product, editorial, data, chrome. That set covers most marketing sites.
Product photos and blog stills
Product TASK add-on: "Name the product from IMAGE_CONTEXT, then color or material you can see, then view (front, side, on-body, in-use). Skip lifestyle stories and skip price."
Good product alt: Matte black ceramic mug on white marble, side view.
Weak product alt: buy cheap mugs online fast shipping best ceramic cup.
On-body product: Navy merino crewneck sweater, crew fit, worn standing against a white wall.
Pair or set: Two white leather sneakers, extra laces beside them, top-down on concrete.
Blog still TASK add-on: "Name the people or objects, the action, and the place if it matters. Do not restate the article title. Do not guess names unless IMAGE_CONTEXT supplies them."
Good blog alt: Baker shapes sourdough on a floured wood counter.
Weak blog alt: image of a happy artisan living their best life in a rustic kitchen.
Editorial portraits: If the person is named in IMAGE_CONTEXT, use the name. If you do not have a name, say "speaker at a podium" or "runner on a track" plus visible clothing that helps. Skip beauty adjectives. Those words add no fact.
Charts, UI screenshots, and decorative assets
Chart TASK add-on: "State the chart type in a few words, then the finding from IMAGE_CONTEXT. If axes are unreadable, say so and use IMAGE_CONTEXT alone. Do not invent a percent."
Good chart alt: Bar chart: site traffic up 47 percent from January to June 2024.
Weak chart alt: a colorful bar graph.
UI TASK add-on: "Name the product and the screen. Name the selected state if it is the point of the figure. Skip browser chrome and skip decorative illustration in the shot."
Good UI alt: Checkout screen with Apple Pay selected.
Weak UI alt: screenshot of a website.
Logo-as-link TASK: "Output the destination. Example pattern: Acme home."
Decorative TASK: "If the file is a divider, background wash, or stock that adds no fact beyond nearby text, output [decorative]."
In HTML, [decorative] becomes empty alt. Screen readers then skip the file. Writing a full sentence on a swirl divider wastes time and adds noise. QA should treat a poetic alt on a decorative asset as a defect, same as a missing alt on a product hero.
Common mistakes that fail screen readers
The frequent failure is stuffing a query into alt. "buy running shoes cheap" fails the person who hears the page and trains search to distrust the field. Name the shoe you can see and the view. Search can take the nouns that belong to the photo. Another frequent failure is starting with "image of" or "picture of". Screen-reader users know it is an image. The prefix burns characters and patience.
Other traps show up in audits:
- Using the filename (DSC_4412.jpg or nike-air-max-final-v3) as alt
- Omitting the alt attribute on decorative files instead of setting empty alt
- Duplicating a visible caption word for word so the reader hears the same sentence twice
- Pasting a Midjourney or FLUX prompt into the alt field because a vision chat defaulted to generator dialect
- Guessing a smile, a brand story, or a sale the pixels do not show
- Writing 300 characters of scene-setting that a voice engine then clips or that a user cannot scan
Repair path: classify the job, fill the skeleton, attach one file, edit invented props, cap length, paste. Change PAGE_TYPE when the template changes. Do not fix a decorative divider by writing a longer poem. Empty alt is the fix.
Scaffold alt text prompts in PromptMake /text
PromptMake /text turns a rough alt-text ask into a labeled prompt you paste into ChatGPT, Claude, or Gemini with the photo attached. You type a messy sentence: "alt text for PDP mug photos, under 125 characters, no image-of, empty if decorative." The enhancer returns structure: role, constraints, format. You add PAGE_TYPE and IMAGE_CONTEXT. You attach the still in the vision chat. Soft start: https://promptmake.net/text
Guests get about three text generations per day. A free account raises that to about five. Use a run to lock ROLE / TASK / FORMAT once per PAGE_TYPE. Do not burn the quota on synonym loops. PromptMake cannot see your CMS, your SKU sheet, or your staging screen reader. You edit the line and paste it yourself.
Photo-in, alt-out without a chat scaffold lives on the alt text use case: https://promptmake.net/use-case/alt-text. Pair the two if you want a product path for uploads and a /text path for a reusable prompt you share with a contractor. Keep generation prompts (Midjourney, FLUX, Leonardo) in the image-to-prompt articles. This workflow stops at a line a person can hear.
FAQ
What is an ai alt text generator?
An ai alt text generator is a prompt-plus-model loop that writes HTML alternative text from a photo and the context you supply. The output is a short factual line for screen readers and search, or a decorative skip you map to empty alt. You attach the still, name the page job, and edit invented props. Then you paste into the CMS alt field.
How do I prompt an alt text generator AI from a photo?
Attach the image and lead with ROLE / TASK / FORMAT: HTML alt, under about 125 characters, no photo-of opener, factual subject and action. Add PAGE_TYPE and IMAGE_CONTEXT so the model knows product names, chart findings, and whether the file is a link or decorative. GPT-5.6 Sol, Claude Fable 5, and Gemini 3.5 Flash all follow that shape as of mid-2026. Treat the first reply as a draft you check against the pixels.
How long should AI alt text be?
Aim near 125 characters for a single informative image. That length fits common screen-reader habits and holds a subject plus an action. Complex charts need a short alt plus a visible caption or aria-describedby block for the longer reading. Decorative files need empty alt.
Should alt text include keywords?
Include a keyword if it names what is in the frame: the product title, the color you see, the place that matters. Drop buy-now phrases, city lists, and queries the photo does not support. Google treats stuffed alt as spam; screen-reader users treat it as noise. Honest nouns that match the catalog are enough for both jobs.
What alt text should decorative images have?
Decorative images (dividers, background washes, stock that adds no extra fact) should use empty alt: the attribute exists, the value is empty. That tells screen readers to skip the file. Ask your alt text generator ai to return [decorative] when PAGE_TYPE is decorative, then map that token to empty alt in HTML. A pretty sentence on a swirl is a defect.
Can ChatGPT or Claude write alt text if I attach a photo?
GPT-5.5 Instant, GPT-5.6 Sol, Claude Fable 5, Claude Opus 5, Claude Sonnet 5, Gemini 3.5 Flash, and Gemini 3.1 Pro can describe an attached image. They write usable alt when you demand the format in sentence one and you supply IMAGE_CONTEXT. A vague ask yields a caption or a generator-style paragraph. Edit the line against the pixels before it ships.
How do I start with PromptMake /text for free?
Open https://promptmake.net/text and describe the alt job in plain words: PAGE_TYPE, length cap, no image-of prefix, decorative skip rule. Generate once, fill IMAGE_CONTEXT, then paste the prompt into your vision chat with the photo. Guests get about three text runs per day; registered free users get about five. For a photo-in product path, use https://promptmake.net/use-case/alt-text after the prompt shape is stable.
Ready to generate your own prompts?
Free. No sign-up required. Works with all major AI models.