My Store Went Down for 8 Hours and I Had No Idea
A theme update broke my checkout at 11 PM. I found out at 7 AM — from a customer's angry tweet. Here's what I do now so it never happens again.
How It Happened
Tuesday night, 10:45 PM. I pushed a small theme update — changed a color variable, nothing structural. Or so I thought. The update accidentally removed a CSS class that the checkout page's JavaScript depended on. The result: checkout loaded, but the payment form was invisible. Customers saw a blank white space where the credit card fields should be.
I went to bed. The store was "working" — homepage loaded, products were fine, cart worked. The only thing broken was the most important page on the entire site.
The Discovery
7:13 AM. I checked my phone and saw a Twitter notification. A customer had tweeted at my store's account: "Hey, been trying to order for 20 minutes, checkout won't let me enter payment info. Anyone else?" Followed by three other customers replying "same here."
I checked my orders dashboard. Zero orders since 11 PM. On a typical night, I get 8-12 orders. That's roughly $400-600 in lost revenue from one tiny CSS change.
Why I Didn't Catch It
I had no monitoring. No alerts. No automated testing. My "checkout test" was me placing a test order once a month when I remembered. The rest of the time, I relied on customers to tell me if something was broken — which they did, eventually, on social media.
The worst part: this wasn't a complex bug. Any automated browser test clicking through the checkout flow would have caught it in 30 seconds. I just didn't have one.
What I Do Now
1. Test checkout after every change. No exceptions.
Theme update? Test checkout. New app? Test checkout. Changed a setting? Test checkout. It takes 2 minutes. It has saved me twice since the incident.
2. Use an incognito window. Always.
Logged-in admin sessions bypass certain scripts and restrictions. What you see as an admin ≠ what customers see. Open an incognito window, go through the full flow: browse → add to cart → checkout → enter test payment → complete.
3. Set up some form of monitoring
You don't need an expensive tool. At minimum: a recurring calendar reminder every morning to place a test order. Better: an automated browser test that runs every 30-60 minutes and alerts you if checkout fails. The upfront time investment pays for itself the first time it catches a failure before customers do.
The Bottom Line
Your checkout is the only page on your store that directly generates revenue. Everything else — the homepage, the blog, the about page — exists to get people to checkout. If checkout breaks and you don't know, every minute of downtime is lost money. My 8 hours cost me roughly $500. A monitoring setup would have cut that to 30 minutes and saved $460.
Loading comments...