SEO des images : texte alternatif, formats, compression et lazy load

Comment les fichiers image, le texte alternatif, le balisage responsive et la vitesse de chargement travaillent ensemble pour que les images restent utiles et visibles dans la recherche.

Google Images traite des milliards de requêtes chaque mois. Selon les données de Jumpshot, environ 22 % de l'ensemble des recherches sur le web concernent la recherche d'images. Pour les sites e-commerce, les plateformes de contenu et les portfolios, c'est un canal de trafic important, que la plupart des sites ignorent complètement.

L'optimisation des images influe non seulement sur la visibilité dans Google Images, mais aussi sur la recherche organique : vitesse de chargement des pages (LCP), Core Web Vitals, expérience utilisateur et, indirectement, positionnement dans la SERP principale.

La chaîne SEO des images : format, srcset, lazy load, alt et sitemap d'images. Cinq étapes pour passer d'un JPG lourd à une image rapide dans les résultats de recherche.
Sans texte alternatif, les images sont invisibles pour Google. Le moteur ne peut pas « lire » une image : il s'appuie sur les métadonnées, le contexte environnant et l'attribut alt. Sans ces éléments, la probabilité d'apparaître dans Google Images est proche de zéro.

Pourquoi optimiser les images pour le SEO

Une bonne optimisation des images répond à plusieurs enjeux à la fois : elle améliore l'accessibilité du site pour les personnes malvoyantes, accélère le chargement des pages, donne à Google un contexte clair et ouvre un canal de trafic organique supplémentaire via Google Images.

Cinq étapes pour optimiser les images pour les moteurs de recherche.
22 %

Part dans la recherche

De l'ensemble des requêtes de recherche concernent la recherche d'images

21 %

Baisse du LCP

Gain moyen obtenu en passant du JPEG au WebP à qualité visuelle égale

~60 %

Poids de la page

En moyenne, les images représentent la plus grande part du poids d'une page

2×

Conversion

Les sites aux images optimisées convertissent mieux grâce à des temps de chargement plus courts

Les images sont la ressource la plus lourde de la plupart des pages. Non optimisées, elles ralentissent le chargement, dégradent le LCP (Largest Contentful Paint) et pèsent directement sur les scores Core Web Vitals. Depuis 2021, Google prend en compte les CWV comme signal de classement.

Texte alternatif : règles de rédaction

L'attribut alt (alt="...") est le seul moyen d'expliquer à Google ce que montre une image. Il s'affiche aussi lorsque l'image ne se charge pas, et il est lu à voix haute par les lecteurs d'écran pour les personnes malvoyantes.

Comment bien le rédiger

MauvaisBon
image.jpgGraphique de la croissance du trafic organique en 2024–2025
photo1Capture d'écran du rapport de couverture dans Google Search Console
SEO SEO SEO keywordsSchéma pas à pas de la configuration de hreflang pour un site multilingue
logoLogo de l'entreprise seohead.tech
(alt vide pour une image importante)Graphique des positions sur les requêtes de marque sur 6 mois

Règles pour le texte alternatif : décrivez ce qui est visible sur l'image ; intégrez naturellement le mot-clé visé si c'est pertinent ; ne commencez pas par des formules comme « image de… », « photo de… » ou « illustration de… », puisque Google sait déjà qu'il s'agit d'une image. Longueur optimale : 5–15 mots.

Les images décoratives (séparateurs, textures de fond, icônes sans signification) doivent avoir un attribut alt vide : alt="". Ce signal indique aux lecteurs d'écran d'ignorer l'image, ce qui est correct du point de vue de l'accessibilité.
html
<!-- Informative image -->
<img
  src="/images/crawl-budget-chart.webp"
  alt="Crawl budget distribution chart by page type"
  width="800"
  height="450"
/>

<!-- Decorative image -->
<img
  src="/images/divider.svg"
  alt=""
  role="presentation"
/>

<!-- Image link: alt describes the link purpose -->
<a href="/tools">
  <img
    src="/images/seo-scripts-icon.webp"
    alt="SEO Scripts: tools for technical audits"
    width="64"
    height="64"
  />
</a>

Noms de fichiers et chemins

Google analyse le nom du fichier image comme signal supplémentaire. Le nom DSC_0047.jpg n'apporte aucune information ; canonical-url-diagram.webp indique le sujet et le contexte.

Mauvais nomBon nom
DSC_0047.jpgseo-audit-checklist.webp
image001.pnggoogle-search-console-coverage-report.webp
photo.jpeginternal-linking-architecture-diagram.webp
img_final_v3_FINAL.pngrobots-txt-structure.webp
Utilisez uniquement des lettres minuscules, des chiffres et des tirets dans les noms de fichiers. Évitez les espaces (encodés en %20), les tirets bas et les caractères spéciaux. Un chemin comme /images/blog/ est plus structuré que /uploads/2024/05/.

Formats : WebP, AVIF, JPEG, PNG

Le choix du format est l'un des principaux leviers d'optimisation. Les formats modernes (WebP, AVIF) offrent des fichiers nettement plus légers à qualité visuelle égale.

FormatCompressionTransparenceAnimation
WebPGain de 25–35 % par rapport au JPEGOuiOui
AVIFGain de 50 % par rapport au JPEGOuiOui
JPEGRéférenceNonNon
PNGMoins efficace que le JPEGOuiNon
SVGVectorielOuiOui
GIFFaibleLimitéeOui
Prise en charge par les navigateurs et recommandations :
FormatPrise en chargeRecommandation
WebP97 %+Format principal pour les photos et les captures d'écran
AVIF90 %+Meilleure qualité, décodage légèrement plus lent
JPEG100 %Solution de repli pour les anciens navigateurs
PNG100 %Uniquement pour les icônes et les captures riches en texte
SVG97 %+Icônes, logos, schémas
GIF100 %À remplacer par du WebP ou une vidéo

Stratégie recommandée : utilisez le WebP comme format principal, avec un JPEG de secours via l'élément <picture>. Passez à l'AVIF lorsque votre audience utilise majoritairement Chrome 85+ et Safari 16+. Réservez le SVG à toutes les images vectorielles, sans exception.

html
<!-- Modern approach: AVIF → WebP → JPEG -->
<picture>
  <source srcset="/images/hero.avif" type="image/avif" />
  <source srcset="/images/hero.webp" type="image/webp" />
  <img
    src="/images/hero.jpg"
    alt="SEO audit of an online store: 340% traffic growth"
    width="1200"
    height="675"
    loading="eager"
    fetchpriority="high"
  />
</picture>

Compression sans perte de qualité

La plupart des images peuvent être compressées de 30 à 70 % sans perte visible de qualité. Outils clés : Squoosh (en ligne), ImageMagick (CLI), Sharp (Node.js), Pillow (Python).

Réglages de qualité optimaux

FormatQualité webOutil
WebP75–85Sharp : sharp().webp({ quality: 80 })
AVIF60–75Sharp : sharp().avif({ quality: 65 })
JPEG75–85ImageMagick : -quality 80
PNGSans pertepngquant : --quality=65-80
Exemple d'implémentation :
javascript
// Next.js: automatic optimisation via next/image
import Image from 'next/image';

// next/image automatically:
// - converts to WebP/AVIF
// - generates srcset
// - adds lazy loading
// - prevents layout shift (requires width/height)
export function HeroImage() {
  return (
    <Image
      src="/images/hero.jpg"
      alt="Organic traffic growth after SEO audit"
      width={1200}
      height={675}
      priority // disables lazy load for the hero image
    />
  );
}
Dans Next.js, utilisez le composant <Image> au lieu de <img>. Il convertit automatiquement en WebP/AVIF, génère le srcset et empêche les décalages de mise en page. Pour les images principales visibles dès l'ouverture de la page (au-dessus de la ligne de flottaison), ajoutez toujours priority : cela réduit le LCP.

Lazy load et loading='eager'

Le chargement différé (lazy loading) reporte le chargement des images situées hors écran jusqu'au moment où l'utilisateur fait défiler la page jusqu'à elles. Cela réduit le poids initial de la page et accélère le Time to Interactive.

html
<!-- Below-fold images: lazy loading -->
<img
  src="/images/article-thumbnail.webp"
  alt="XML sitemap audit screenshot"
  width="400"
  height="225"
  loading="lazy"
/>

<!-- Hero and LCP images: eager + fetchpriority -->
<img
  src="/images/hero.webp"
  alt="Real-time SEO analytics"
  width="1200"
  height="675"
  loading="eager"
  fetchpriority="high"
/>
Comparaison des attributs :
AttributValeurQuand l'utiliser
loadinglazyToutes les images situées sous le premier écran
loadingeagerImage d'en-tête, logo, élément LCP
fetchpriorityhighImage principale de la page (LCP)
fetchprioritylowImages décoratives en bas de page
decodingasyncLa plupart des images : ne bloque pas le rendu
Ne mettez jamais loading="lazy" sur l'image LCP : c'est une erreur critique. Le navigateur différera le chargement de l'élément visuel le plus important de la page, ce qui fera grimper le LCP.

Dimensions, srcset et direction artistique

Indiquez toujours les attributs width et height. Ils permettent au navigateur de réserver l'espace de l'image avant son chargement et évitent le Cumulative Layout Shift (CLS), c'est-à-dire les sauts de contenu pendant le chargement.

html
<!-- srcset: different sizes for different screens -->
<img
  src="/images/blog-cover.webp"
  srcset="
    /images/blog-cover-480.webp 480w,
    /images/blog-cover-800.webp 800w,
    /images/blog-cover-1200.webp 1200w
  "
  sizes="(max-width: 480px) 480px, (max-width: 800px) 800px, 1200px"
  alt="Internal linking architecture guide: site structure diagram"
  width="1200"
  height="675"
  loading="lazy"
/>

L'attribut srcset permet au navigateur de choisir la taille d'image la mieux adaptée à l'écran et à sa densité de pixels. Sur un mobile à une densité de 2x, le navigateur charge la version 800 px au lieu de la version 1200 px : moins de données transférées et affichage plus rapide.

Données structurées

Le balisage Schema.org aide Google à afficher les images dans les résultats enrichis : fiches produits, recettes, articles. Les types les plus pertinents pour les images sont ImageObject, Article, Product et Recipe.

json
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Image SEO: complete guide",
  "image": {
    "@type": "ImageObject",
    "url": "https://seohead.tech/images/blog/image-seo.webp",
    "width": 1200,
    "height": 675,
    "caption": "Image optimisation for search: formats, alt text, compression"
  },
  "datePublished": "2026-05-17",
  "author": {
    "@type": "Person",
    "name": "seohead"
  }
}

Sitemap d'images

Google recommande d'inclure les informations sur les images dans votre sitemap XML : cela aide à indexer les images chargées par JavaScript et apporte un contexte supplémentaire (titre, légende, licence).

xml
<?xml version="1.0" encoding="UTF-8"?>
<urlset
  xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
  xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"
>
  <url>
    <loc>https://seohead.tech/blog/image-seo</loc>
    <image:image>
      <image:loc>https://seohead.tech/images/blog/image-seo.webp</image:loc>
      <image:title>Image SEO: alt text, formats, compression, and lazy load</image:title>
      <image:caption>Complete guide to image optimisation for search</image:caption>
    </image:image>
  </url>
</urlset>
Le sitemap d'images est particulièrement important pour les images chargées par JavaScript (React, Vue, Next.js). Googlebot n'exécute pas toujours le JS pendant le crawl : le sitemap est donc un moyen fiable de s'assurer que les images sont indexées.

FAQ

Le texte alternatif influe-t-il directement sur le positionnement ?
Oui, mais indirectement. Le texte alternatif aide Google à comprendre le sujet de la page et de l'image. Un alt bien rédigé, avec le mot-clé visé, renforce la pertinence de la page, mais le bourrage de mots-clés dans les attributs alt est traité comme du spam.
WebP ou AVIF : lequel est le meilleur ?
L'AVIF offre une meilleure compression (20 à 30 % plus efficace que le WebP), mais il est un peu moins bien pris en charge par les navigateurs et se décode plus lentement sur les appareils d'entrée de gamme. La configuration optimale est AVIF → WebP → JPEG via <picture>. Pour la plupart des projets, le WebP reste aujourd'hui un choix fiable.
Toutes les images doivent-elles être indexables ?
Non. Les images décoratives (fonds, séparateurs, icônes sans contenu) n'ont pas besoin d'être indexées. Laissez un alt="" vide : c'est un signal indiquant à Google d'ignorer l'image lors de l'indexation. Concentrez-vous sur les images de contenu : captures d'écran, schémas, photos de produits.
Comment vérifier que Google indexe mes images ?
Ouvrez Google Search Console, puis « Indexation » et « Pages ». Pour une image précise, saisissez site:votre-domaine dans Google Images et vérifiez la présence de vos images. Utilisez aussi l'outil Inspection d'URL dans la GSC pour vérifier que les images sont accessibles à Googlebot (non bloquées dans le robots.txt).
Les attributs width et height sont-ils obligatoires ?
Oui, pour prévenir le CLS (Cumulative Layout Shift). Sans ces attributs, le navigateur ne connaît pas les dimensions de l'image avant son chargement, ce qui fait sauter le contenu. Le CLS influe directement sur les scores Core Web Vitals et compte comme signal de classement depuis 2021.

Check it with SpiderHead

Free and local: run the audit on your own machine.

Try it