Open Nav

When SG Optimizer and WP Super Cache Try to Share the Same Job: How My Checkout Page Started Failing and What I Did

Running a successful WordPress site requires a delicate balance of speed, functionality, and user experience. For e-commerce websites in particular, even the smallest hiccups during the checkout process can directly affect sales and credibility. One such hiccup involves the interaction between two popular caching plugins: SG Optimizer and WP Super Cache. When both try to take the reins on caching and optimization, they clash—sometimes catastrophically. This article explores one such incident where a checkout page stopped working, what caused it, and how it was fixed.

TLDR (Too long, didn’t read)

If you’re running both SG Optimizer and WP Super Cache on your WordPress site, beware of overlapping functions. These two plugins can clash, especially on dynamic content like checkout pages. This conflict may cause scripts to break or pages to cache that shouldn’t be. The solution is usually to disable one of them or correctly configure exclusions.

The Setup

The website in question was an online store built on WooCommerce and hosted by SiteGround. Since SiteGround recommends its own SG Optimizer plugin for performance improvements and caching, it was installed by default. However, in an effort to further boost performance, WP Super Cache—a long-trusted plugin—was also installed. That decision, although well-intentioned, turned out to be the beginning of a challenging debugging session.

On paper, both plugins serve similar purposes:

  • SG Optimizer — Tailored for SiteGround hosting, it offers dynamic caching, image optimization, and front-end performance tweaks.
  • WP Super Cache — A more generic caching plugin designed to serve static HTML versions of pages to visitors.

The issue started when visitors attempted to check out. Instead of completing their purchases, they encountered freezing pages, missing forms, and even SSL errors. This was not just a glitch—it was a showstopper for conversions.

Symptoms of the Conflict

Multiple complaints began rolling in with common themes:

  • Checkout button unresponsive or grayed out
  • Cart contents disappearing upon page refresh
  • Form validation not working
  • Error messages related to session timeouts
  • Console errors related to JavaScript not loading

It was clear that something was interrupting the dynamic behavior essential to a WooCommerce checkout process. Upon closer inspection, both plugins were actively caching the checkout page, and possibly conflicting in terms of asset delivery and page logic.

Diagnosing the Problem

The first step was to isolate the cause. Deactivating SG Optimizer temporarily revealed that some of the errors disappeared, but others still lingered. Deactivating WP Super Cache instead showed a different result—fewer JavaScript errors and the cart remained intact from page to page. It was then clear that both plugins were interfering with each other’s operations.

Here is a breakdown of what went wrong:

  1. Both plugins were trying to cache the same pages, especially the sensitive WooCommerce pages like cart, checkout, and my account.
  2. Cache clearing and regeneration were happening at different intervals, leading to inconsistencies.
  3. JavaScript and CSS minification in both plugins overlapped, causing broken scripts or missing files.

The Solution

Once the diagnosis was clear, the steps to resolve the issue became more obvious. Here’s a step-by-step of what was done:

1. Deactivate WP Super Cache

Given that SG Optimizer is specifically built for SiteGround’s environment, it made the most sense to keep SG Optimizer and remove WP Super Cache. SG Optimizer also handles many optimization features that WP Super Cache does not, such as database cleanup and lazy loading.

2. Clear All Caches

Before testing again, all caches were manually cleared from SG Optimizer as well as the browser. This removed any lingering static files created by WP Super Cache.

3. Exclude Critical Pages from Caching

Even with just SG Optimizer active, the /checkout, /cart, and /my-account pages were excluded from caching to prevent any future issues.

4. Disable Minification Within Plugins

Since JavaScript conflicts were still sporadic, CSS and JavaScript minification were turned off in the SG Optimizer plugin. Instead, a dedicated optimization plugin like Asset CleanUp or Autoptimize was used to selectively handle these assets.

5. Test Thoroughly

After implementing the changes, multiple test transactions were conducted using different browsers and devices. Everything functioned flawlessly. The checkout process was smooth, fast, and error-free.

What Could Have Been Done Differently

This situation could have been avoided entirely by adhering to a simple rule: avoid running plugins with overlapping functionalities at the same time. While the desire to optimize performance is commendable, stacking multiple performance plugins is often counterproductive and leads to more harm than good.

Another key takeaway is understanding the architecture of your hosting environment. SG Optimizer is deeply integrated with SiteGround’s server infrastructure and attempts to enhance performance from both the WordPress and server levels. Adding a third-party plugin unaware of those deeper integrations can lead to unpredictable behavior.

Final Thoughts

In the world of WordPress optimization, less is often more. Using tools designed to complement your hosting environment and setting proper caching exclusions for dynamic pages are practices every site owner should follow. Running both SG Optimizer and WP Super Cache may seem like a win-win for performance, but in reality, it’s a recipe for conflict—especially on pages that matter most like checkout.

FAQ

Can SG Optimizer and WP Super Cache be used together?
Technically, yes, but it’s highly discouraged. Both plugins manage caching in their own ways and can conflict, especially on essential eCommerce pages.
Which plugin should I choose between the two?
If you are hosted on SiteGround, SG Optimizer is the smarter choice since it’s tailored for that specific hosting environment.
How do I exclude a page from SG Optimizer cache?
Navigate to SG Optimizer settings, go to the “Caching” tab, and use the “Exclude URLs” section to specify pages like /checkout or /cart.
What are the signs that my checkout page is being incorrectly cached?
Symptoms may include disappearing cart contents, failing form submissions, broken validation, and inconsistent loading behavior.
Should I use an additional plugin for asset minification?
Yes, consider using a dedicated plugin like Autoptimize or Asset CleanUp instead of overlapping functionalities within your caching plugin.