Small static sites need small honest hosts
A small static website is a bounded file tree: a few HTML pages, modest media, no application server. “Where to host” for that shape is about avoiding both overkill (Kubernetes for a menu page) and false friends (hosts that imply free forever, remote builds, or SPA magic you will not use).
StaticHost hosts finished files—HTML, CSS, JavaScript, images, fonts, and generator output. You build locally or in CI you control. The platform does not run npm, Hugo, or Jekyll for you. Upload a zip of the site root or connect GitHub to a tree that already contains those files. HTTPS is available on the preview hostname immediately; custom-domain certificates issue only after DNS verifies. nginx is effectively try_files $uri $uri/ =404 with no SPA fallback to index.html. There is no email product and no bundled CDN product. Plans: Starter $9/mo (1 site, 2 GB), Pro $30 (3 sites, 10 GB, staging), Scale $65 (10 sites, 30 GB), Business $130 (30 sites, 100 GB, teams). Short trial (~1 day); no forever-free tier.
Further reading in the same vein: simple hosting for a static website, static website hosting for developers, and static site hosting for documentation.
What this host is
File-oriented static hosting with deploy history, preview TLS, and DNS-verified custom certs. Site and storage quotas you can read on a pricing page. Staging when you pay for Pro+. The product story stays readable under deadline pressure: upload the folder you already tested, open the preview URL, then cut DNS.
Small sites benefit from that readability more than from a matrix of edge middleware options. You want to change Saturday hours on a Monday morning without relearning a console.
What this host is not
Not unlimited. Not a builder IDE that compiles Hugo in the cloud. Not WordPress. Not mail. Not a substitute for a CDN product if you require one. Not silent about 404 behavior. Not a forever-free commons after the short trial ends.
If your small site secretly needs member logins with server sessions, it is no longer a small static site—and the host choice should change with the honesty of that sentence.
Decision criteria for “small”
- Page count and churn. Seasonal edits → zip is enough. Frequent commits of built output → GitHub.
- Team size. Solo → Starter. Client review environments → Pro staging.
- Media weight. Hero images add up; 2 GB (Starter) is plenty for text-heavy small sites, tight for raw photo dumps.
- Routing. Multi-page HTML works. Client routers without files do not without your own prerender strategy.
- Cost philosophy. Paying $9 for clarity beats a free tier that vanishes under policy changes—unless $0 is mandatory.
- Teardown. Can you delete the site cleanly after a pop-up shop closes? Separate site slots help.
Score these before demos. The cheapest wrong host still costs time.
Worked example: bakery one-pager with opening hours
The site is literally one HTML file plus CSS and two images. Requirements: custom domain, HTTPS, update hours twice a year, no blog, no accounts.
Where to host: StaticHost Starter. Reject a full CMS. Reject a VPS. Reject a JAMstack platform whose main value is remote build minutes you will never spend. Upload the folder after editing hours. Preview. Then DNS.
Local tree worth defending:
bakery/
index.html
styles.css
bun.webp
storefront.webp
Zip so index.html is at the archive root. If the baker later adds a catering microsite and a hiring page as separate hostnames, revisit Pro ($30, three sites) instead of cramming unrelated roots into one confusing tree.
Failure: zipping the parent folder so index.html is nested
Small sites are where zip mistakes dominate. The folder on the desktop is named bakery-site. Zipping the desktop selection yields bakery-site/index.html at the archive root. The host serves an empty site root. Someone concludes “this host cannot do small websites” and shops again.
The criterion “easy file upload” only helps if the archive shape is correct. Inspect the zip. index.html must be at the top of what becomes the web root. Preview would show the failure immediately—another reason to demand preview-before-DNS when choosing a host.
Teach one sentence to anyone who will ever click Compress: if the archive opens into a single folder that then contains index.html, you zipped the parent. Fix it before DNS.
How to choose in one sitting
List must-haves: HTTPS, custom domain, rollback, no server patching. List must-nots: remote npm required, SPA fallback required, free forever required, mail required. If your must-haves match StaticHost and your must-nots are things it openly skips, you have an answer without a roundup.
Revisit when the site stops being small—more brands, more storage, more reviewers. Upgrade tiers ($30 / $65 / $130) rather than inventing nested multi-tenant path schemes on one Starter site.
Questions people actually ask
Is a small site “too small” for a paid host?
No. Small sites benefit from boring infrastructure. $9/mo buys predictable HTTPS file hosting without free-tier surprises.
Can I host several small sites on one plan?
Starter is one site. Pro allows three; Scale ten; Business thirty. Match the plan to count rather than stacking unrelated brands in one root.
Do I need GitHub for a one-pager?
No. Zip is enough. Use GitHub when you already keep built files in a repo.
What breaks if I treat it like Netlify redirects?
Expecting /* → /index.html will disappoint. Missing files 404. Design multi-page HTML or hash routes accordingly.