Google cannot see images the way humans do. What it reads is the code surrounding your image: the file name, the alt attribute, the surrounding text, and the page's overall structure. Most photography websites get this completely wrong – not because the photographer lacks skill, but because image metadata is invisible in the editor and easy to ignore.
The result: stunning portfolios that rank on page five, behind stock sites and aggregators that do the boring technical work properly.
The file name is the first thing Google reads. DSC_4872.jpg
tells Google nothing. black-and-white-architecture-berlin-glass-facade.jpg
tells Google exactly what the image shows and where it was taken.
Rule of thumb: use lowercase, separate words with hyphens, include your primary keyword and – where relevant – the location. Keep it under 60 characters.
The alt attribute is the single most important SEO signal for
an image. It was originally designed for screen readers, but Google uses it
heavily to understand image content.
A good alt text is descriptive, specific, and naturally includes one or two keywords. It should not be stuffed with keywords and should not simply repeat the file name.
Bad: photo architecture
Also bad: architecture photography berlin glass building facade reflection minimalist black and white
Good: Black and white architecture photography – glass building with mirrored facade in Berlin
Keep alt text under 125 characters. Longer descriptions get truncated by some screen readers and lose SEO value.
The title attribute on an image has minimal direct SEO value
in 2026 – Google largely ignores it. What does matter is the visible
caption below the image. Google treats caption text as strongly related
to the image content, often more so than the surrounding body text.
If your CMS supports captions, use them. A single well-written sentence describing the image, its location, and the occasion it was taken is enough.
An image does not exist in isolation. Google uses the text around it – the heading above, the paragraph below, the page title – to understand what the image depicts. A great alt text on a page with no relevant text will still underperform.
For portfolio pages: add a short paragraph per gallery section. For blog posts: make sure the images are directly relevant to the written content. For e-commerce: the product description is the image's context.
Adding ImageObject schema markup tells Google explicitly
what your image shows, who took it, when, and where. This is particularly
powerful for photographers because it can enable rich results in Google
Images and Google Discover.
Minimal example:
{
"@context": "https://schema.org",
"@type": "ImageObject",
"contentUrl": "https://example.com/photos/berlin-glass-facade.jpg",
"name": "Black and white architecture – glass facade Berlin",
"description": "Minimalist architecture photography of a glass building with mirrored facades in Berlin Mitte.",
"author": { "@type": "Person", "name": "Your Name" },
"datePublished": "2026-03-01",
"locationCreated": { "@type": "Place", "name": "Berlin, Germany" }
}
Beyond metadata, a few technical factors significantly affect how well your images perform in search:
libvips.
loading="lazy" to
images below the fold. This improves Core Web Vitals scores, which
directly impact rankings.
srcset to serve
appropriately sized images to different devices. A 4000px image
served to a mobile phone wastes bandwidth and hurts performance.
<image:image> extension. This helps Google
discover images on pages it may not crawl deeply.
All of the above is straightforward in theory. The problem is scale. If you have 50 images on your website, manually writing optimised alt text, captions, and descriptions for each one is a few hours of work. If you have 500 – or if you run a photography business and regularly upload new work – it becomes a bottleneck that simply does not get done.
This is where most photographers give up and leave the metadata blank. And this is exactly where they lose rankings to competitors who have the patience or the budget to do it properly.
A practical solution is to use an API that analyses your images automatically and returns ready-to-use SEO metadata. You send the image, the API returns alt text, a meta description, a caption, and relevant keywords – all character-limit compliant and optimised for search engines.
LucidSEO's Image Analysis API does exactly this. You send an image URL or upload a file, optionally add a context hint (e.g. "travel photography Berlin"), and within two seconds you receive:
The API supports 12+ languages, works via REST with JSON responses, and integrates into any CMS or custom workflow in minutes. For photographers using WordPress, Squarespace, or a custom Laravel backend, it can be wired into the upload process so metadata is generated automatically every time a new image is added.
If you take nothing else from this article, do these four things:
These are not glamorous tasks. But they are the difference between a portfolio that Google ignores and one that sends you consistent organic traffic – without paying for ads.
Ready to optimize your photos?
Generate SEO-optimized alt texts, descriptions, and keywords automatically — via API.
Start for free