For smaller projects that don't need on-demand scalability offered by the public cloud environments, virtual private servers or even dedicated servers are very cost-competitive and infinitely flexible with different geographic availability zones. One problem you may encounter is due to somewhat limited operating system choice.
As a big fan of FreeBSD in server environments, over the years, I have struggled to find a hosting provider that rents out dedicated servers with FreeBSD as an operating system choice. Now, thanks to outreach by FreeBSD Foundation, the awareness and interest in BSD-variants are increasing. In cloud environments such as Microsoft Azure, AWS, and Google Cloud Engine FreeBSD has been available for the last year or so. But in other hosting providers such as Linode and OVH, there are only unofficial methods to deploy servers running FreeBSD. This landscape is changing fast, however. E.g. Digital Ocean offers FreeBSD as a distribution choice on their droplets.