The goal is not "the site stays up". Most costly Black Friday failures happen on stores that are up: the coupon doesn't apply, the payment step errors, the cart empties between pages, or order emails never send. The checklist is built around proving that customers can still buy.
The Short Version
- By 30 Oct: list every page and flow the campaign depends on
- By 6 Nov: run test orders through every payment method and shipping zone
- By 13 Nov: load-check cart and checkout, confirm caching excludes them
- By 16 Nov: set up the Black Friday prices, coupons, and banners on staging and test them
- 18 Nov: plugin, theme, and core update freeze begins
- 20 Nov – 2 Dec: checkout journey runs every 5 minutes, alerts go to a phone
- 26 Nov: final test order with the live promotion switched on
- 3 Dec: lift the freeze, review what alerted, and write it down for next year
Six Weeks Out: Map What Has to Work
Start with an inventory, not a to-do list. Write down:
- The landing pages your email, ads, and social posts will link to — the exact URLs, including UTM-tagged ones.
- The products and categories that carry the promotion, especially variable products and bundles.
- The customer paths that make money: product page → add to cart → cart → checkout → payment → order received. Add the account login for returning customers and the contact form for pre-sale questions.
- Every plugin that touches checkout: payment gateways, shipping calculators, tax, address autocomplete, discount rules, upsells, fraud checks, and the checkout field editor.
That last list matters most. When a checkout breaks, the cause is almost always one of those plugins, a conflict between two of them, or a change to one of them.
Four Weeks Out: Test Orders Through Every Payment Path
Place a real order through every combination a customer could hit, not just the one you use yourself.
- Each payment method: card via Stripe or WooPayments, PayPal, Apple Pay and Google Pay buttons, buy-now-pay-later options, bank transfer
- Logged-in and guest checkout
- Each shipping zone and method, including free-shipping thresholds that the promotion might change
- A variable product and a product on sale
- Mobile Safari and Chrome on Android — express payment buttons behave differently on each
Use your gateway's test mode on staging. On production, where test mode isn't available, use a dedicated low-price product or a 100% coupon restricted to your own email, then refund and clean up. Confirm each order reaches Processing (or your expected status) in WooCommerce, not just the thank-you page — a gateway webhook that fails leaves paid orders stuck in Pending.
Check WooCommerce → Status → Scheduled Actions for failed or piling-up actions while you're there. Stuck actions are an early sign that background jobs — including some gateway and email tasks — won't keep up under load.
Three Weeks Out: Caching, Hosting, and Load
Most "the cart keeps emptying" reports during sales come from caching rules, not traffic.
- Confirm your page cache and CDN bypass cart, checkout, and my-account pages and any request carrying WooCommerce session cookies.
- Check that add-to-cart and cart updates (the
wc-ajaxrequests and, on block-based checkout, the Store API under/wp-json/wc/store/) are not cached or rate-limited by a firewall rule. If the button already misbehaves, work through WooCommerce Add to cart not working. - Ask your host what happens at 5–10x normal traffic: PHP workers, database limits, and whether they throttle.
- If you use Cloudflare or another WAF, make sure bot-fight or challenge modes won't be switched on in a panic mid-sale — they can block real shoppers and your payment gateway's webhooks.
- Run a modest load test against product and cart pages outside business hours, with your host's permission.
Two Weeks Out: Build the Promotion on Staging First
Discount logic is where Black Friday-specific bugs live.
- Create sale prices, coupons, and dynamic pricing rules on staging with the same plugin versions as production.
- Test coupon stacking and exclusions: does the BF code combine with free shipping? With existing sale prices? With a subscription product?
- Test usage limits and expiry times — in the store's timezone, not yours.
- Check stock on promoted products and what happens at zero: backorders, "out of stock" buttons, and whether a €0 or mispriced variation can still be added to the cart.
- Review the banners and landing pages on mobile. A promotional banner that pushes the Add to cart button below the fold costs more than a slow page.
- Send yourself every order email: new order, processing, completed, and failed. If your store sends through the server's default mail, set up a proper SMTP or transactional email service now.
One Week Out: Freeze Updates
From Wednesday 18 November, stop updating WooCommerce core, the theme, and every checkout-related plugin. Turn off automatic plugin updates for the window, including minor ones.
A freeze does not mean ignoring a security release. If one arrives, apply it to staging, re-run the checkout test there, then apply to production and immediately re-run the journey on production. Plugin updates are the most common cause of broken WooCommerce checkouts, and Black Friday week is the worst time to learn that a routine update changed the payment form.
Black Friday Week: Monitor Checkout Every 5 Minutes
Between 20 November and 2 December, you want to know about a broken checkout in minutes, not from Monday's support inbox.
Run checkout as a journey, not a ping. An uptime monitor on the checkout URL stays green while the payment step throws an error. A journey opens the store in a real browser, adds the promoted product to the cart, applies the Black Friday coupon, fills the checkout form, and expects the order-received page. When a step fails, the alert names the step and includes a screenshot. See WooCommerce monitoring and the WooCommerce checkout monitoring guide for how that's set up.
A sensible set for the week:
| Check | Frequency during 20 Nov – 2 Dec |
|---|---|
| Checkout journey with the BF coupon applied | Every 5 minutes |
| Add to cart on the top 3 promoted products | Every 15 minutes |
| Customer login and account page | Every 15 minutes |
| Pre-sale contact form | Hourly |
| Uptime and page health on landing pages | Every 1–5 minutes |
Route alerts to a phone. Email alerts at 2 a.m. on Black Friday are read at 9 a.m. Send checkout failures to SMS or Slack with notifications on, and agree who responds during each part of the weekend.
Watch the store's API layer too. Block-based carts and checkouts depend on the Store API; a failing endpoint often shows up before the storefront looks broken, and a health check that tracks the API calls your pages make will surface those 403s and 500s. More in WooCommerce Store API monitoring.
Know your first three moves when an alert fires: check what changed in the last hour, switch to a backup payment method if the gateway is failing, and put a short notice on the checkout page rather than letting customers fail silently. The full diagnostic order is in WooCommerce checkout not working.
The Day Before: Final Test Order
On Thursday 26 November, with the promotion switched on in production:
- Place one real order with the live coupon, on mobile, as a guest.
- Confirm the order status, the stock change, and the customer email.
- Confirm the journey monitor passed in the last hour and that a test alert reaches the on-call phone.
- Take a backup you have actually tested restoring.
After Cyber Monday: Lift the Freeze and Keep the Notes
On 3 December, apply the queued updates one at a time on staging, re-run the checkout test after each, then roll them to production. Then write down what alerted, what broke, and how long it took to notice. That page becomes next year's checklist — and the real data for deciding which journeys deserve 5-minute checks all year round.
For Agencies Running Many Client Stores
The same checklist scales if you treat it as a template:
- Send clients the freeze dates and the "promotion ready on staging by 16 Nov" deadline in October.
- Set up one checkout journey per store with that store's BF coupon, and group alerts so you can see all clients at once.
- Offer the Black Friday readiness check as a paid add-on or part of the WordPress maintenance plan — it's the week clients value monitoring most.
Summary
Black Friday failures on WooCommerce rarely look like downtime. They look like a coupon that won't apply, a payment step that errors, a cart that empties, or an email that never arrives. Work backwards from 27 November: map the paths, test every payment option, fix caching, build promotions on staging, freeze updates from 18 November, and run a checkout journey every 5 minutes from 20 November to 2 December with alerts going to a phone. Customers should never be the ones to tell you checkout is broken during the biggest sale of the year.