Image SEO: Alt Text, Filenames, and License Markup
Generated images are a traffic asset, not a byproduct. Why the prompt makes bad alt text, and how to handle filenames and license markup properly.
Somewhere in most creators' workflow there's a folder — or a camera roll, or a downloads tab — full of generated images that did their one job (going into a video, a post, a thumbnail) and then just sat there, permanently named something like gen_8841203.png, alt text field empty, license status a shrug. That's the right way to treat a throwaway asset. It's the wrong way to treat an image that's actually good enough to stand on its own on a website or a store listing, which a lot of generated images now are — and every one of those gets treated as a byproduct of the "real" content instead of a traffic asset in its own right.
Why the prompt is not your alt text
The laziest fix — and it's a genuinely common one — is pasting the generation prompt straight into the alt attribute. It feels efficient: the description already exists, why write a new one? Because a prompt is an instruction, not a description. "Golden retriever puppy, studio lighting, shallow depth of field, 85mm, hyperrealistic, trending on artstation" tells a model what to attempt. It doesn't tell a screen reader user or a search crawler what's actually in the finished frame, and it's stuffed with exactly the kind of technical and stylistic noise that reads as keyword spam rather than description. Google is direct about this failure mode: alt attributes filled with keywords rather than useful content create "a negative user experience" and can get a site flagged as spam outright — which is a real risk when a raw prompt string, camera specs and style tags included, gets pasted in wholesale.
Good alt text describes the result, written the way you'd describe the image out loud to someone who can't see it: "Golden retriever puppy lying in grass, soft afternoon light." Same subject, entirely different function. One is a record of what you asked for. The other is a record of what actually exists in the frame, which is the only version that's useful to anyone reading it after the fact.
Filenames: metadata that ships before the page even loads
Google's own image guidance makes the filename point with a simple pair of examples: my-new-black-kitten.jpg versus IMG00023.JPG. One describes the content in the URL itself, before any HTML has been parsed; the other is a camera's default naming scheme, carrying zero information. Every default export from an AI generation tool is the second kind — an opaque ID or timestamp, because the export step has no idea what's in the image and isn't trying to guess. That's fine for a working file. It's a wasted signal for anything that ends up as a live URL on an indexed page.
There's a useful parallel here, worth noticing because it's the same underlying idea running in two different systems. Versely's own agent finds a past generation by matching what you describe against your history "by meaning, not just exact keywords" — you say "that golden retriever image from last week" and it resolves the right file, described rather than remembered by an ID nobody kept track of. Google Images works on the same principle at web scale: it's matching a searcher's description against whatever description-shaped signal your image actually carries — filename, alt text, surrounding page copy. An opaque filename is invisible to that system for the same reason an opaque generation ID would be useless if you had to recall it by name instead of describing what's in it.
Writing alt text that actually functions as alt text
A workable process for anything worth publishing rather than discarding:
- Write the description after generation, not before. The prompt describes intent; the actual output can drift from it in ways large and small. Look at what's really in the frame and describe that.
- Lead with the subject, then the setting, then anything specific that matters for context. "Golden retriever puppy, backyard, chasing a red ball" beats a longer sentence that buries the subject under adjectives.
- Skip the technical and stylistic tags entirely. Camera specs, lighting jargon, and style modifiers belong in the prompt history, not in a description meant for a person or a crawler trying to understand the image itself.
- Stop at one accurate sentence. Google's own guidance treats useful, information-rich, in-context description as the goal — not maximum keyword coverage. A precise, human-readable sentence beats a longer one padded with variations of the same term.
This is a genuinely small amount of extra work per image, and it only makes sense to spend it on images that are actually going to live somewhere public and indexed — a batch of exploratory drafts that never leave your own review folder doesn't need any of this.
License markup: the metadata most creators skip entirely
There's a second layer past alt text that generated images raise in a way regular photography usually doesn't: what are the actual usage rights on this thing, and can Google's own systems tell? Google's image license structured data guidelines require a license URL or an IPTC "Web Statement of Rights" field for an image to become eligible for the Licensable badge in search results — a small, useful piece of trust signal, especially for a store listing where a shopper is implicitly asking "can I actually use this photo" as much as "what does the product look like." The underlying requirement is straightforward but easy to trip on: Googlebot has to be able to reach the page the image sits on at all — a page blocked by robots.txt or a noindex tag never gets its license markup processed regardless of how correctly it's implemented.
For AI-generated images specifically, this is worth pairing with an honest read of what usage rights actually apply to a given generation before publishing markup that claims more than is true — the license question for generated content isn't automatically the same as for a licensed stock photo or an owned photograph, and getting that markup wrong is worse than skipping it.
A Versely workflow
The practical version of all this starts before the SEO step, at generation:
"Generate a golden retriever puppy in a backyard chasing a red ball, warm afternoon light, in the AI image generator."
Once a result is a keeper rather than a discard, that's the moment to write its real description — not by copying the prompt above, but by describing the actual output: subject, setting, one specific detail. If an older generation needs to be tracked down to publish properly later, find something I made before resolves it by description rather than requiring you to remember whatever ID it was exported under, which is the same reason a well-described published image is easier for anyone — human or crawler — to find again later. Cross-check the current model catalog if a specific image needs to be regenerated at higher fidelity before it's worth the SEO effort at all; publishing metadata around an image that's about to be replaced is wasted work in the wrong order.
FAQ
Why is pasting the prompt into alt text a bad idea?
A prompt is an instruction for what to attempt, not a description of what was actually produced — and it's usually loaded with technical and style tags that read as keyword stuffing rather than useful content. Write a fresh, accurate sentence describing the actual result instead.
Does the filename of a generated image actually matter for search?
Yes — it's metadata that's visible before any page content loads. A descriptive filename like golden-retriever-puppy-backyard.jpg carries real information; the opaque ID most generation tools export by default carries none.
What is the Licensable badge, and do I need it?
It's a search-result signal that tells searchers an image's usage rights are documented. It requires a license URL or an IPTC Web Statement of Rights field, and the page hosting the image has to be crawlable and indexable for Google to process it at all. Worth adding for any image meant to be found and reused publicly; skip it rather than mis-claim rights you haven't confirmed.
Should every generated image get full SEO treatment?
No — this is worth the effort specifically for images that end up as live, indexed assets: product photos, blog imagery, portfolio pieces. Exploratory drafts and internal working files don't need descriptive filenames or alt text until one of them actually gets published somewhere.
Before your next generated image goes live anywhere public, give it a real filename and a description of what's actually in the frame — not the prompt that made it — starting in the AI image generator.