Horizontal Scaling (scaling out) means adding more servers to handle increased load. 1 server → 10 servers → 100 servers. Opposite of Vertical Scaling (scaling up): upgrading one server to be bigger/faster. Horizontal scaling is how cloud apps handle massive scale—Netflix, Facebook, etc. Requires load balancer to distribute traffic. More complex than vertical but enables infinite scale. Most startups start vertical, go horizontal when needed.
Scale horizontally when you've maxed out vertical scaling (biggest server available), when you need redundancy (one server dies, others continue), or when traffic is unpredictable (scale up/down automatically). Cloud platforms (AWS, Vercel) make horizontal scaling easy with auto-scaling. Start with vertical scaling—it's simpler until you need high availability or massive scale.
System Design Patterns
Add more servers