Introduction

For about the past 14 years I’ve been using Linode as my preferred personal VPS provider. I started using them at the beginning of November 2008 when I first setup my blog. Other than a short and painful mistake of hosting my blog elsewhere, it has lived on Linode.

Recently I had to setup a VPS with DigitalOcean. This was due to needing the VPS in a data center located in a very specific place. While I haven’t used DigitalOcean for nearly as long as Linode, I feel like I’ve used them long enough to give an opinion of their service. At last the parts that I use.

I use these VPS services for personal use. I don’t do anything enterprise like having multiple VM’s behind a load balanced cluster, running containerized applications which have deployment managed with Ansible scripts. Also, I don’t do things like BGP routing with multicast IP addresses for seamless failover.

So this review / comparison is going to be from a personal single user perspective and won’t touch on any of the enterprise type products, or concepts really. Nor will it be that detailed because I don’t use the majority of what these companies offer.

Features I Use

VPS

For both companies, I have their 1 GB RAM and 25 GB storage plans. Nothing I do is resource intense and my bandwidth use is far below the plan limit. The biggest difference between these two is the Linux distributions they support installing. Linode has a few more than DigitalOcean but both support all the major ones.

I haven’t had a problem with either of my VPS and I haven’t run into any performance or stability issues. They’ve been working fine.

Network

IP Addresses

Both companies assign an ipv4 and ipv6 address to the VM and they’re yours as long as you have that instance. This is great because, while you don’t own the IP addresses, they won’t change so you can easily connect DNS.

DNS

Speaking of DNS and IP addresses, both companies offer a DNS service where you can manage your domains DNS records. These don’t have to be linked to a VPS specifically. That said, I use their DNS for the domains associated with the VPS. I also use API keys to allow cert-bot to update DNS records with Linode which is required to generate wild card TLS certifications with Let’s Encrypt.

Both services just work and are easy to use.

Firewall

My favorite feature that both have is their network firewall. You can setup a basic firewall with port restrictions and apply the rules to the VPS. This is independent of the firewall on the VPS (ufw is my preference) and can prevent traffic from even getting to the VPS.

Both have a basic firewall that is in / out bound port and protocol allow or deny. They are established and related automatically allowed. Neither offer any type of complex rules like routing or rate limiting.

They’re good, they’re handy and a nice additional layer of security.

Support

I’ve had to use both companies support. Both responded promptly and answered accurately. These weren’t in-depth or technical questions but it’s a good sign when a support department can handle basic questions about what they’re selling.

Interface

Up until now everything has basically been tied. Linode and DigitalOcean offer the same services and they are nearly identical. However, the web interface is where they differ.

DigitalOcean’s interface is definitely better. It’s easier to understand, more intuitive, cleaner, looks better, and is just easier to use. That said, Linode’s does everything DigitalOcean’s does. There is no functionality difference, at least in the things I use. Linode’s isn’t bad but DigitalOcean’s is a step above.

However, the interface is not something I use regularly. I use it a lot when setting up a VPS like I did recently with DigitalOcean. But once the VPS is setup, access is all handled by SSH. I’ve gone years without ever need to use the web interface for Linode. So even though Linode’s isn’t as good, it’s not like this is a daily use item.

Price

The plan I have is identical in what it gives me with both companies. Linode is $5 a month and DigitalOcean is $6 a month. A $1 a month difference. DigitalOcean does have a cheaper plan at $4 but I feel it’s a bit too constrained. It might work and DigitalOcean would be $1 cheaper than Linode but I’d rather pay the extra $1 or $2. So either could be cheaper depending on how close to capacity I want the VPS running at.

Features I Don’t Use

There are a number of other features they both offer that I don’t use.

For example:

  • Kubernetes
  • Load balancer
  • Database
  • Backups
  • Storage
  • Marketplace for one click server and service setup

I can’t find any feature that one has that the other doesn’t. Even these are identical.

API Keys

Here is where Linode wins hands down and DigitalOcean can’t even complete. Linode allows you to generate API keys that are scoped to specific functionality. This is exactly what should be offered.

If you want to use wildcard certificates with Let’s Encrypt, I do, you have to use a DNS challenge. If you’re using Linode to manage the DNS for your domain, no problem. Generate an API key, and limiting its scope to DNS only. This way if the key is compromised the damage will be limited.

DigitalOcean only allows you to create read, write, or read / write keys. These are master keys that can do anything on your account. If the key is compromised, an attacker could do something like spin up 10000 VPS instances and run crypto miners on them. They can do pretty much anything to your account. I can’t even begin to guess why they would offer unscoped keys like this. DigitalOcean’s API keys are, for all intents and purposes, useless.

If you need to use Let’s Encrypt with DigitalOcean’s DNS or want to do any API automation needing an API key, stay away from them. Use Linode instead, who did this right. That said, if you’re not using DigitalOcean to manage your DNS for Let’s Encrypt this point is moot.

Conclusion

The only thing that Linode does better is API keys. But I have access to multiple DNS providers for my domains. So it really isn’t a problem for me to use someone other than DigitalOcean for DNS when I need to have Let’s Encrypt use DNS challenges. It is a point for Linode but not one I really need to consider as swaying which is better than the other. Especially considering I don’t use any other type of automation with API keys.

Over all, I really like DigitalOcean’s interface but Linode is $1 a month cheaper. But then again, depending on what I need it for, DigitalOcean offers a plan $1 cheaper than Linode. But now I’m trying to justify a choice when the difference is $1.

Honestly, if I were to setup another VPS, it would probably be a coin flip as to which company I’d use. They’re so similar and neither has a compelling feature over the other. If I need more than the same plan I currently have, I would use their pricing calculator to see if there is a significant difference between them. But I highly doubt that would be the case. Casually looking at their pricing, they’re nearly identical.

I’m also not attached to Arch Linux and I’m just as comfortable with Ubuntu so even that isn’t a compelling reason for Linode to be my go to. I really can’t recommend one over the other. This conclusion is lack luster, because there really isn’t much to different the two services. They’re both good.