Selling Static Sites
Table of Contents
Selling static sites = I charge for the build and handoff; hosting runs on Free Tier Hosting Stack until traffic, build count, or client policy forces a paid plan.
My margin is labor, not hosting markup. I already run jorap.com on Hugo, GitHub, and Cloudflare Pages for about the cost of a domain - not the $12/month PHP plan I used to share with a client. Client work uses the same lane: markdown content, a theme, git push, live in about ninety seconds. I quote work that moves the needle; I don't resell “hosting” as a monthly mystery fee.
What I quote: discovery and Static Site Client Scope yes/no before I touch a theme; repo plus Cloudflare setup with HUGO_VERSION and NODE_VERSION pinned; theme and layout; content migration and contact form; handoff priced separately from retainer updates. Domain (~$12/year) and free hosting stay visible in the proposal - I'm not hiding Cloudflare to mark up server rent.
Handoff models (pick one with Plain Commitments at Work clarity): see Client Site Handoff - Git lesson, retainer, showroom branch, or Git-Based CMS. Bad handoff: promise WordPress-style daily edits to five non-technical staff without training.
Grow the offer: Minimum Viable Product = one paid pilot before a three-tier pricing PDF. Lean Startup loop: ship site, note what broke, fix the template, quote faster next time. Ship It beats polishing a service page with zero clients. Outcomes Over Pitch Decks on my own stack: judge by load time and whether the client can publish, not proposal polish.
When hosting stops being free: build count climbing, file bloat, client wants their own Cloudflare org, or concurrent builds blocking deploys. Mitigations live in Free Tier Hosting Stack; scope traps live in Static Site Client Scope.
Examples
- Neighbor asked for a portfolio - quoted build plus domain; hosting on Cloudflare free until her push volume gets weird.
- Pastor wanted a sermon archive - static fit; said no to member login and scoped brochure plus archive pages only.
- I almost bundled monthly “hosting” like my old PHP days - pitch is faster site, lower ongoing cost, paid once for work that matters.
- First paid client before the three-tier pricing PDF - learned migration takes longer than theme tweaks; adjusted the next quote.
- Client asked if I could “just host it like before” - plain yes: free tier on Cloudflare, you buy the domain, I charge for build and handoff.
Note Relationships
| Relationship | Wikilink | Reason |
|---|---|---|
| contradicts | Building a Personal API | when the client needs a live database or authenticated app, not a static brochure |
| extends | Creative Output | Client sites are shipped output, not notes hoarded in the garden |
| extends | Free Tier Hosting Stack | GitHub plus Cloudflare Pages is the default host until limits bite |
| extends | Lean Startup | Pilot site, measure what breaks, then package the offer |
| extends | Minimum Viable Product | One paid pilot before I over-build the service menu |
| extends | Plain Commitments at Work | Clear handoff model - Git lesson, retainer, or scope no |
| extends | Ship It | Ship the first client site before polishing the sales brochure |
| extends | Client Site Handoff | One publish path named and priced before deposit |
| extends | Static Site Client Scope | Say no early to jobs the stack can't carry |




