Add to cart works when I test it but customers say it's broken — what's going on?

When add to cart breaks for some customers but not others, the cause could be a platform incident, a theme or app JavaScript conflict, or both at once. Here's how to tell them apart quickly.

cartoutageadd-to-cartappstheme-conflict

What's going on

A handful of customers report that the add to cart button does nothing, spins forever, or throws an error, but when you test it yourself it works fine. Or it happens to you too, intermittently, with no obvious pattern: same product, same browser, working one minute and failing the next. Sales are getting lost and support tickets are piling up, but nothing in the theme editor looks wrong.

This is one of the more frustrating categories of Shopify problems because it can have two completely different root causes that look identical from the storefront: a genuine platform-side incident affecting many stores at once, or a store-side conflict between the theme's cart JavaScript and an app that also hooks into the add-to-cart flow, with discount, bundle, and subscription apps as frequent culprits. Merchants on Shopify's community forums do periodically report clusters of add-to-cart failures that line up with entries on Shopify's public status page, confirming that platform-side cart and checkout incidents happen, are usually short-lived, and resolve without merchant action. Far more often, though, an intermittent single-store add-to-cart failure traces back to a script conflict, a theme edit that broke an element ID or event listener, or two apps fighting for control of the same button.

Why it happens

Shopify's storefront and checkout infrastructure is generally reliable, but like any large platform it has occasional service-level incidents scoped to a specific region, plan, or subsystem such as cart or checkout, rather than the whole platform going down. These show up on the status page as a specific service moving to degraded or outage rather than everything turning red, which is why merchants sometimes miss them when they only glance at the homepage summary.

More commonly, the add-to-cart flow breaks because something in the store itself is intercepting or breaking the request before it ever reaches Shopify: a theme customization that renamed or removed an element the add-to-cart script depends on, a JavaScript error elsewhere on the page that stops execution before the click handler runs, or two apps that both try to modify the add-to-cart button or form and step on each other. Because these conflicts often only trigger under specific conditions, such as a particular variant, a particular combination of apps, or a cached script version, they can look just as unpredictable as a real platform incident, which is exactly why checking the actual error first matters more than guessing.

4 ways to fix it

1

Check shopifystatus.com before touching any code

Go to shopifystatus.com and look at the individual line items for storefront, checkout, and cart services, not just the top-level summary, which can read as normal while one specific service is degraded. If there's an active or recently resolved incident affecting cart or checkout, the fix is to wait it out and let affected customers know, not to start editing theme or app code. Debugging or reverting changes during a platform incident wastes time and risks introducing a second, unrelated bug that outlives the outage.

2

Open the browser console and read the actual error before guessing

On a failing add-to-cart attempt, open dev tools, reproduce the click, and check both the console and network tabs. A failed request to Shopify's cart API with an error response tells you Shopify rejected the request, likely over inventory, variant availability, or a selling plan; no request firing at all points to a JavaScript error earlier on the page, often from a recent theme edit or an app script interfering with the add-to-cart form. That distinction tells you whether you're chasing a platform-side failure or a store-side one, which determines everything you do next.

3

Isolate theme vs. app conflicts with a duplicate theme and app embeds

If the console shows a JavaScript error rather than a clean rejection from Shopify, duplicate your live theme, keep it unpublished, and test with app embeds toggled off one at a time from the theme editor. Cart drawers and mini-cart scripts are a common collision point between the theme and any app that also touches the add-to-cart flow, such as discount, bundle, or subscription apps competing to intercept the same form submission. Narrowing the failure to one specific app or one recent theme change is faster and more reliable than reading through minified JavaScript.

4

If it's a confirmed platform incident, document it and hold off on changes

When a status page incident lines up with your timing, and especially when other merchants report the same symptom in the Shopify Community forums around the same time, treat it as a platform issue. Screenshot the status page timestamp, note which parts of your storefront were affected, and hold off on refunds, code rollbacks, or app reinstalls until Shopify posts a resolution. Making changes to fix a problem that was never in your store risks leaving broken code in place after the outage clears.

Bottom line

Most single-store reports of add to cart breaking turn out to be a theme or app JavaScript conflict rather than a platform outage, so checking the console and isolating app embeds should come before assuming Shopify is at fault. When a status page incident lines up with the timing and other merchants are reporting the same symptom, that's the platform, and the only real fix is to wait it out while keeping shoppers informed, for example with a brief on-site notice explaining the temporary issue. Either way, avoid rolling back code or reinstalling apps to chase a bug that isn't actually yours.

Still Stuck?

Browse the rest of the problem library, run a free storefront scan to catch issues like this automatically, or email us and we'll work out a custom solution for it.