What is the difference between horizontal and vertical scaling, and when should you use each?

Neil Millard

Quick answer: horizontal scaling adds more identical instances (2 servers to 4 to 8) to spread load across them, while vertical scaling makes a single instance bigger (more CPU/memory). Web and proxy servers typically scale horizontally well since requests are easy to distribute; databases are more often scaled vertically first because splitting data across nodes adds real complexity — most production systems end up blending both.

There's horizontal scaling and vertical scaling. Horizontal scaling is where we take the same cookie-cutter process — be it a server, a virtual server, or a container — and we just stamp out more of them in a horizontal direction to give us more of those things, so we can go from two servers to four to eight to 32, however many it takes for our particular workload.

There's also vertical scaling — that's where we make the resource bigger, so that virtual server, we give it more memory or more CPU and make it bigger that way. There are pros and cons depending on where you are and what layer you need to fix. It's quite common for web servers or proxy servers to scale horizontally, but for database servers it's more common to scale vertically, and of course you can blend the two together.

Need help with your DevOps setup?

Get personalised advice from Neil Millard — DevOps consultant based in Weston-super-Mare.

© 2026 Delta Famiglia Ltd. All rights reserved.