Cache Pro — Full Page Cache with Brotli, Warm-Up & AJAX - Module PrestaShop

PrestaShop Cache Pro Module: Speed Up Your Store with Full Page Cache

+9 downloads ★ ★ ★ ★ ★ 5 / 5 Version 2.0.0 1.7.8 8.0+ 9.1+ 5 languages 🇫🇷 FR 🇬🇧 EN 🇮🇹 IT 🇪🇸 ES 🇵🇱 PL
  • Full page cache: stored pages are sent before PrestaShop builds them, with no database query from the module
  • Customers and visitors with a cart always get normal, exact pages; one copy per language, currency and device
  • Precise purge: a product, price, promotion or stock change clears only the pages concerned
  • Pre-load, Test my cache and a dashboard: hit rate, speed-up, skipped visits, latest purges
  • Gzip and Brotli pre-compression, exclusions, scheduled-task address and token-protected API
  • Compatible with PrestaShop 1.7.8, 8.0+ and 9.1+ (PHP 7.4 minimum)
Not sure yet? Try it free for 24 hours — no credit card required.
Features

Everything you need, nothing you don't.

Full page cache with precise purge, pre-load and pre-compressed pages.

Stored pages, sent first

A stored page is sent before PrestaShop builds the page, with no database query from the module.

Cache pre-load (warm-up)

Visit your pages in advance from the dashboard or a scheduled task, before your visitors arrive.

Gzip and Brotli pre-compression

Pages are compressed once when stored: Gzip, and Brotli when your server has the extension.

Precise purge

Only the pages concerned are cleared when you edit a product, a price, a promotion or a stock level.

Separate mobile and desktop cache

Each shop, language, currency and device (desktop or mobile) has its own stored copy.

Performance dashboard

Test in one click, then follow the hit rate, the speed-up and the reasons why visits skipped the cache.

Customer reviews

They use it every day.

5 out of 5 · 5 reviews

"Muy satisfecho. Ha mejorado mis conversiones."

MA Miguel A.

"Actualizaciones frecuentes. Se nota el compromiso."

CM Carlos M.

"I tested several alternatives, this one wins by far."

TG Tom G.

"Lo uso su 2 negozi, funziona perfettamente."

MP Matteo P.
description Full description expand_more

Why is your PrestaShop store slow?

Every time a visitor loads a page, PrestaShop runs the full stack: framework initialization, database connection, hundreds of SQL queries, Smarty template compilation, hook execution for every installed module, and finally HTML generation. On a store with dozens of modules and thousands of products, this cycle takes hundreds of milliseconds to several seconds per page, and it is repeated for every visitor even though most pages are identical for everybody.

During that time, your visitor waits. Google also factors page speed into its ranking through Core Web Vitals, meaning a slow store hurts both your conversion rate and your SEO.

The solution: Full Page Cache

Cache Pro saves the final HTML output of each page the first time it's generated, then serves that stored copy to every subsequent visitor. It is sent before PrestaShop starts building the page: the server no longer has to generate the page again, it simply reads a file and sends it. The result:

  • A much lower server response time (TTFB) on stored pages
  • No database query from the module on stored pages, and a fraction of the queries of a generated page
  • A lighter server: more visitors served with the same resources
  • A better starting point for Core Web Vitals and Google PageSpeed scores
Cache Pro dashboard: cache active banner, stored pages, hit rate, speed-up, pages by type and the reasons why visits skipped the cache
Dashboard: stored pages, hit rate, speed-up and the reasons why some visits skipped the cache

What makes Cache Pro different

Brotli & Gzip pre-compression

Every stored page is compressed once, at save time, in Gzip and, when your server has the PHP Brotli extension, in Brotli as well. When a visitor requests a page, Cache Pro serves the best format the browser accepts, based on its Accept-Encoding header. Brotli usually produces smaller files than Gzip, which helps most on mobile connections. Unlike on-the-fly compression, pre-compression adds no compression work at serve time.

HTML minification

Before compression, Cache Pro can strip HTML comments and the spaces between tags from the stored copy. Scripts, styles and text are untouched, and you can disable it with one click if a theme does not like it.

AJAX dynamic blocks (hole punching)

A full page cache must never show a page built for somebody else: visitor-specific elements like the shopping cart would be frozen in the stored HTML. That is why logged-in customers and visitors with a cart always get normal, exact pages built by PrestaShop by default: the cart, the totals and the account are never frozen or shared.

Prefer to give visitors with a cart the stored pages too? Cache Pro takes a smarter approach: an advanced option sends the stored page, then refreshes the cart block with a light AJAX request once the page has loaded, so the cart always shows current data. A button detects the cart block of the Classic and Hummingbird themes; for another theme, enter the hook and the CSS selector of the block. The page of such a visitor is never stored.

Cart block settings: the option for visitors with a cart switched on and the cart block detected in the theme
Visitors with a cart: serve stored pages and refresh the cart block once the page has loaded

Smart auto-invalidation

You should never have to clear the cache manually after editing your store. Cache Pro listens to PrestaShop's core events and automatically purges only the pages concerned when you:

  • Edit, add or delete a product, a combination, an image, a brand or a supplier (its own pages and the listings that show it)
  • Change a price, add or remove a specific price or promotion, or change a stock level, including through an order (the pages that show the product)
  • Edit a category, a CMS page, a currency, a tax or a language, move a module or change your theme (the whole shop is refreshed)

A page that shows a promotion which starts or ends later is stored only until that moment, so a scheduled promotion appears and ends on time. Purges also work when the cache is switched off, so a page can never come back outdated.

Cache warm-up

After a full purge or a fresh install, the cache is empty and the first visitors to each page experience normal load times. Cache Pro's built-in warm-up, called pre-load in the module, solves this by pre-visiting your pages, filling the cache before any real visitor arrives: home page, categories, best sales, new products, brands, suppliers, products and CMS pages, in every language and, if you wish, in the mobile version. It uses your sitemap or your product catalog.

  • Four speeds, from 2 to 20 pages at a time, to suit your hosting
  • Real-time progress bar with the number of pages visited
  • Start it from the dashboard or from a scheduled task (cron), without any open page
  • HTTP authentication supported for password-protected staging sites
Pre-load in progress: progress bar and number of pages visited, with a Stop button
Pre-load: visit your pages in every language before your visitors arrive, with a progress bar

Context separation: shop, language, currency and device

PrestaShop pages change based on the visitor's context. Cache Pro keeps a separate copy for each:

  • Language: French visitors see French, English visitors see English
  • Currency: prices display in EUR, USD or CHF depending on the selection
  • Shop: multistore setups have their own settings, stored pages, statistics and warm-up
  • Device: mobile and desktop versions are stored separately
  • Address: pages 2, 3… and sort orders of a category have their own copy, while tracking parameters (utm, gclid, fbclid…) share the copy of the normal address
  • Cookies you choose: for example cookie consent, when it changes the page

A Swiss visitor browsing in CHF will never receive the stored page of a visitor in EUR.

Visual performance dashboard

Cache Pro includes a clean, beginner-friendly dashboard that shows you what the cache is doing, with no technical knowledge required:

  • Test my cache: visits your home page twice and tells you in seconds whether the cache works, with both response times
  • Hit rate and speed-up: the share of visits served from the cache, and the response time from the cache compared with a generated page
  • Breakdown by page type: which pages benefit the most (products, categories, home, CMS…), with a chart per day
  • Skipped visits: the reasons why some visits did not use the cache (customer, cart, exclusion, unknown parameter…)
  • Health checks: cache folder, license, PHP, compression, cURL, maintenance, other cache modules, currencies, theme, disk space

Easy selective purge

Need to refresh specific pages? Clear everything, one type of page (with the number of stored pages and a plain-language explanation of when to do it), or one page from its address. A confirmation dialog protects the full clear, the latest purges are listed with their cause, and the warm-up can refill the cache right after.

Clear one page area with the address of a shop page, and the list of the latest purges with their date and cause
Precise purge: clear one page from its address and follow the latest purges with their cause

API and scheduled task for external tools

Sync your store with an ERP, PIM or deployment pipeline? Cache Pro gives you an address protected by a secret token: a cron job cleans the cache and runs the warm-up, and your tools can purge everything, a page type, a product, a category, a CMS page, a brand, a supplier or an address, start the warm-up and read the statistics, all from a simple HTTP request.

Full feature list

  • Full page cache served from the earliest PrestaShop hook (actionDispatcher), before the page is built
  • Stored copy per shop, address, language, currency and device (desktop or mobile), plus the cookies you choose
  • Logged-in customers, visitors with a cart, forms and Ajax requests answered by PrestaShop; optional cart block refresh for visitors with a cart (Classic and Hummingbird presets)
  • Smart auto-invalidation on product, combination, price, promotion, stock, image, brand and supplier changes; whole-shop refresh for categories, CMS pages, currencies, taxes, languages, modules and theme
  • Pages never kept beyond the next start or end of a scheduled promotion
  • Gzip pre-compression, Brotli when the PHP extension is available, optional HTML minification
  • Expired page served while one visitor regenerates it (5 minutes at most); pages written completely or not at all
  • Cache warm-up from the sitemap or the catalog, in every language, with a mobile option, from the dashboard or a scheduled task
  • Test my cache, performance dashboard, reasons for skipped visits, latest purges and health checks
  • Configurable lifetime per page type with recommended defaults, and a size limit with removal of the oldest pages
  • Exclusions by page type, URL (text, wildcards, regular expressions), IP address or range, cookie, product, category and CMS page
  • Selective purge: everything, a page type or one address
  • Scheduled-task address and token-protected API (purge, warm-up, statistics)
  • Diagnostic headers (X-WP-Cache: HIT, MISS or BYPASS)
  • Full multistore, multilanguage and multicurrency support
  • Compatible with Classic, Hummingbird and third-party themes
  • Works on shared, VPS, dedicated and cloud hosting, with no server setup beyond the nginx rule that blocks direct downloads of the cache folder

Who is Cache Pro for?

  • Store owners with 100 to 10,000+ products who want faster pages without technical complexity
  • SEO-focused merchants looking to improve Core Web Vitals and Google PageSpeed scores
  • Stores on shared hosting that need to reduce server load and handle more traffic
  • Agencies managing multiple PrestaShop stores who need a reliable cache that their tools can drive from an API

Compatibility, requirements and support

Compatible with PrestaShop 1.7.8, 8.0+ and 9.1+, with PHP 7.4 minimum, the cURL and zlib extensions and a cache folder the module can write to. PrestaShop 1.7.7 and earlier, and 9.0, are not supported. One archive fits all these versions. The interface is available in French, English, Spanish, Italian and Polish. Keep only one full page cache module at a time.

Support is provided from your WePresta customer area or by email at mail@wepresta.shop, depending on the support option of your plan. Read the full documentation

Comparaison

Why choose us?

See how we compare to the most common alternatives on the market.

Feature Addons
Transparent pricing
Lifetime updates included
Direct developer support
PS 1.7, 8 & 9 compatible
Standardized clean code
Multi-store ready
No hidden renewal fees
Included Not included Partial / Not guaranteed
Preview

Discover the module in images.

Cache Pro, full page cache module for PrestaShop

Cache Pro, full page cache module for PrestaShop

Dashboard: stored pages, hit rate, speed-up and the reasons why some visits skipped the cache

Dashboard: stored pages, hit rate, speed-up and the reasons why some visits skipped the cache

Test my cache: two visits to your home page and their response times, in one click

Test my cache: two visits to your home page and their response times, in one click

Precise purge: clear one page from its address and follow the latest purges with their cause

Precise purge: clear one page from its address and follow the latest purges with their cause

Pre-load: visit your pages in every language before your visitors arrive, with a progress bar

Pre-load: visit your pages in every language before your visitors arrive, with a progress bar

Visitors with a cart: serve stored pages and refresh the cart block once the page has loaded

Visitors with a cart: serve stored pages and refresh the cart block once the page has loaded

Support

FAQ

Find answers to frequently asked questions about this module

A full-page cache saves the final HTML of a page and sends that copy to the visitors who follow, instead of running PrestaShop, its modules, the database queries and the templates again for each request. On a PrestaShop store this shortens the server response time of the pages that many visitors share: home page, categories, products and CMS pages.

Cache Pro sends the stored copy of a page before PrestaShop builds it: the module itself makes no database query, and the page needs a fraction of the queries of a generated page. Stored pages are pre-compressed (Gzip, and Brotli when your server has the PHP extension), the HTML can be minified, and the pre-load fills the cache before your visitors arrive. The gain depends on your hosting, your theme and your modules: use "Test my cache" to see it on your own store.

Yes. Logged-in customers and visitors with products in their cart always receive normal pages built by PrestaShop, so nothing personal is stored or shown to somebody else. If you prefer that visitors with a cart also get stored pages, an advanced option sends the stored page and refreshes the cart block with a small request once the page has loaded, with ready-made settings for the Classic and Hummingbird themes.

Yes. Editing a product, a combination, an image, a brand or a supplier clears its own pages and the listings that show it. Changing a price, a specific price, a promotion or a stock level (including through an order) clears the pages that show the product. Categories, CMS pages, currencies, taxes, languages, modules and theme changes refresh the whole shop. A page that shows a promotion which starts or ends later is never kept beyond that moment. Purges work even when the cache is switched off.

It visits your important pages before visitors arrive: home page, categories, best sales, new products, brands, suppliers, products and CMS pages, in every language and, if you wish, in the mobile version. After an installation, a full purge or a big catalogue update, the first visitors then get stored pages instead of normal generation times. Start it from the dashboard or from a scheduled task.

Yes. A separate copy is kept for each shop, address, language, currency and device (desktop or mobile), and for the visitors who have the cookies you choose (cookie consent, for example). With several shops, each one has its own settings, stored pages, statistics and pre-load.

Yes. Each type of page (home page, products, categories, CMS pages, other listings) has its own on/off switch and lifetime, with recommended defaults and a minimum of 60 seconds. A page changed in the back office is refreshed at once, whatever its lifetime.

Yes: PrestaShop 1.7.8, 8.0+ and 9.1+, with PHP 7.4 or later. PrestaShop 1.7.7 and earlier, and 9.0, are not supported. One archive fits all these versions. The module works with the Classic and Hummingbird themes and with third-party themes.

Click "Test my cache" in the dashboard: it visits your home page twice and tells you whether the first visit was stored and the second one served from the cache, with both response times. You can also load a page twice with your browser's developer tools open and read the response header X-WP-Cache: MISS the first time, HIT the second time, BYPASS when PrestaShop answered on purpose. The dashboard also lists the reasons why some visits skipped the cache.

Cart, checkout, customer account, search results, contact form and the pages of other modules are never stored, nor are form submissions, Ajax requests, maintenance mode and geolocation, or the pages you exclude by URL, IP address, cookie, product, category or CMS page. Customers and visitors with a cart get normal pages (or stored pages with a refreshed cart block, if you choose that option).

The first visit to a page builds it as usual and stores it; the next visitors get the stored copy. The pre-load removes that first wait by visiting your pages in advance, and you can run it from a scheduled task after each purge.

Indirectly. A faster server response on the pages that Google and your visitors open most often improves the user experience and the technical performance of your store, which can help your visibility. Tracking parameters are ignored and pages 2, 3… keep their own content, so search engines and visitors get the right page.

Keep only one full page cache: the dashboard warns you if another one is detected. A CDN or reverse proxy in front of your store is fine: pages are sent with Cache-Control: private, so the CDN does not keep them and Cache Pro does the work; use the CDN for images, scripts and styles.

Yes. A scheduled-task address and an API protected by a secret token let your tools clear everything, a page type, a product, a category, a CMS page, a brand, a supplier or an address, start the pre-load and read the statistics with a simple HTTP request. The token can be regenerated at any time.

Install the new archive over the old one. The switched-on or switched-off state, the lifetimes, your exclusions (URLs, cookies, IP addresses) and the pre-load speed are kept; the four URL exclusions suggested by version 1.0.0 are removed, because those pages are never stored anyway; the obsolete files are deleted and the cache is emptied once. Visitors with a cart now receive normal pages; turn on the cart block option if you want them to get stored pages.

Not with Apache: the cache folder is protected by a .htaccess file. With nginx, add a rule that blocks direct downloads of the cache folder; the dashboard tells you whether the folder can be downloaded from the web. Nothing else is needed on shared, VPS, dedicated or cloud hosting.

Join +9 merchants using this module

5-minute installation · Full documentation included

inventory_2 Module 53.94 € 21.58 € one-time -60%
Choose your license
3 months of support for 0.99€ · then 1.99€/month
  • • Response within 24 business hours
  • 🔧 Installation & configuration assistance
  • 💬 Direct contact with the developer
No commitment · Cancel in 1 click from your account
Instead of --€/year if purchased separately
Loading...