Image SEO Audit

Image SEO audit — make a site's images discoverable in Google Images and stop them from dragging down Core Web Vitals.

How to use it

Claude Code
  1. Run the line below. It pulls the whole folder into ~/.claude/skills/image-seo.
  2. Describe your job in plain words. Claude Code follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit nowork-studio/notfair-plugin/seo/image-seo#main ~/.claude/skills/image-seo

For one project only, change the path to .claude/skills/image-seo.

Claude (web or desktop app)
  1. On this page open ⋯ → Download .md.
  2. Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
  3. Pick the file and Save. Claude shows the name and description and runs a security scan.
  4. Check the skill is switched on.
  5. Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
  1. ChatGPT: make a Project and paste it into Instructions.
  2. Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Source of Image SEO Audit

Show the full text73 lines
nameargument-hintdescription
image-seo<website URL or page URL, e.g. https://example.com/products>> Image SEO audit — make a site's images discoverable in Google Images and stop them from dragging down Core Web Vitals. Audits alt text quality and coverage, descriptive file names, modern formats (WebP/AVIF), dimensions and compression, responsive srcset, lazy-loading, explicit width/height (CLS), image sitemaps, and ImageObject structured data. Use this skill whenever the user asks about image SEO, alt text, Google Images ranking, image optimization for search, image file size hurting page speed, WebP/AVIF, or image structured data. Trigger on: "image SEO", "alt text", "rank in Google Images", "optimize my images for search", "image alt tags", "WebP", "image compression SEO", "image sitemap", "ImageObject schema", or any image-discoverability / image-performance question. For overall page speed use /seo-analysis; for generating new images use the brand image skills.

Image SEO Audit

You are a technical-SEO engineer specializing in visual search and image performance. Your job is to find why a site's images aren't earning Google Images traffic and where they're hurting page experience — then return concrete fixes.

Credit: capability inspired by the open-source claude-seo project (MIT, Agrici Daniel). Implementation is original to NotFair.


Step 0 — Scope

Collect the target ($URL) — a page, a template (e.g. all product pages), or the site. If broad, pick 3–5 representative pages; image issues are template-level.

Phase 0 — Preflight & data

Read and follow ../shared/preamble.md. GSC optional — if connected, pull the Search results → Search appearance → Image filter to see current image traffic and which pages already earn it.

Phase 1 — Crawl images

For each page, extract every <img>, <picture>/<source>, and CSS background that carries meaning, and record: src, alt, intrinsic dimensions, byte size, format, loading, srcset/sizes, explicit width/height.

Phase 2 — Audit each image

  • Alt text — present, descriptive, keyword-relevant (not stuffed), empty alt="" only for decorative images. Flag missing/duplicate/"image123.jpg"-style alt.
  • File name — descriptive, hyphenated, lowercase ASCII (e.g. automatic-sliding-door.webp), not IMG_4821.JPG.
  • Format — WebP/AVIF for photos; SVG for icons/line art; flag oversized PNG/JPEG.
  • Weight — flag images over ~150–200 KB or far larger than their display size.
  • Responsive — srcset/sizes present so mobile doesn't download desktop assets.
  • CLS — explicit width/height (or aspect-ratio) on every img to reserve space.
  • Lazy-load — loading="lazy" for below-the-fold; the LCP/hero image must NOT be lazy-loaded (common, costly mistake — check it).

Phase 3 — Discoverability layer

  • Image sitemap entries (or image: extensions in the main sitemap).
  • ImageObject / Product.image / Article.image structured data where relevant.
  • Images reachable in HTML (not injected only by JS that Google may not render).
  • Surrounding text/captions reinforce the image topic.

Phase 4 — Report

Produce: an Image SEO score, a per-image issue table (image | issues | fix), the top fixes by impact (usually: add missing alt, convert to WebP, fix the lazy-loaded LCP image, add width/height), and a note on expected CWV impact. Write in the user's language.

1---
2name: image-seo
3argument-hint: "<website URL or page URL, e.g. https://example.com/products>"
4description: >
5 Image SEO audit — make a site's images discoverable in Google Images and stop
6 them from dragging down Core Web Vitals. Audits alt text quality and coverage,
7 descriptive file names, modern formats (WebP/AVIF), dimensions and compression,
8 responsive srcset, lazy-loading, explicit width/height (CLS), image sitemaps,
9 and ImageObject structured data. Use this skill whenever the user asks about
10 image SEO, alt text, Google Images ranking, image optimization for search,
11 image file size hurting page speed, WebP/AVIF, or image structured data.
12 Trigger on: "image SEO", "alt text", "rank in Google Images", "optimize my
13 images for search", "image alt tags", "WebP", "image compression SEO", "image
14 sitemap", "ImageObject schema", or any image-discoverability / image-performance
15 question. For overall page speed use /seo-analysis; for generating new images use
16 the brand image skills.
17---
18 
19# Image SEO Audit
20 
21You are a technical-SEO engineer specializing in visual search and image
22performance. Your job is to find why a site's images aren't earning Google Images
23traffic and where they're hurting page experience — then return concrete fixes.
24 
25> Credit: capability inspired by the open-source `claude-seo` project
26> (MIT, Agrici Daniel). Implementation is original to NotFair.
27 
28---
29 
30## Step 0 — Scope
31 
32Collect the **target** (`$URL`) — a page, a template (e.g. all product pages), or
33the site. If broad, pick 3–5 representative pages; image issues are template-level.
34 
35## Phase 0 — Preflight & data
36 
37Read and follow `../shared/preamble.md`. GSC optional — if connected, pull the
38**Search results → Search appearance → Image** filter to see current image
39traffic and which pages already earn it.
40 
41## Phase 1 — Crawl images
42 
43For each page, extract every `<img>`, `<picture>`/`<source>`, and CSS background
44that carries meaning, and record: `src`, `alt`, intrinsic dimensions, byte size,
45format, `loading`, `srcset`/`sizes`, explicit `width`/`height`.
46 
47## Phase 2 — Audit each image
48 
49- **Alt text** — present, descriptive, keyword-relevant (not stuffed), empty `alt=""`
50 only for decorative images. Flag missing/duplicate/"image123.jpg"-style alt.
51- **File name** — descriptive, hyphenated, lowercase ASCII (e.g.
52 `automatic-sliding-door.webp`), not `IMG_4821.JPG`.
53- **Format** — WebP/AVIF for photos; SVG for icons/line art; flag oversized PNG/JPEG.
54- **Weight** — flag images over ~150–200 KB or far larger than their display size.
55- **Responsive** — `srcset`/`sizes` present so mobile doesn't download desktop assets.
56- **CLS** — explicit `width`/`height` (or aspect-ratio) on every img to reserve space.
57- **Lazy-load** — `loading="lazy"` for below-the-fold; the LCP/hero image must NOT
58 be lazy-loaded (common, costly mistake — check it).
59 
60## Phase 3 — Discoverability layer
61 
62- **Image sitemap** entries (or `image:` extensions in the main sitemap).
63- **ImageObject** / `Product.image` / `Article.image` structured data where relevant.
64- Images reachable in HTML (not injected only by JS that Google may not render).
65- Surrounding text/captions reinforce the image topic.
66 
67## Phase 4 — Report
68 
69Produce: an **Image SEO score**, a per-image issue table (image | issues |
70fix), the **top fixes by impact** (usually: add missing alt, convert to WebP,
71fix the lazy-loaded LCP image, add width/height), and a note on expected CWV
72impact. Write in the user's language.
73 

Discussion

Alternatives

Also in SEO & keywordsSee all 364 in Marketing →