# WooCommerce cart fragments: the AJAX call that slows every page

> cart-fragments.js can fire an uncacheable request on every page. Disable it outside the cart and checkout.

WordPress & WooCommerce · HTML version: https://getreport.app/learn/woocommerce-cart-fragments

## WooCommerce cart fragments

Passing looks like: No cart-fragments request on this page.

**Why it matters.** cart-fragments.js fires a wc-ajax=get_refreshed_fragments request to keep the mini-cart count fresh. Since WooCommerce 7.8 it loads only with the Mini-Cart widget or block; here it still loads on a page that is not the cart, often because a theme or plugin enqueues it. The request bypasses the page cache, so every visit costs a PHP request, and it delays the page for a feature most pages do not show.

**How to fix it.**

1. Disable cart fragments on pages that are not the cart or checkout. WooCommerce has no setting for it: use the "Disable cart fragments" option in Perfmatters or a similar performance plugin, or a small snippet that dequeues wc-cart-fragments outside the cart, checkout and account pages.
2. If the header shows a live cart count, load the count from a lightweight endpoint on cart changes only.

Check your own page: https://getreport.app/
