BFCM countdown calendar
The readiness program works backwards from the event date. If Black Friday is November 28, you start the program on October 10 (T-7 weeks). If you start later, compress the schedule — but do not skip the go/no-go gates.
Each milestone below lists: what to run, what the passing criteria are, and what to do in MaxoPerf.
T-6 weeks: Baseline and model
Section titled “T-6 weeks: Baseline and model”Goal: Establish the ground truth your entire readiness program will build on.
What to run
Section titled “What to run”- Full-funnel load test at 1× modeled peak. The first formal performance test of the season. Uses the traffic model from capacity planning and traffic modeling.
How to run it in MaxoPerf
Section titled “How to run it in MaxoPerf”- Open the MaxoPerf console → Tests → New test.
- Name it
bfcm-{year}-baseline— the name becomes the reference anchor for the rest of the program. - Upload the full-funnel Taurus YAML covering browse → search → PDP → cart → checkout.
- Set failure criteria:
p95 (global) > 1000msanderror rate > 1 %. - Run for 20 minutes at modeled peak VU count.
- If the run passes, tag it as the baseline run for the year. This is the run you will compare to at T+1.
- If the run fails, open the per-label breakdown and identify which endpoint is causing the failure before proceeding.
Passing criteria
Section titled “Passing criteria”All failure criteria green. p95 for each funnel stage within SLO. Error rate < 0.5 % across all labels.
T-5 weeks: Smoke all BFCM paths
Section titled “T-5 weeks: Smoke all BFCM paths”Goal: Confirm every endpoint that will be under load has been exercised at least once at low load.
What to run
Section titled “What to run”- Smoke tests (1–5 VUs) for every BFCM-specific endpoint. Include any new features, promotions pages, or integrations that were not present last year.
How to run it in MaxoPerf
Section titled “How to run it in MaxoPerf”- Create a smoke-test variant of the full-funnel scenario:
bfcm-{year}-smoke. - Set concurrency to 1–5 VUs, duration 2 minutes.
- Run once per environment change or new deployment.
- Pay special attention to: new checkout step, new loyalty/points integration, new recommendation engine, flash-deal landing page.
Passing criteria
Section titled “Passing criteria”No errors. All endpoints respond within 2× their SLO threshold at 1 VU.
T-4 weeks: Load validation
Section titled “T-4 weeks: Load validation”Goal: Prove the system handles the modeled peak load with acceptable performance across all critical paths.
What to run
Section titled “What to run”- Load test at 1× modeled peak — same as the T-6 week baseline but now with any fixes applied.
- Load test at 1.25× modeled peak — a modest stretch to confirm headroom.
How to run it in MaxoPerf
Section titled “How to run it in MaxoPerf”- Duplicate the
bfcm-{year}-baselinetest and rename tobfcm-{year}-load-1x. - Run at modeled peak VU count. Confirm it passes all failure criteria.
- Duplicate again, set VUs to 1.25× modeled peak. Run for 15 minutes. Confirm passing.
- Review per-label latency breakdown — any label with p95 > 80 % of its SLO at 1× should be flagged as a risk.
Passing criteria
Section titled “Passing criteria”Both load tests pass failure criteria. Headroom confirmed between 1× and 1.25× runs.
T-3 weeks: Break it
Section titled “T-3 weeks: Break it”Goal: Know the exact breaking point so you are sure your modeled peak is well below it.
What to run
Section titled “What to run”- Stress test: gradual ramp to 200 % modeled peak. Find the inflection point.
- Spike test: doorbuster profile. Find the shock-load recovery time.
How to run it in MaxoPerf
Section titled “How to run it in MaxoPerf”For the stress test:
- Create
bfcm-{year}-stress. - Use the staged ramp from spike and stress for sales: 25 % → 50 % → 100 % → 150 % → 200 % of modeled peak, 10 minutes at each stage.
- Set failure criteria to fail at error rate > 5 % or p95 > 3000 ms.
- After the run, note the VU count at which the failure criterion fires — this is the breaking point.
For the spike test:
- Create
bfcm-{year}-spike-doorbuster. - Use the doorbuster Taurus YAML: idle baseline → near-instant jump to 5× modeled peak → 10-minute hold → drop and recovery window.
- Observe: recovery time after VU drop and any persistent errors.
Passing criteria
Section titled “Passing criteria”Stress test: breaking point > 150 % of modeled peak. Spike test: system recovers (error rate < 0.5 %) within 3 minutes of VU drop.
T-2 weeks: Fix and re-test
Section titled “T-2 weeks: Fix and re-test”Goal: Close any gaps found in T-3 weeks before the dress rehearsal window.
What to run
Section titled “What to run”- Targeted re-tests of any bottleneck endpoints. Not the full suite — focused tests on changed components.
- Regression smoke test after fixes are deployed.
How to run it in MaxoPerf
Section titled “How to run it in MaxoPerf”- For each bottleneck identified at T-3 weeks, create a targeted test covering only that endpoint and the dependencies that interact with it.
- Set the VU count to 120 % of modeled peak — just above the previous breaking point.
- Confirm the bottleneck is resolved.
- Run the full baseline test again to confirm no regression introduced by the fix.
Passing criteria
Section titled “Passing criteria”Every re-tested bottleneck now passes at 150 % of modeled peak. Baseline regression test result matches the T-6 week baseline within 10 %.
T-1 week: Dress rehearsal
Section titled “T-1 week: Dress rehearsal”Goal: Run the full event profile from start to finish with the full war-room structure active.
What to run
Section titled “What to run”- Multi-hour soak test (8 h minimum). See Soak and stability.
- Multi-wave dress rehearsal. The full doorbuster + email wave + sustained profile, 3+ hours.
- War-room exercise. Full team in position; amber condition deliberately injected mid-run.
How to run it in MaxoPerf
Section titled “How to run it in MaxoPerf”- Schedule the 8-hour soak to start the night before: Schedules tab → New schedule → fire at 22:00.
- Review the soak result the next morning before starting the dress rehearsal.
- If the soak shows drift > 10 %, do not proceed with the dress rehearsal until the root cause is identified.
- Run the multi-wave dress rehearsal: create
bfcm-{year}-dress-rehearsal, use the multi-wave profile YAML. - Run for 3+ hours with the full team in the war-room.
- Inject an amber event at the 90-minute mark: disable the mock payment gateway for 5 minutes and have the team execute the runbook.
Passing criteria
Section titled “Passing criteria”Soak: no drift > 10 %, no errors in final 2 hours. Dress rehearsal: all failure criteria green throughout all waves. War-room exercise: team detects and responds to injected amber event per runbook within the expected time window.
Go/No-Go gate. Engineering lead and business lead review results together and sign off on proceeding to game day.
Day of event
Section titled “Day of event”Goal: Execute the event with full visibility and a tested runbook in hand.
What to run in MaxoPerf
Section titled “What to run in MaxoPerf”- Pre-sale smoke test (T-60 min): 1–5 VUs against the full checkout journey. Must finish with no errors before sale starts.
- Synthetic monitoring run (throughout the event): low-VU continuous run against checkout as a heartbeat. Failure criteria set to alert the war-room immediately if any step fails.
Monitoring
Section titled “Monitoring”- Open the MaxoPerf Active runs page in the war-room browser window.
- Keep the current run’s Overview tab open in a second window for per-label latency visibility.
- Check every 5 minutes per the monitoring assignment matrix.
T+1 week: Post-mortem and archive
Section titled “T+1 week: Post-mortem and archive”Goal: Close the program and set up for next year.
What to run in MaxoPerf
Section titled “What to run in MaxoPerf”- Year-over-year comparison. Open the game-day peak run → Compare → select last year’s baseline. Document the delta chips.
How to archive in MaxoPerf
Section titled “How to archive in MaxoPerf”- Tag the game-day run: open run detail → add tag
bfcm-{year}-game-day. - Tag the dress rehearsal run:
bfcm-{year}-dress-rehearsal. - Set the dress rehearsal or game-day peak run as the pinned baseline for next year.
Where to go next
Section titled “Where to go next”- BFCM readiness checklist — the complete task-level checklist corresponding to this calendar.
- War-room and runbook — the game-day coordination structure.
- Peak events do and don’t — common mistakes at each phase of the program.