I am using Cloud66 that gives me both the advantage. I push code to github and Cloud66 deploy to Digital Ocean. It's very easy to use and I don't need to manage my server at all.
I was using Heroku before, now I am completely satisfied.
PS: If you want to try this is my referral code (10$ off): https://app.cloud66.com/referral?code=IOwgnqPHIEJwEzG
Cost matters to all businesses. But you have to do proper accounting. Do I hire more people on my team to build automation to create our database clusters, or do I just punch a button and then pay the bill? There must be a point where it makes sense to roll your own, but that point is likely to be fairly high up.
Whenever I hear that someone 'can do it cheaper', I often find that the math is not correct.
By the way, if you are not big enough that the relative cost of a VM between cloud providers is the primary concern, guess what, some of the services mentioned are really cheap – in some cases cheaper than running your own in whatever provider. You don't have to maintain VMs 24/7 to store data on S3, or to make use of SNS, SQS, DynamoDB. Lambda is the poster child for not maintaining servers
If you are really tiny, go use those services instead of wasting any time spinning up servers.