accidentaljosh
My first question is why you didn't mentioned Azure 😉
You have to know that each public Cloud provider affords different features and depending of the usage of that features, the cost could be less or more than you can estimate.
The cost of a solution depends of your needs, the high availability, the resiliency, the utilization of your application by your customers, but also the security that you accept to set or not.
So you cannot define the most cost-effective platform without any use case that let you to compare the costs of your architecture between different providers.
https://azure.microsoft.com/en-us/pricing/calculator/, is an excellent tool to estimate the cost of your solution that you plan to deploy on Azure before to start anything.
Azure provides different mechanisms to reduce your cost like Reserved Instances, Hybrid Benefit, start & stop habits, autoscaling, Dev/Test Lab, Azure Advisor
You can follow the cost of your deployed resources into Cost Management.
Keep in mind that with the Cloud you paid only for used services, so if you don't need them, delete them. You should track orphan resources to avoid to pay for something that you don't use.
So I don't have the answer to your question, but I am able to estimate / evaluate the cost of my architecture/resources and it's the first step to be able to see if I pay more than I want to pay.