Context
195+ days of negotiations and $11k in loss for VPS that nobody used
What Happened
This one weekend, we decided to build a blog platform. Since, all the SEO services, marketing and discoverability start with a blog, we at Doshare, got our go-to blog on Ghost Pro. After 1 Month of Free Trial we knew we couldn't pay $11/mo for Plausible Analytics and $5 for Ghost Pro then paying Monthly Infrastructure Costs for AWS, Cloudflare, Google Cloud and Render. We needed to cut costs so we did what any reasonable engineer would do. Starting to setup the blog on a VPS using docker. We started out, we got free credits.
And then this occurred. IBM gave free $1000 in VPS credits. After exhausting every free credit limit on AWS. It was time to move to IBM cloud.
Simply installing docker and setting up a single instance of Ghost for our blog at blog.doshare.me . Then we realised many people are host their own instance on a $5 DigitalOcean droplet (or similarly priced VPS on AWS, Azure etc.) so I thought it would be great to have a WebUI over the Docker that could deploy as many websites I want for each of my side projects, it could help others potentially making into a Vercel like platform for Bloggers
So, I left everything I was doing, and got started with this Nextbase Starter from GitHub. We encountered some errors, did rigorous testing, Slept late. First week I hoped, I would be able to ship by end of week. But that was our overambitious self. anyway it's okay.
We got a VPS with a lock in period of 2 years (which was non-cancellable, and we didn't know that), but during development we hit a snag Supabase, one of the dependencies of Nextbase Starter got upgraded to GA and broke our prod within a month of deployment, we had no choice but to wait for new update to come to Nextbase, which never came, maintainer dropped of after 3 months we shut our blog as a service. We contacted IBM Support to cancel the VPS as we no longer needed it, 1 month, 2 months and 6 months went by no reply, then out of the blue they send the bill to the mail for $11000, we never received the service yet we were asked to pay, they said they'd go to courts etc.
After a lot of back and forth and tweeting on X the mater closed, when their VP of IBM Cloud had to step in after 1.5 years.
Root Cause
Scaling too fast before demand required it.
Not having control over your stack.
Don't work with a new provider unless risk outweighs the reward, which often doesn't with Big Cloud Providers
Impact
Losses on every front. Customer Bailouts and Miscommunication leading to potential legal action
Fix
We closed our service after two months
Lessons Learned
- 1. Work with the stack you know enough to work on even if it doesn't has any flashy new features
- 2. Use tech providers that give good support, not just free credits.
- 3. Sometimes the best way is to just follow what others are doing.
Prevention
- Setup billing alerts
- Have prepaid cards or expense management system in place for cloud providers where costs can increase overnight