September 10, 2020

Why I moved my VPS from Digital Ocean to Contabo

While there is a vast pool of hosting providers to choose from, it boils down to how much money you are willing to spend.

And you most likely don't want to spend too much if you are just in a validation phase of your project. Probably even after, if you don't need to. I saw many people worrying about scaling in the beginning phase of their project. They are thinking about how to handle gazillion customers per second, while not knowing if anybody will ever use their app.

So, plain old VPS at the beginning is a good way to go, because it is usually cheaper. I will compare VPS hosting options from quite well known Digital Ocean (DO) with not so famous Contabo. I won't compare the features of these providers, because DO is a cloud service while Contabo offers just a simple hosting.

That said, Contabo is not your choice if you need an IaaS. But continue reading if you are more worried about the pricing than you are worried about advanced features and scaling.

Digital Ocean

When I was looking for hosting about two years ago, I went with Digital Ocean. Their basic Droplet for $5 a month seems reasonable for what you get. And it works quite well.

They have data centers in Asia, Europe, and the USA. Not as many as AWS for example, but still plenty of locations to choose from. They have a nice UI and ordering of droplets, volumes, and everything else is easy and fast.

I didn't have any problems with them before I launched my last project Webstore Insight.

I hit the "performance wall" pretty quickly. I was running a database, and another one, a couple of web apps, some scripts in the background... all that on a single instance.

It didn’t take me a long time to realize that only 1 CPU, 1GB of memory, and 20GB of SSD storage is simply not going to be enough to run it smoothly.

And it wasn't.

So, I went to my DO dashboard to look for how much it costs to make it a bit better than it currently is. And here is the problem with Digital Ocean. Their basic plan is cheap, anything better than basic is getting expensive.

Let’s look at their pricing.

CPUs [#]Memory [GB]SSD [GB]Transfer [GB]Price / Month
11201,000$5
24254,000$20
48255,000$40
616256,000$80

As you can see the price goes up steeply, but specs... not so much.

The even more surprising thing is, that you cannot find an upgrade with more SSD capacity than 25GB, you have to pay extra for the storage. The pricing is $0.1 per GB a month.

Contabo

I tried VPS from Contabo after I read several reviews of their extremely happy customers.

Let’s compare what you get in their basic plan for the same price at Contabo.

CPUs [#]Memory [GB]SSD [GB]Transfer [GB]Price / Month
48200unlimited$5
616400unlimited$9
830800unlimited$15
10601,600unlimited$27

I will leave an in-depth price comparison to you, but basically, you will get 4x CPU, 8x MEM, 10x SSD in the basic plan for the same price at Contabo. Just the SSD alone would cost about $20 per month at DO (all plans, not just basic).

The only downside of the Contabo’s basic plan is the connection speed. It is 200Mb / s, instead of 1,000Mb / s at Digital Ocean. However, with each consecutive row in the table above they add 200Mb / s to the instance's bandwidth. An exception is the last row, where you get 1,000. That means, for $27 you are on 1Gb / s with the addition of quite good specs.

In comparison to the Digital Ocean, they have only two data centers. One is in Germany and the second one in the USA. Their UI is super old, and when you order something (VPS for example), it is not instant but it looks like someone has to prepare it for you manually. Also, you have to pay a one-time installation fee of $10.

That means, every time you order VPS from Contabo you have to pay $10. So, not viable for spinning instances for a short time and getting rid of them after you don't need them anymore.

Performance Comparison

I didn't run any benchmarks, so there might be a difference between CPU clock speeds, the same thing for memory, and SSD performance.

However, both providers use virtualized hardware and they don't list full specs for it. CPU at Contabo is clocked at 2.2GHz and I assume something similar for DO, although I cannot verify it right now.

What I can say though is, after migration from DO to Contabo everything is running much smoother for the same price.

Backup Solution

Both Contabo and Digital Ocean offer some kind of backup solution, but neither of them is good.

Digital Ocean will charge you 20% of your monthly cost for a weekly backup. Not much flexibility in that, it is done only once a week.

Contabo offers RAID storage on a private network with SFTP or FTPs access and it charges $4 per month for 100GB. So this is not even a full solution to backup and it is also tied to a data center. That means you cannot use the same backup for one server in Europe and another one in the USA.

Solutions from both providers are quite expensive and there are certainly better and cheaper backup options out there. In the next article, I will write about a backup solution I am currently using, it is almost for free.

Summary

To wrap it up, both the Digital Ocean and Contabo have their pros and cons. When I used DO, I had one server in Singapore and the second one in Europe.

I host many apps on my servers, and because I often start a new project I reuse my servers for the hosting. And this heavy reusing can lead to the performance issues of the server. In the case of Digital Ocean, I could have to get more instances but it wouldn't solve my problems with not enough storage for a database. And getting more servers would be unnecessary and more expensive.

I went with Contabo, one server in Europe and one in the USA. Their VPS is very cheap including the vertical scaling if I need more performance and storage. But should I run some critical service I would go with the cloud and pay extra for features such as scalability on demand and failure management. Digital Ocean offers managed Kubernetes service, but I would most likely not choose them as a provider in this case either.

My stance on Digital Ocean is that they are somewhere in the middle, they are neither cheap nor they offer amazing service or support. For the cloud service, I would probably go with Hetzner, or I would go with AWS elastic cloud if I don't care much about the cost.

Copyright © 2020 Drahoslav Zan