Hosting can be tough. The hardest part is figuring out exactly what you need. But when you do, you can achieve the maximum performance possible and keep your wallet full. I was able to take my monthly hosting bill from $10 a month down to around 51¢. This was done by knowing exactly what I needed to host my site. I will be discussing all the types of host I've used for my personal sites, how much I paid, and how I ended up using an S3 bucket for my personal site hosting.
Managed Hosting is a pretty popular option. What's nice about this is you don't have to do any of the sys-admin work. In my case, I had a WordPress install running on InMotion Hosting. What was nice about this is that with a one-click install, had a WordPress instance all set and ready to go. Typically a managed host will give you ftp access to modify files. The issue is that is about as crazy as it gets. When hosting my site on InMotion, I wanted to use Let's Encrypt for a free SSL certificate but since I didn't have root access to the server I was unable to configure this. If you are looking for a more custom option you'll definitely want to look towards a VPS.
A VPS, virtual private server, is very much like a dedicated server, but it runs on a VM within the server. You are given an allocation of resources and a lot more control. After you pick the OS, you can put whatever you want on it. If you want to learn how to setup of a web server, and are willing to take the time, this can be a great option. I use Digital Ocean for VPS and I have a referral link if interested. What is great is they have one-click installs for WordPress so you can be up and running with very little initial system configuration.
AWS S3 paired with CloudFront or other static host isn't for every project. You can use a static host as long as you have no need for logic on the server-side. It doesn't mean that your website can't be "dynamic" though. You can utilize the JAM stack which allows for your site can be super fast and also cheap to host. I use AWS mainly to get familiar with the platform but another great option is GitHub Pages and it's free! The lesson I learned through building a new site but making it statically is that I don't need a full VPS. That doesn't mean that all sites should be static. There are things like contact forms that require a bit of creativity but are definitely possible.
Hopefully you found this post somewhat informative, I hope to post more of what I learn in the future.