Hosting a basic site for less than $5/year
This is a quick rundown of how I host this website. This is a static website hosted at NearlyFreeSpeech.net and using Cloudflare as it's delivery network. These pages should be quite fast and delivered all over the world, and costs me less than $5/USD per year (not including my .email domain).
NearlyFreeSpeech.net
NFS is a pay as you go provider, been around since 2002 or so. They offer services as low as $0.01/day. This is the service that this site uses.
I use the non-production site/account. It is limited, but for hosting HTML like this, it's perfect. This plan offers 1GiB of bandwidth per day, which is probably 1000 times more than it needs. So far in 2020, this site has used less than 50MB of bandwidth.
In regards to storage, this site uses a whopping 200KB total. NFS doesn't charge me for any of this storage, I think they round down. The storage costs are $1/GB/month. I will start seeing $0.01/month storage charges between 11-20MB and $0.01/day storage charges around 320MB.
Maybe I'll add some pictures or other content someday, we'll see what happens.
Cloudflare
This site uses the free Cloudflare plan. The free plan offers a pretty great feature set for zero money. I am making use of almost every free feature offered. One nice feature is the basic security analytics, I can see that there are a lot of "visitors" from China and Russia. I then use one of my five (5) free firewall rules to block traffic originating from China and Russia, I'll never get legitimate traffic from those countries anyway. I also make use of the free bot net protection. I use the Cloudflare full end-to-end SSL encryption (even though NFS provides free SSL via Let's Encrypt). I also make use of a couple of the three (3) free page rules. These are the rules one uses to configure caching. I'm still experimenting with the config, but I'm trying to cache as much as possible. There are other features that I've implemented, but I won't get into those.
A typical month shows about 30-35% cached data, with a whopping 1MB of cached data. Total data server last month was 4MB.
Domains, the future, and other misc.
I use Google Domains for all of my domains, which is probably a dangerous game. If I loose access to my GMail account, it would be a huge pain. Hopefully that never happens, it's a 15 year old account (GMail beta ftw!), so I think it will be fine. This .email domain costs about $20/year. I know, I know, it's more than $5/year to have this website up, but the title says "Host"! That's the cheap part. I could get $14/year .email domains from Cloudflare, which I am considering.
NFS does offer free subdomains, so technically one can still have a cheap, fast, static site, you just get a .nfshost.com domain, not super exciting.
The Future
Who really knows. I'd like to continue to optimize the page load speeds, not rely on external Google fonts, explore different caching methods, and maybe even get something dynamic, like comment posting.