Some caching plugins may cause unexpected behaviour with CartPops.. WooCommerce “Cart Fragments” or often referred to as WooCommerce Fragments — is a script using admin ajax to update the cart without refreshing the page.
Some caching plugins cache or completely disable this script in order to improve page speed. This method is also often recommended in page speed blogs and in YouTube video's. However, some WooCommerce plugins need this functionality in order to do something without refreshing the page.
Possible workaround to keep your default Caching behaviour
If you don't want to tweak your caching settings, you could try to enable CartPops only on the Single Products template using the CartPops settings. And creating an exclusion in your caching plugin for the Single Product page, so that WooCommerce fragments are not being cached on the Single Products template.
This workaround does limit the user experience of your customers, as they only have access to the CartPops cart on the Single Product page and not anywhere else.
How to use CartPops with WP Rocket
WP Rocket caches all WooCommerce fragments. They exclude the default cart and checkout page, however, CartPops lives outside the default cart page. This can cause unwanted behavior, such as cart contents not showing up or items being shown multiple times.
To solve this you can disable WooCommerce fragment caching by installing a small helper plugin.
Check out this article by WP Rocket for more information.
Alternatively, there’s an experimental feature in CartPops where it tries to force refresh fragments. You can find it in the Advanced options (this may negatively impact your page load speed).