Why a personal site runs completely free — Cloudflare Pages + GitHub Actions
This site (nikinakamura.com) is a static export deployed to Cloudflare Pages, rebuilt automatically by GitHub Actions on every push to main. Both have free tiers a personal site never exhausts — so the running cost stays at $0.
The free pieces
- Cloudflare Pages (the host) serves your static files from Cloudflare's global network; the free plan allows 500 deploys per month (Cloudflare docs).
- GitHub Actions (the build robot) is free for public repositories on standard runners (GitHub docs) — it runs the build and uploads the result on every push.
- Cloudflare D1 (a small database for editable notes and comments) is free up to 5 GB storage, 5M row-reads/day, and 100k row-writes/day (Cloudflare docs) — far above a personal site's traffic.
Why hosting is free at all
- Serving static files is cheap: Cloudflare already runs a worldwide CDN (content delivery network = cache servers near users), so adding your files is near-zero marginal cost.
- The free tier is a funnel — it gets you onto the platform so you might later pay for scale, custom features, or a business plan (the freemium model).
- A static site has no always-on server to rent; there's nothing running between visits to pay for.
The jargon you saw
- tier = a plan level (free / paid). The free tier is the no-cost band with usage quotas.
- config = a settings file that tells a tool how to behave (e.g. next.config.mjs, wrangler.toml).
- wrangler = Cloudflare's command-line tool for deploying and managing Pages, Workers, and D1.
- .mjs = a JavaScript file written as an ES Module (the modern import/export style); the m marks it as a module.
個人サイトを完全無料で運用できる理由 — Cloudflare Pages と GitHub Actions
このサイト(nikinakamura.com)は静的書き出し(=完成済みファイルとして出力したもの)を Cloudflare Pages に置き、main への push(=変更の反映)のたびに GitHub Actions が自動で作り直している。どちらも個人サイトでは使い切れない無料枠があり、運用費は$0のまま。
無料で成り立っている部品
- Cloudflare Pages(=クラウドフレア・ページズ、ホスティング=サイトを世界に公開する置き場)が静的ファイルをCloudflareの世界中のネットワークから配信する。無料プランは月500デプロイ(=公開反映)まで(Cloudflare 公式)。
- GitHub Actions(=ギットハブ・アクションズ、自動作業ロボット)は公開リポジトリ(=誰でも見られるコード置き場)+標準ランナーなら無料(GitHub 公式)——push のたびにビルド(=公開用に組み立てる処理)を実行し結果を送り込む。
- Cloudflare D1(=編集可能なノートやコメント用の小さなデータベース)は、保存5GB・読み込み500万行/日・書き込み10万行/日まで無料(Cloudflare 公式)——個人サイトの通信量をはるかに上回る余裕。
そもそも、なぜ公開が無料なのか
- 静的ファイルの配信は安い:Cloudflare はすでに世界規模のCDN(=Content Delivery Network、利用者の近くにファイルを置いて速く届けるキャッシュ用サーバー群)を運用しているので、あなたのファイルを載せる追加コストはほぼゼロ。
- 無料枠は「入口(funnel)」——まず使ってもらい、規模拡大や上位機能・法人プランで後から課金してもらう狙い(フリーミアム=基本無料+一部有料の商売の型)。
- 静的サイトには常時動かすサーバーが要らない——アクセスとアクセスの間に動き続けて課金される対象がそもそも無い。
出てきた専門語の整理
- ティア(tier)=プランの段階(無料/有料)。無料ティアは、使用量の上限つきで費用ゼロの帯。
- config(コンフィグ)=ツールの動き方を指定する設定ファイル(例:next.config.mjs、wrangler.toml)。
- wrangler(ラングラー)=Cloudflareのコマンドライン道具(=文字で命令する操作ツール)。Pages・Workers・D1 の公開や管理に使う。
- .mjs = ES Module(=今どきの import/export というコード部品の出し入れ方式)で書いたJavaScriptファイル。先頭の m が「モジュール(部品)」であることを示す。
Why a personal site runs completely free — Cloudflare Pages + GitHub Actions
This site (nikinakamura.com) is a static export deployed to Cloudflare Pages, rebuilt automatically by GitHub Actions on every push to main. Both have free tiers a personal site never exhausts — so the running cost stays at $0.
The free pieces
- Cloudflare Pages (the host) serves your static files from Cloudflare's global network; the free plan allows 500 deploys per month (Cloudflare docs).
- GitHub Actions (the build robot) is free for public repositories on standard runners (GitHub docs) — it runs the build and uploads the result on every push.
- Cloudflare D1 (a small database for editable notes and comments) is free up to 5 GB storage, 5M row-reads/day, and 100k row-writes/day (Cloudflare docs) — far above a personal site's traffic.
Why hosting is free at all
- Serving static files is cheap: Cloudflare already runs a worldwide CDN (content delivery network = cache servers near users), so adding your files is near-zero marginal cost.
- The free tier is a funnel — it gets you onto the platform so you might later pay for scale, custom features, or a business plan (the freemium model).
- A static site has no always-on server to rent; there's nothing running between visits to pay for.
The jargon you saw
- tier = a plan level (free / paid). The free tier is the no-cost band with usage quotas.
- config = a settings file that tells a tool how to behave (e.g. next.config.mjs, wrangler.toml).
- wrangler = Cloudflare's command-line tool for deploying and managing Pages, Workers, and D1.
- .mjs = a JavaScript file written as an ES Module (the modern import/export style); the m marks it as a module.
個人サイトを完全無料で運用できる理由 — Cloudflare Pages と GitHub Actions
このサイト(nikinakamura.com)は静的書き出し(=完成済みファイルとして出力したもの)を Cloudflare Pages に置き、main への push(=変更の反映)のたびに GitHub Actions が自動で作り直している。どちらも個人サイトでは使い切れない無料枠があり、運用費は$0のまま。
無料で成り立っている部品
- Cloudflare Pages(=クラウドフレア・ページズ、ホスティング=サイトを世界に公開する置き場)が静的ファイルをCloudflareの世界中のネットワークから配信する。無料プランは月500デプロイ(=公開反映)まで(Cloudflare 公式)。
- GitHub Actions(=ギットハブ・アクションズ、自動作業ロボット)は公開リポジトリ(=誰でも見られるコード置き場)+標準ランナーなら無料(GitHub 公式)——push のたびにビルド(=公開用に組み立てる処理)を実行し結果を送り込む。
- Cloudflare D1(=編集可能なノートやコメント用の小さなデータベース)は、保存5GB・読み込み500万行/日・書き込み10万行/日まで無料(Cloudflare 公式)——個人サイトの通信量をはるかに上回る余裕。
そもそも、なぜ公開が無料なのか
- 静的ファイルの配信は安い:Cloudflare はすでに世界規模のCDN(=Content Delivery Network、利用者の近くにファイルを置いて速く届けるキャッシュ用サーバー群)を運用しているので、あなたのファイルを載せる追加コストはほぼゼロ。
- 無料枠は「入口(funnel)」——まず使ってもらい、規模拡大や上位機能・法人プランで後から課金してもらう狙い(フリーミアム=基本無料+一部有料の商売の型)。
- 静的サイトには常時動かすサーバーが要らない——アクセスとアクセスの間に動き続けて課金される対象がそもそも無い。
出てきた専門語の整理
- ティア(tier)=プランの段階(無料/有料)。無料ティアは、使用量の上限つきで費用ゼロの帯。
- config(コンフィグ)=ツールの動き方を指定する設定ファイル(例:next.config.mjs、wrangler.toml)。
- wrangler(ラングラー)=Cloudflareのコマンドライン道具(=文字で命令する操作ツール)。Pages・Workers・D1 の公開や管理に使う。
- .mjs = ES Module(=今どきの import/export というコード部品の出し入れ方式)で書いたJavaScriptファイル。先頭の m が「モジュール(部品)」であることを示す。
Related notes
- Agentic Commerce — ACP and Visibility into Being 'Bought by AI'
- AI Search Evaluation: The 12 Metrics — Gateway
- AI Search Evaluation ①Citation Rate — How Many URLs Are Pulled In Per Answer
- AI Search Evaluation ②Source Diversity — How Unskewed the Cited Sources Are
- AI Search Evaluation ③Accuracy Score — How Often It Answers Factual Questions Correctly
- AI Search Evaluation ④Answer Length — How Many Characters It Returns to the User on Average