---
title: "Capacity Planning at Scale"
description: "Shopify’s BFCM preparation combines traffic forecasting, resource planning, and platform-wide scalability testing to reduce the risk of outages during its busiest sales period. The engineering team worked with data scientists to model expected traffic, reviewed historical numbers, added safety margins, and created a master Google Cloud resource plan covering CPUs, storage, machine types, locations, and project-level quotas. Because 2020 brought unusual uncertainty from COVID-19-driven changes in online commerce, Shopify modeled multiple demand scenarios and chose the more aggressive growth cases, while retaining buffers for changes and regional failover. It also ran the Oktoberfest scale-up on Google Kubernetes Engine, using internal load-testing tooling powered by go-lua and embedded Lua to simulate storefront browsing, cart additions, checkout, and mock payment processing. The exercise exposed bottlenecks, which teams fixed before repeating the test; the successful rerun increased confidence for BFCM and reinforced a longer-term aim of more automated, dynamic, and resilient systems."
---

# Capacity Planning at Scale

[Shopify](https://yomu.fyi/company/shopify) · 2023-10-18 · Dec 3, 2020

**Type:** Explainer

## Summary

Shopify’s BFCM preparation combines traffic forecasting, resource planning, and platform-wide scalability testing to reduce the risk of outages during its busiest sales period. The engineering team worked with data scientists to model expected traffic, reviewed historical numbers, added safety margins, and created a master Google Cloud resource plan covering CPUs, storage, machine types, locations, and project-level quotas. Because 2020 brought unusual uncertainty from COVID-19-driven changes in online commerce, Shopify modeled multiple demand scenarios and chose the more aggressive growth cases, while retaining buffers for changes and regional failover. It also ran the Oktoberfest scale-up on Google Kubernetes Engine, using internal load-testing tooling powered by go-lua and embedded Lua to simulate storefront browsing, cart additions, checkout, and mock payment processing. The exercise exposed bottlenecks, which teams fixed before repeating the test; the successful rerun increased confidence for BFCM and reinforced a longer-term aim of more automated, dynamic, and resilient systems.

## Context

BFCM requires Shopify to anticipate traffic and resource demands while preserving enough capacity for unexpected growth and regional failover. Historically, scalability problems were sometimes discovered only after the platform had been fully scaled, leaving little time for mitigation. Planning was especially uncertain in 2020 because COVID-19 lockdowns had rapidly changed online commerce.

## Approach / What changed

Shopify forecast traffic with data scientists, modeled multiple scenarios, and built a master Google Cloud resourcing plan with buffers and project-level quota planning. It supplemented the plan with recurring scale-up exercises, including the Oktoberfest test on Google Kubernetes Engine, using go-lua-based load-testing workflows to simulate storefront and checkout activity. Teams fixed bottlenecks found in the test and reran it before BFCM.

## Takeaways

- Shopify’s resource estimates covered CPUs, storage, machine types, geographic locations, and quantities, with buffers for moving machines between projects or failing over traffic to other regions.
- The Oktoberfest scale-up simulated expected BFCM load and used temporary compute capacity on Google Kubernetes Engine, allowing Shopify to pay for extra capacity only during the exercise.
- Running the test in early October exposed bottlenecks early enough to fix them; a repeat test then completed smoothly and increased confidence ahead of BFCM.

**Tags:** [Google Cloud](https://yomu.fyi/topic/gcp), [Kubernetes](https://yomu.fyi/topic/kubernetes), [Scalability](https://yomu.fyi/topic/scalability), [Testing](https://yomu.fyi/topic/testing)

- Source: [Shopify](https://shopify.engineering/capacity-planning-shopify)
- Source URL: https://shopify.engineering/capacity-planning-shopify
- Ingested by Yomu: 2026-08-31T01:11:00.782Z

[Read original post](https://shopify.engineering/capacity-planning-shopify)
