Free Tier Hosting Stack
Table of Contents
Hugo, GitHub, and Cloudflare Pages ship static sites for $0 - until build caps, queues, or account limits bite.
Key Concept
- Hard caps on Cloudflare free: about 500 builds per month per account, one concurrent build, 20,000 files per deployment, and a 20-minute build timeout.
- Static bandwidth is unmetered - the traps are build count, queue time, and fat repos.
- Flow: Hugo turns markdown into HTML, GitHub holds source, Cloudflare Pages builds on push and serves over CDN.
- Full walkthrough: How I Built JoRap Notes - same pipeline for Selling Static Sites and the Digital Garden.
- No database, no admin panel - which is why Static Site Client Scope matters.
- One account hosting many clients who push often burns the 500-build budget fast; pin
HUGO_VERSIONon every project.
Level 1 - Recognize
Cloudflare free tier caps builds at about five hundred per month per account, one concurrent build, twenty thousand files, and a twenty-minute timeout.
Level 2 - Explain
Like a shared metered hose - bandwidth looks unlimited, but build count and queue time drain the budget first.
Level 3 - Use
Batch commits, pin HUGO_VERSION, and count builds before you add another client who pushes daily.
Level 4 - Connect
Fat repos and frequent pushes burn the budget faster than bandwidth - one account hosting many clients burns fast.
Level 5 - Create
Design a shared hosting policy that budgets builds per client, batches pushes, pins Hugo, and names when a site must leave the free account.
Examples
- Glad Hugo was pinned after the build failed - env var on every new project template now, and that failure still counted against the cap when twelve client sites hit 500 builds mid-month.
- Build failed until Hugo was pinned - env var on every new project template now, and that failure still counted against the cap.
Note Relationships
| Relationship | Wikilink | Reason |
|---|---|---|
| contradicts | Building a Personal API | when the site needs a live API and database, not static HTML |
| contradicts | Local-first Software | when the workflow needs sync apps, not git-push-to-deploy |
| extends | Digital Garden | Same Hugo-plus-git publish lane I use for the notes garden |
| extends | Future-Proofing Knowledge | Markdown in git survives; hosting vendor is swappable |
| extends | Getting Started | Same markdown-first workflow as garden notes |
| extends | Selling Static Sites | Default host for client static sites until limits force upgrade |
| extends | Static Site Client Scope | Stack limits define what jobs fit |
| extends | Success is Stewardship | Steward the build budget on borrowed infra |
| implements | Rollback Principle | Git revert and previous Cloudflare deploy are the rollback lane |
| implements | Staged Rollout | PR preview deploy before Pages merges to main |




