$10 Showdown: Linode vs. DigitalOcean

Josh Sherman
6 min read
VPS Showdown
HEADS-UP: A ton has changed since this post was originally published!
Why not check out the latest comparison?

Every time I think that I’m done with this topic for a while, someone (usually Linode) drops something new on us. The latest from Linode is the addition of a 10$ a month plan which nearly puts it in line with DigitalOcean in regard to low tier pricing. Because of this change, I felt it was probably worth revisiting my comparisons as all the previous articles were comparing the hosting companies at the 20$ price point which was Linode’s smallest plan all of these years. To get started, let’s take a look at the vanity metrics of what you get for your money:

DigitalOcean Linode
Price $10/month $10/month
RAM 1GB 1GB
CPU 1 core 1 core
SSD Storage 30GB 24GB
Included Bandwidth 2TB 2TB
Bandwidth Overage $0.02/GB $0.10/GB (billed at $10/month in 100GB increments)
Network In 1Gbit 40Gbit
Network Out 1Gbit 125Mbit

As you can see, DigitalOcean wins out on storage capacity and bandwidth overage charges while Linode excels in the networking department while everything else is exactly the same. Now let’s take a look at the performance. I went ahead and spun up brand new instances on each platform (running Ubuntu 14.04 LTS 64-bit), got the operating system up to date and then installed sysbench and mysql-server:

sudo apt-get update && apt-get upgrade
sudo apt-get install sysbench mysql-server

Although not an officially tracked metric, running the aforementioned commands appeared to run significantly faster on Linode than on DigitalOcean. Additionally, the Linode instance was configured with a mere 128MB swap which was subsequently disabled to be more in line with DigitalOcean’s lack of swap via their setup interface:

swapoff -a

CPU

sysbench --test=cpu run
DigitalOcean Linode
Number of Events 10000 10000
Execution Time 19.5259s 11.9861s
Min. Request 1.30ms 1.16ms
Avg. Request 1.95ms 1.20ms
Max. Request 103.26ms 1.61ms

Memory (read)

sysbench --test=memory run
DigitalOcean Linode
Number of Events 104857600 104857600
Execution Time 392.8576s 437.5441s
Min. Request 0.00ms 0.00ms
Avg. Request 0.00ms 0.00ms
Max. Request 104.52ms 3.37ms
MB/sec 260.65 234.03

Memory (write)

sysbench --test=memory --memory-oper=write run
DigitalOcean Linode
Number of Events 104857600 104857600
Execution Time 371.8564s 437.3620s
Min. Request 0.00ms 0.00ms
Avg. Request 0.00ms 0.00ms
Max. Request 100.65ms 0.67ms
MB/sec 275.38 234.13

File I/O

sysbench --test=fileio --file-total-size=4G prepare
sysbench --test=fileio --file-total-size=4G --file-test-mode=rndrw run
sysbench --test=fileio --file-total-size=4G cleanup

It’s worth noting that the prepare command ran notably faster on Linode. In fact, the run was completed on the Linode instance before the prepare was done on the DigitalOcean droplet.

DigitalOcean Linode
Number of Events 10000 10000
Execution Time 5.7764s 1.9483s
Min. Request 0.01ms 0.01ms
Avg. Request 0.13ms 0.15ms
Max. Request 10.36ms 6.14ms
Requests/sec 1731.18 5132.57

MySQL

sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --mysql-password=password prepare
sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --mysql-password=password run
sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --mysql-password=password cleanup

As with the prior test, Linode out performed during the prepare. Please note that I also had to create the test database before these commands would run.

DigitalOcean Linode
Number of Events 10000 10000
Execution Time 73.2422s 29.2023s
Min. Request 2.82ms 2.31ms
Avg. Request 7.31ms 2.91ms
Max. Request 97.01ms 30.70ms
Read/write Requests/sec 2594.13 6506.34

Performance Conclusion

Based on the results of sysbench, it still looks like Linode outperforms DigitalOcean in everything except reading / writing to / from memory. These results are pretty consistent with the results that I saw previously using 20$ worth of servers instead of 10$.

Referral Program

I always include referral links for both DigitalOcean and Linode in my posts but I’ve never factored the programs into any of these throwdowns. I am choosing to do so today because DigitalOcean recently upped their referral program from 10$ to 25$ per referred customer that totaled the same amount in billings. Linode has always offered 20$ per referred customer that stayed with the company for 90 days. The major difference between the programs is that DigitalOcean will pay you in credit or in cash money to a PayPal account whereas Linode only offers credit.

What’s interesting about DigitalOcean’s change is that even though you can now earn more credit / cash, it takes longer and gives more of a window for a referred customer to bail and you not get anything. At the moment, I’m unsure if this change will end up being in favor of DigitalOcean or their affiliate network. Thus far, I don’t feel like I’ve missed out on anything and I’m pleased with the increased affiliate revenue.

Final Thoughts

I use both companies for various things, specifically I host a site I bought off of Flippa on a small DigitalOcean droplet and I maintain a server with Linode just so I can continue to use their DNS. Linode still seems to be the leader in performance even if you’re not getting as much storage space but the fact is that both hosting companies are very capable.

Because YMMV I thought I’d point out a comment I received the other day. The commenter made mention that depending on the architecture, four 5$ droplets from DigitalOcean could in fact outperform a single 20$ Linode. I’m still trying to wrap my head around how I could actually test that, one thought is setting up a cluster of webservers on DigitalOcean and using ab to check the performance against the single Linode (comment below if you have any ideas). Personally, I still like doing the apples-to-apples comparison just because most people just getting into a VPS are going to be starting out with a single server anyway.

Totally superficial, but +5 to DigitalOcean for commenting on one of my previous posts. Definitely shows they care (even if they shot me down when I applied to be a software engineer with them ;)

As always, if you found this article insightful and it’s helped you make a decision as to which hosting company to go with, pretty please with whipped cream and cherries on top, sign up with my referral link for Linode and/or DigitalOcean.

If you do sign up, tweet at me and/or leave me some comment love below!

Or if you’re feeling really generous, show off your favorite tech stack by picking up a shirt!

Join the Conversation

Good stuff? Want more?

Weekly emails about technology, development, and sometimes sauerkraut.

100% Fresh, Grade A Content, Never Spam.

About Josh

Husband. Father. Pug dad. Musician. Founder of Holiday API, Head of Engineering and Emoji Specialist at Mailshake, and author of the best damn Lorem Ipsum Library for PHP.

Currently Reading

Parasie Eve

Previous Reads

Buy Me a Coffee Become a Sponsor

Related Articles