Optimiser les performances PrestaShop — Guide technique
Une boutique PrestaShop lente perd des clients et du positionnement Google. Après avoir optimisé de nombreuses boutiques (dont 4 ans d'optimisation chez levapoteur-discount.fr), voici les techniques qui font vraiment la différence.
Mesurer avant d'optimiser
Avant de toucher quoi que ce soit, mesurez :
- Google PageSpeed Insights : score mobile et desktop, Core Web Vitals (LCP, FID/INP, CLS)
- GTmetrix : waterfall détaillé, TTFB
- WebPageTest : first byte, speed index, visual complete
- Chrome DevTools : onglet Performance pour le profiling détaillé
Notez ces métriques — vous les comparerez après optimisation.
Optimisation serveur
PHP
- Version : utilisez PHP 8.2 ou 8.3 minimum. Chaque version majeure apporte 10-20% de performance
- OPcache : activé avec
opcache.memory_consumption=256,opcache.max_accelerated_files=20000 - memory_limit : 256M minimum (512M recommandé pour les gros catalogues)
MySQL
- innodb_buffer_pool_size : 70% de la RAM disponible pour le serveur dédié, ou au moins 1G
- query_cache : désactivé sur MySQL 8+ (remplacé par le cache applicatif)
- Slow query log : activez-le pour identifier les requêtes lentes (
long_query_time=1)
Cache applicatif
Remplacez le cache fichier par Redis ou Memcached :
- Sessions PHP : stockage Redis plutôt que fichiers
- Cache PrestaShop : Redis via la configuration dans
parameters.php - Impact typique : -30 à -50% sur le TTFB
Optimisation base de données
Identifier les requêtes lentes
Activez le slow query log MySQL et analysez les requêtes qui dépassent 1 seconde. Les coupables habituels :
- Requêtes de filtre/recherche sans index appropriés
- JOINs complexes sur les tables de stock et d'attributs
- Requêtes de comptage sur les catégories avec beaucoup de produits
Nettoyage régulier
- bd_log / ps_log : peut atteindre des millions de lignes → purgez régulièrement
- Paniers abandonnés : supprimez ceux de plus de 3 mois
- Stats : les tables de statistiques grossissent vite → purgez ou désactivez si non utilisées
- Connexions clients : la table
guestetconnectionspeut devenir énorme
Optimisation front-end
Images
- Format WebP/AVIF : 25-50% plus léger que JPEG à qualité égale
- Lazy loading : les images sous la ligne de flottaison ne se chargent qu'au scroll
- Dimensions exactes : servez les images à la taille d'affichage, pas en pleine résolution
- CDN images : déchargez le serveur principal
CSS & JavaScript
- Minification : activée dans le BO PrestaShop (Performances)
- Critical CSS : inlinez le CSS au-dessus de la ligne de flottaison
- Defer/async : chargez les scripts non critiques en différé
- Supprimez les modules inutiles : chaque module ajoute du CSS/JS même s'il n'est pas visible
Les modules qui ralentissent
Certains types de modules sont particulièrement gourmands :
- Modules de statistiques (tracking lourd sur chaque page)
- Modules de chat en direct (scripts JS externes)
- Modules de filtres mal optimisés (requêtes SQL non indexées)
- Modules « tout-en-un » SEO/performance (ironie : ils ralentissent souvent le site)
Technique pour identifier le coupable : désactivez les modules un par un et mesurez le TTFB après chaque désactivation.
Core Web Vitals — Les métriques qui comptent
- LCP (Largest Contentful Paint) < 2.5s : l'image ou le texte principal doit s'afficher en moins de 2.5 secondes
- INP (Interaction to Next Paint) < 200ms : le site doit réagir rapidement aux clics
- CLS (Cumulative Layout Shift) < 0.1 : pas de saut de contenu pendant le chargement
Ces métriques sont des critères de positionnement Google depuis 2021.
Résultats que j'obtiens
Sur mes interventions d'optimisation, les résultats typiques :
- TTFB : de 800ms+ à moins de 200ms
- LCP : de 4s+ à moins de 2.5s
- PageSpeed mobile : de 30-50 à 80-95+
- Taux de conversion : +10 à +20% dans les semaines qui suivent
Votre boutique est lente ? En savoir plus sur mes prestations d'optimisation →