Guide de performance
Optimisation des images pour l'e-commerce : formats, redimensionnement et diffusion
Préservez la netteté des photos produit sans envoyer des fichiers de taille ordinateur à chaque acheteur, appareil et connexion.
L'imagerie produit fait partie de l'expérience de vente, mais elle est souvent aussi la charge utile la plus importante d'une page de catégorie ou produit. Une boutique peut avoir un HTML rapide et sembler lente parce qu'elle télécharge une photographie de 3 000 pixels dans un emplacement mobile de 320 pixels, retarde son plus grand affichage de contenu ou décale la mise en page lorsqu'une image arrive enfin.
La solution pratique n'est pas de « tout compresser ». C'est un système de diffusion : choisissez la bonne source et le bon recadrage, générez un ensemble borné de dimensions et formats, exposez les choix au navigateur, réservez l'espace de mise en page, chargez les images critiques tôt et mettez en cache les variantes stables à l'edge. Les conseils web.dev sur la performance des images et la documentation sur le SEO des images de Google fournissent des références utiles fondées sur les standards.
1. Inventorier les images par fonction
Commencez par des pages représentatives : accueil, catégorie, recherche, détail produit, panier et pages de destination promotionnelles. Consignez pour chaque image sa largeur rendue, son ratio d'aspect, sa taille de fichier, son format, sa priorité de chargement et si elle est au-dessus de la ligne de flottaison. Distinguez :
- Les photos produit qui nécessitent des recadrages cohérents et une bonne fidélité visuelle.
- Les bannières hero qui peuvent nécessiter une direction artistique pour le mobile.
- Les miniatures et nuanciers qui peuvent utiliser des dimensions plus petites.
- Les logos et graphiques d'interface qui sont peut-être mieux adaptés au SVG.
- Les images décoratives qui ne doivent pas concurrencer le contenu produit.
Utilisez l'emplacement rendu, et non le fichier source, comme point de départ. Une image de 1 200 pixels CSS peut nécessiter une candidate 2x pour un écran à forte densité, mais elle n'a pas automatiquement besoin du téléversement original de 4 000 pixels. Conservez le master original pour l'édition ; optimisez le dérivé de diffusion.
2. Choisir les formats selon le contenu et la prise en charge
Pour les photographies, testez AVIF et WebP face à un fallback JPEG. AVIF peut être plus petit pour une qualité visuelle comparable, tandis que WebP est largement pris en charge par les navigateurs modernes. JPEG reste un fallback pratique pour les anciens clients et systèmes. Pour la transparence, testez WebP ou AVIF face au PNG ; pour les dessins au trait, le texte et les logos, SVG ou les formats sans perte peuvent mieux préserver les contours.
Il n'existe pas de valeur de qualité universelle. Comparez les images à leur taille d'affichage réelle, y compris les étiquettes produit, les textures fines de tissu, les tons de peau et la fidélité des couleurs. Un fichier plus petit avec des artefacts ou du flou visibles n'est pas une optimisation pour une marque de distribution.
Si le serveur sélectionne une représentation à partir de l'en-tête Accept de la requête, faites connaître cette variation au cache par Vary: Accept ou une politique de variante équivalente prise en charge par le fournisseur. Sinon, un navigateur peut recevoir un format qu'il ne prend pas en charge. Les conseils web.dev sur les formats expliquent les compromis et le modèle de fallback.
Ne chargez pas l'image LCP en différé
L'image principale du produit ou hero au-dessus de la ligne de flottaison fait généralement partie du chemin critique. Donnez-lui la bonne priorité et les bonnes dimensions ; chargez en différé les images qui se trouvent réellement sous la zone d'affichage initiale.
3. Générer des dimensions responsives
Utilisez srcset avec des descripteurs de largeur et sizes pour décrire la mise en page. Voici un modèle simplifié :
<img
src="/shoe-800.webp"
srcset="/shoe-400.webp 400w, /shoe-800.webp 800w, /shoe-1200.webp 1200w"
sizes="(min-width: 1024px) 33vw, 50vw"
width="800"
height="1000"
alt="Chaussure de course bleue, vue de côté"
>
Le navigateur peut choisir une candidate selon la zone d'affichage et le ratio de pixels de l'appareil. sizes importe : s'il indique 100vw pour une image affichée dans une carte étroite, le navigateur peut télécharger un fichier inutilement volumineux. S'il sous-estime l'emplacement, le résultat peut manquer de netteté sur les écrans à forte densité.
Gardez l'échelle des candidates bornée. Une variante pour chaque largeur possible augmente le stockage, le travail de transformation, les entrées de cache et les manques à froid. Choisissez des dimensions autour des véritables points de rupture de mise en page et mesurez si une dimension supplémentaire réduit significativement les octets. Pour les bannières à direction artistique, utilisez picture avec un recadrage mobile plutôt que de forcer une composition ordinateur dans chaque ratio d'aspect.
4. Protéger le LCP et la stabilité de mise en page
Identifiez l'élément LCP dans une trace de laboratoire et confirmez-le dans les données terrain. Pour l'image LCP, utilisez un <img> ou <picture> normal et découvrable, évitez loading="lazy" et envisagez fetchpriority="high" lorsque le navigateur a besoin d'un signal explicite. Ne préchargez pas toutes les images : des préchargements concurrents peuvent ralentir la requête critique.
Réservez le ratio d'aspect de l'image avec les attributs width et height ou CSS aspect-ratio. Cela évite que le contenu sous l'image se déplace à l'arrivée de la réponse et aide à maîtriser le Cumulative Layout Shift. Utilisez un espace réservé avec les mêmes dimensions et le même comportement de recadrage. Un aperçu flouté peut être utile, mais ne doit pas retarder l'image réelle ni nécessiter un lourd travail côté client.
Les images de galerie sous la ligne de flottaison, les cartes de recommandation et les médias de pied de page peuvent utiliser le chargement différé. Testez le seuil de distance sur des connexions lentes afin que les utilisateurs ne fassent pas défiler une galerie vide, mais ne chargez pas tout le catalogue avant qu'il soit nécessaire.
5. Diffuser et mettre en cache les variantes efficacement
Un CDN d'images ou une couche de transformation edge peut sélectionner un format, une largeur, une qualité, un recadrage et un point focal à partir d'un schéma d'URL contrôlé. La page Image adaptative d'Optimi décrit ce modèle de diffusion. Que les transformations aient lieu au build, à l'origine ou à l'edge, l'URL doit identifier la sortie de façon déterministe afin qu'elle puisse être mise en cache sans risque.
Utilisez des durées longues pour les URL de variantes immuables. Lorsqu'une image source change, modifiez sa version ou purgez son tag associé et tous les dérivés requis. Ne comptez pas sur la purge d'une URL originale pour rafraîchir chaque URL transformée à moins que le fournisseur ne garantisse explicitement cette relation. Examinez les clés de cache pour la largeur, le format, la qualité, le recadrage, la locale et les indications d'appareil.
Évitez un paramètre de qualité non borné fourni directement par les utilisateurs. Normalisez les valeurs dans un petit ensemble approuvé. Limitez les dimensions maximales et opérations de transformation, et rejetez les URL de récupération distantes ou malformées afin d'éviter l'abus de ressources. Ce sont des contrôles de diffusion autant que des contrôles de performance.
6. Vérifier sur de vrais types de page
Utilisez une matrice comprenant un mobile lent, un mobile à forte densité, un ordinateur, différents navigateurs et des régions géographiques représentatives. Pour chaque type de page, vérifiez :
- Le format demandé et les dimensions intrinsèques.
- La taille de transfert et la taille décodée.
- Les en-têtes
Content-Type,Cache-Control,Ageet de statut de cache. - Le bon recadrage, point focal, rendu des couleurs et comportement de fallback.
- Le LCP, CLS et la qualité visuelle à la taille réelle de l'emplacement.
- Les succès de cache lors des requêtes répétées et le volume de transformations à l'origine.
PageSpeed Insights utilise des données d'utilisateurs réels sur une période récente de collecte et rapporte le 75e percentile lorsque les données sont suffisantes. Combinez-le avec les DevTools du navigateur, une trace et un inventaire d'images. Un score de laboratoire peut s'améliorer alors qu'une page de catégorie mobile à forte valeur sert encore des images surdimensionnées.
Revenir en arrière sans risque
Conservez l'URL d'image et la politique de transformation précédentes pendant le test du nouveau pipeline. Si le décodage AVIF, la couleur, le recadrage ou la latence de transformation est incorrect, ramenez la préférence de format ou le modèle d'URL au chemin WebP ou JPEG connu comme fiable. Si une mauvaise source a été publiée, corrigez-la à l'origine, invalidez ses tags ou URL et vérifiez plusieurs variantes avant de rouvrir le déploiement.
Ne supprimez pas immédiatement les anciennes ressources après avoir modifié le HTML. Les pages en cache, résultats de recherche, e-mails et navigateurs peuvent encore les demander. Conserver une ressource immuable précédente est généralement moins coûteux et plus sûr que de forcer chaque client à passer par une purge synchronisée.
Erreurs courantes
- Servir le téléversement original à chaque viewport.
- Considérer AVIF comme un remplacement sans tester les fallbacks.
- Omettre
sizes, ou fournir une valeur qui ne correspond pas à la mise en page. - Charger l'image LCP en différé.
- Omettre les dimensions intrinsèques et provoquer des décalages de mise en page.
- Créer des centaines de variantes quasi dupliquées qui ne deviennent jamais chaudes.
- Ignorer
Vary: Acceptlorsque la négociation de format se fait à l'origine. - Purger l'URL source alors que les dérivés transformés restent en cache.
- Optimiser les octets sans vérifier le détail produit, la couleur, le recadrage et la qualité de zoom.
Pour la politique de cache, lisez le guide contenu statique ou dynamique. Pour l'architecture de diffusion, consultez le guide CDN managé d'Optimi et, pour les priorités e-commerce, la solution e-commerce. Le processus de purge du cache couvre le versionnage et l'invalidation des dérivés.
Il n'y a que deux choses difficiles en informatique : l'invalidation du cache et le choix des noms.
Faites travailler davantage chaque image produit
Échangez avec notre équipe sur la diffusion responsive d'images, la gouvernance des variantes et la mesure de performance pour l'e-commerce.
Optimiser la diffusion des images