On 30 November traffic multiplies by eight. The rest of the year the shop runs at 12% CPU. Buying a server sized for peak year-round is expensive — and does not stop poorly cached WooCommerce checkout from collapsing anyway. Black Friday is prepared as an operations event, not a permanent hosting change.
This scenario mostly hits shops that confuse "traffic spike" with "need a bigger server all year". The bottleneck often sits on checkout tunnel — sessions, payment plugins, synchronous emails — while product pages could be served from CDN. Oversizing origin without checkout cache is widening the motorway to a narrow bridge.
The right strategy combines temporary scale-up, smart cache and realistic tests. Merchants who succeed treat Black Friday as documented procedure: scale up, watch, return to normal.
Map the critical funnel
| Step | Frequent break point | Preventive action |
|---|---|---|
| Product listing | SQL queries, no cache | Page cache + transients |
| Product page | Heavy images, variations | CDN, lazy load |
| Cart | Sessions, AJAX fragments | Redis object cache |
| Checkout | Payment plugins, validation | Tested sandbox, logs |
| Confirmation | Synchronous email | Async queue |
| Admin orders | Heartbeat, reporting | Limit admin access on day |
Oversizing CPU without checkout cache is widening the motorway to a narrow bridge.
Infra strategy: elastic rather than permanent
Option A — manual scale-up. VPS or cloud: snapshot before promo, upgrade RAM/CPU 48 h ahead, downgrade after. Document procedure and rollback.
Option B — targeted autoscaling. Useful if traffic is unpredictable beyond season. Budget caps mandatory — see Unpredictable traffic.
Option C — CDN + modest origin. Many peaks are read-heavy. Well-configured CDN lets origin breathe.
Do not change hosts the week of Black Friday unless absolutely forced.
Technical checklist four weeks ahead
Week -4: plugin audit. Disable unused. Replace synchronous scripts with async where possible.
Week -3: cache. Page cache excluding cart/checkout; Redis for sessions; CDN assets.
Week -2: load tests. Staging replay; measure checkout, not just homepage.
Week -1: payment gateway. Contact PSP, check API limits, 3-D Secure, webhooks.
Day D: monitoring. Response time, 5xx rate, email queue, DB connections. On-call defined.
Mistakes that cost sales
Purging all cache without checkout exclusion. Hosting migration the day before. Updating WooCommerce or payment plugin without staging. Forgetting admin rate limiting — bots on wp-login while customers checkout. Underestimating transactional email — see Transactional email.
The summit: the spike is short, the bill can last twelve months
Decide and move forward without blind spots
Measure current load against promo target, plan temporary upgrade or stronger CDN, test full checkout in sandbox, exclude cart and checkout from page cache, and assign technical and business on-call. Compare e-commerce hosts via our directory and comparison tool while sizing for the year and elasticising for the spike.
Frequently asked questions
Do you need to double permanent server size for Black Friday?
Rarely. Temporary scale, aggressive cache and load tests beat year-round oversizing.
Which WooCommerce plugins slow peaks most?
Heavy related products, poorly cached dynamic pricing, real-time analytics, synchronous emails on every order.
How do you test without breaking production?
Replay traffic on staging, test sandbox checkout tunnel, measure cart and checkout separately.
Does page cache work on WooCommerce?
Partially — exclude cart, checkout and customer account; object cache and CDN assets remain essential.
Black Friday lasts a few days. Your hosting bill renews every month — size for the year, elasticise for the spike.