My Portfolio Ran on Free Tiers for Two Years. Here's the Invoice Nobody Showed Me.
Two years ago, I gave myself a pat on the back for being frugal. My portfolio ran on a free-tier host, a free-tier Postgres instance, a free-tier transactional email service, and a domain I actually paid for because I'm not a monster.
Total monthly spend: $0. I told a friend I'd cracked the code. He now refers to that period as "the before times."
The Spreadsheet That Ruined the Illusion
After my third unplanned outage, I got petty. I opened a spreadsheet and started logging every cost associated with my "free" setup — real dollars, but also hours. Here's the summary after twenty-four months:
- Surprise overage charges: $67. My "free" database hit its row limit during a small traffic spike (someone shared a blog post, thanks whoever you are) and the provider auto-upgraded me to a paid plan without a warning email that I could find anywhere.
- Lost freelance income: $250. A recruiter emailed me the same week my contact form silently failed because the free email tier had suspended outbound sends. She assumed I'd ghosted her. I found out eleven days later.
- Downtime during a job hunt: unquantifiable, but I got a follow-up email from an interviewer saying the link "didn't work for them." It worked for me. Cold start on a free-tier container, forty-five seconds of timeout. Cool feature, terrible first impression.
- Migration labor: roughly 14 hours. More on that in a second.
Running total: north of $400 in real, tangible damage, spread across two years of paying nothing per month.
The Shuttering
The email service announced its free tier was being sunset with exactly thirty days' notice. Fine — that's business, nobody owes me a free tier. But the migration wasn't a config change. It was rewriting my contact form, re-verifying domains, debugging DKIM records at 11 PM on a work night, and realizing my DNS provider's documentation was three major versions out of date.
Fourteen hours, start to finish. I billed a client $85/hour that same month. You can do the math on what that migration "cost" in opportunity terms.
What Free Tiers Are Actually For
Here's the part where I defend them: free tiers are fantastic for experiments, prototypes, and throwaway demos. They are a genuine gift to people learning infrastructure on a budget, and I used them for exactly that for years.
The mistake wasn't using free tiers. It was letting a free tier become load-bearing for something with a real-world job: representing me professionally. A portfolio isn't a side project you can let sleep. It's the landing page for your career, and careers are not patient with cold starts.
The Math I Should Have Done in Year One
A paid VPS or managed host runs me about $5–8/month. Email with a real provider: maybe $15/month at my volume. Call it $200 a year, all-in.
Compare that to $400 in losses, fourteen hours of emergency migration, and one recruiter who quietly crossed me off a list. The paid setup would've been cheaper in year one. It's not even close by year two.
The lesson isn't "never use free tiers." It's that you should price your time into the comparison, and you should know which parts of your stack are allowed to disappear overnight. If the answer is "the part that makes my contact form work," you've already made a decision — just not on purpose.