-
What's the cost breakdown of the 800 per month and can it be reduced without meaningful impact to the service?
£800 per month is what I recommended try to be raised on an ongoing basis by getting just shy of 250 people to donate £10 every 3 months.
£10 every 3 months minimises the impact of payment provider fees on smaller donations. (There is a single person who donates £1 per month, less than half reaches the account... it's such a waste, it's actually more donation to PayPal than it is to LFGSS).
250 people gives a far better spread of donors, and given that almost 10% expire out every 3 months will provide a bit of a buffer.
That amount should mean that over time you accrue a larger buffer, but never need to hit anyone's personal credit card to pay a hosting bill.
We presently have around that number of donors... but, most are doing £3 or £6, and based on the frequency and higher % of payment fees on the smaller donations, it means we're only getting about £300-350 per month... which is why I top it up every month.
The real breakdown of costs today:
- Linode $375 per month for the virtual machines, backups of the virtual machines, and the object storage (currently shy of 1TB for attachments), we received free bandwidth as part of the VPS costs which allows 22TB of traffic, we typically use about 6TB per month as we are very cache efficient. AWS would wipe us out on bandwidth from the account, and from the object storage.
- Tarsnap $25 per month for a remote backup of the database
- Twilio / Sendgrid $126 per month for 100k emails and a static IP to send them
- Some domain names... approx $100 per year
- An SSL cert that is wildcard at $250 per year (as I could never work out how to get certbot and LetsEncrypt to do wildcard + SNI for other FQDN at the same time)
Some of those costs vary due to exchange rates, but basically $501 per month in fixed monthly costs, another $30 per month in annualised costs... $530 per month being the estimate roughly being £420 per month in intrabank exchange rates... add roughly 10% lost to payment fees and forex rounding up that happens because I never figured out early enough to just pay all the bills from a Wise account... roughly £460 per month at the moment.
Donations bringing in roughly £350 per month, and you see the £100 shortfall... hence I just pay all the bills from my personal account, and draw the PayPal money into that account and absorb the loss. Some months someone will donate £50 or £100, and those months I don't subsidise it.
My rough summary here and recommendations here:
- The hosting is very cheap, there's a lot of headroom, but it's not obvious that reducing the VPS devices would be a smart thing to do (they have too much CPU, but the LB needs the disk space for cache, the DB needs the memory, etc)... given that I don't even know how to deploy the old Django... leave it where it is with Linode, but we can move it to Germany and out of the UK.
- The money side could easily be dramatically improved... just have an Open Collective EU account, receive donations there, provide the transparency I never managed to with PayPal... and then pay the bills from a Wise account and reimburse that person... this is very very easy to run, especially if an EU citizen runs it.
- Add a new service, a shared Protonmail email or Migadu for probably $100 per year per user/role, and give the volunteers access to that... i.e. have a "admin@microcosm.app" email, and make it accessible by a cohort of volunteers... and avoid having a single named individual as the owner anywhere. You probably only need 1-2 email addresses to cover everything, a Fastmail account might even be sufficient.
- Encourage each volunteer to have a password manager like Bitwarden, share credentials via Signal and store in local Bitwarden accounts.
- Pay for multiple cheap frontends around the World in various hosting providers, all using a Wireguard VPN or the like to connect to wherever the servers are ultimately hosted... this is probably another $100 per month... and we'd just make the DNS round robin to them because they're stateless caches, if any were taken out, the others would be fine.
Edit: Updated 2024-12-20 as I added a server to help support the archiving efforts.
- Linode $375 per month for the virtual machines, backups of the virtual machines, and the object storage (currently shy of 1TB for attachments), we received free bandwidth as part of the VPS costs which allows 22TB of traffic, we typically use about 6TB per month as we are very cache efficient. AWS would wipe us out on bandwidth from the account, and from the object storage.
What's the cost breakdown of the 800 per month and can it be reduced without meaningful impact to the service?