* Free tier - you can't beat free for very small companies, and you can scale a t2.micro surprisingly well.
* Credits - it's pretty easy for startups to get $5-20k in credits for a 1-2 years. This is a great time to fire up a couple of EC2 instances, some RDS instances, CDN, auto backups, monitoring, etc etc. You don't have to worry about costs so you can always have duplicate dev, staging, prod environments. If you're still worried about budget in two years when the credits run out, you can scale down pretty easily -- hopefully at that time you're ready to scale up rather, and if you need the extra functionality it's right there instead of migrating clouds.
* SDK support - AWS command line tools, Python (boto), Java, and pretty much any language you need can integrate really easily with most of AWS.
* Documentation - it's not great, but there's a lot of it. You can find the official documentation on how to integrate the various services together, and best practices for security and scaling them, plus a gazillion third party tutorials that you can follow line by line or download third-party libraries if you need to do something in a hurry.
* Support - even on the free tier where they don't officially offer it, the giants have incentive to provide really good technical support to help you spend more money with them.
* Experience - you can find more developers and other technical and non-technical people who are used to the AWS console and terminology.
* Region support - even here in South Africa I can have an edge location for my CDN. Hoping for an actual data centre here too in the near future.
* Versatility - whether I want to scale a web app, or fire up a quick P2 GPU instance to try out some image classification, I can use the same interface and toolset. If I suddenly want to view my Apache logs in the cloud, I can send them to the same dashboard as my heartbeat alarms in <1h of set up time.
* Performance - I won't go find them now, but there are a lot of benchmark blog posts out there showing how the smaller providers sometimes cut costs by using more shared hardware than they make obvious from their marketing - not all cores are equal and for sustained usage, AWS does a pretty good job of being predictable.
* Security - IAM is useful. S3 has sane defaults (now) which make it very hard to accidentally make data public. EC2 instances come with all the ports closed and you have to manually open the ones you want.
Maybe I sound like I'm trying to shill AWS (I did work for them a few years ago), but it's honestly one of the products I am happy to pay for. They've done a great job. GCE is really fantastic to use too, and Azure to a lesser extent. I still keep around a couple of Digital Ocean instances because I'm too lazy to migrate them anywhere and I love the simplicity of the platform and a Scaleway one because it's EUR2.99/month and it's useful to have a box that's just there to play with when I need it.