Image SEO Audit & Optimisation Guide
A complete audit of your website's images with prioritised fixes, compression strategies, responsive image implementation, and ready-to-use code examples.
michael-andrews-hero.png860 KB unoptimised PNG — WebP variant (53 KB) exists but is not used as primary source
Use michael-andrews-hero.webp as the primary src. Savings: ~807 KB per page load.
our-work/chorley-cctv-*.png4.5 MB PNG case study screenshot — 90× larger than it needs to be
Compress to WebP at 85% quality. Target: under 200 KB. Resize to max 1200px wide before export.
our-work/integrative-counselling-*.png4.3 MB PNG — same issue as above
Convert to WebP, resize, and compress. Use squoosh.app or sharp CLI for batch processing.
our-work/ezra-s-confetti-*.png5.3 MB PNG with malformed filename ("yyyyyyyyyyyy" suffix)
Rename to ezra-confetti-wedding-seo-case-study.webp and compress. Over 5 MB is completely unacceptable for a web image.
geralt-search-engine-optimization-443_512.gif651 KB animated GIF — GIF is an obsolete format for animation on the web
Convert to WebP animation or an HTML5 <video> with autoplay muted loop. WebP animated files are typically 64% smaller.
michael_andrews-keyword_research-diploma_(1).png413 KB PNG diploma image — "(1)" suffix indicates a downloaded duplicate
Rename to michael-andrews-keyword-research-diploma.webp and convert. Target: under 60 KB.
michael_andrews-google_analytics_4-diploma_(2).png406 KB PNG — same duplicate naming pattern
Rename to michael-andrews-google-analytics-4-diploma.webp and compress.
michael_andrews-third-party_seo_tools-diploma_(1).png407 KB PNG — same duplicate naming pattern
Rename to michael-andrews-third-party-seo-tools-diploma.webp.
images.jpgCompletely generic filename — no keyword value for image search
Rename to describe the subject, e.g. wix-seo-consultant-michael-andrews.jpg.
1576755090234.pngNumeric timestamp filename — zero SEO value, impossible to maintain
Rename to describe the image content, e.g. wix-seo-results-dashboard.png.
Screenshot_20260222_161731_TikTok.jpgRaw screenshot filename leaked into production assets
Rename to describe content (e.g. wix-seo-tiktok-review-2026.jpg) or remove if not used.
istock-1390529500.jpgStock photo ID as filename — no descriptive keyword context
Rename to describe the scene, e.g. seo-data-analysis-graph-chart.jpg.
ResponsiveImage.tsxWebP detection relies on a hardcoded list of 9 images — any new image added without updating the list will miss WebP optimisation
Replace hardcoded list with a dynamic file-existence check or build-time manifest generation.
Local images (non-Pexels)No srcSet generated for local images — all devices receive the full-resolution file
Add responsive srcSet variants at 640w, 960w, and 1280w for all local images over 100 KB.
index.htmlOnly the homepage hero image has a <link rel="preload"> — city and service pages have no preloaded hero images
Add page-specific preload hints in each page component's head using a custom hook or Helmet.
sitemap.xmlimages.jpg, 1576755090234.png, Screenshot TikTok.jpg, and several diploma PNGs are absent from the image sitemap
Add all production images to sitemap.xml with descriptive <image:title> and <image:caption> tags.
All diploma PNGsNo WebP variants exist for michael_andrews-on-page_seo-diploma.png, michael_andrews-local_seo-diploma.png, michael_andrews-technical_seo-diploma.png
Convert all diploma images to WebP for consistent format coverage.
geralt-woman-163425_1280.webpWebP variant is 101 KB — good, but naming still references stock ID rather than subject matter
Consider renaming to seo-professional-woman-laptop.webp for future-proofing keyword targeting.
Priority Action Plan
- →Compress the 5 case study PNGs (4–5 MB each → under 200 KB)
- →Convert animated GIF to WebP or <video>
- →Replace michael-andrews-hero.png with .webp in all usages
- →Compress diploma PNGs (400 KB each → under 60 KB)
- →Rename all generic/ID-based filenames to descriptive slugs
- →Add srcSet responsive variants for all local images >100 KB
- →Replace hardcoded WebP list with build-time manifest
- →Add missing images to sitemap.xml with captions
- →Add page-specific preload hints for city page heroes
- →Convert remaining JPGs to WebP format
- →Automate image optimisation in CI/CD pipeline
- →Implement build-time manifest generation script