Why your PrestaShop is slow: a 15-minute diagnosis
Before you switch hosting or buy a cache module, measure. With these checks you will know within a quarter of an hour where the time is going.
“The store is slow” can mean very different things: the server takes too long to respond, the page is too heavy, or the browser gets stuck running JavaScript. Each one has a different fix, so the first step is to tell them apart.
1. Server time versus browser time
Open the browser’s developer tools (F12), Network tab, and reload the page. Look at the first request, the one for the HTML document:
- If the waiting time (TTFB) is over 800 ms, the problem is on the server: PHP, database or modules.
- If the HTML arrives quickly but the page takes a while to appear, the problem is what gets downloaded afterwards: images, CSS, JavaScript, fonts or third-party scripts.
2. If the server is slow
- PHP version. PHP 8.x is considerably faster than 7.x. Check which one your hosting uses and that OPcache is enabled.
- Debug mode. With
_PS_MODE_DEV_enabled, PrestaShop is much slower. Never in production. - Smarty cache disabled or “Force compilation” enabled in Performance.
- Modules. The debug mode profiler (
_PS_DEBUG_PROFILING_) shows how long each hook takes. A single module that queries an external API indisplayHeadercan add a second to every page. - Database. Statistics and connections tables with millions of rows slow queries down.
3. If the browser is slow
- Unoptimised images: modern formats (WebP, AVIF) and appropriate sizes.
- Third-party scripts: chats, pixels, heatmaps. Each one adds up. Load them after consent and only on the pages where they are needed.
- Uncombined CSS and JS: enable “Smart cache” for CSS and JavaScript in Performance, then check that nothing breaks.
- Fonts loaded from external services: better self-hosted.
4. Measure with real data
PageSpeed Insights gives you two things: lab data (a one-off test) and, if your store has enough traffic, field data from real Chrome users. The latter is what counts for Google.
5. Then decide
If after all this the TTFB is still high with the cache properly configured and no heavy modules, then yes: it is time to talk about hosting. But in our experience, most slow stores are slow because of two or three modules and unoptimised images, not because of the server.