---
title: "$20プランで$132請求された原因｜Vercelのコスト超過はビルド回数だった"
excerpt: "Proプラン$20/月に対し実請求$132.62、超過約$112。内訳を分解すると、Build CPU Minutesが全体の約90%を占めていました。原因は常時起動コストではなく開発の進め方。Ignored Build Stepによる止血、ビルドマシン種別の確認、上限設定の注意点までまとめています。"
author: "AI活編集部"
author_username: ai-katsu-editorial
published_at: 2026-06-02T00:00:00+00:00
verified_at: 2026-06-02T00:00:00+00:00
tools: ["Vercel", "Cloudflare", "GitHub"]
tasks: ["開発・エンジニアリング", "ツール検証"]
canonical_url: https://ai-katsu.jp/articles/vercel-cost-build-management
---
# $20プランで$132請求された原因｜Vercelのコスト超過はビルド回数だった

契約プランは$20/月。しかし実際の請求は**$132.62**——超過分は約$112でした。

この検証では、その原因を特定し、対策を実施しました。**主因はサーバーレス構成の常時起動コストではなく、ビルド回数の多さでした。**

## この検証の概要

| 項目 | 内容 |
| --- | --- |
| 検証時期 | 2026年6月2日〜（対応継続中） |
| 対象 | Vercel（Proプラン $20/月） |
| 問題 | **実請求 $132.62（On-Demand超過 約$112）** |
| 主因 | **Build CPU Minutes が全体の約90%** |
| 対応 | Ignored Build Step で production 以外のビルドを停止 |
| 状況 | 止血対応は完了、運用フロー整備が残課題 |

## 結論：ビルド回数が9割を占めていた

請求の内訳を確認したところ、構造がはっきりしました。

| 項目 | 金額 | 割合 |
| --- | --- | --- |
| **Build CPU Minutes** | **$145.43** | **約90%** |
| Fast Origin Transfer | $2.53 | 少額 |
| Fluid Active CPU | $1.80 | 少額 |

**「サーバーレスだから実行コストが高いのでは」という想定は外れました。**実行時のCPU課金（Fluid Active CPU）は$1.80で、超過分としては軽微です。

膨らんでいたのは**ビルド**でした。

## なぜビルドが積み上がるのか

デフォルトの挙動が原因です。

**GitHub連携では、デフォルトで全ブランチへのpush・PR作成時に自動でデプロイ（ビルド）が実行されます。**

つまり、こうなります。

-   featureブランチにpushするたびにビルド
-   PRを作るたびにビルド
-   **mainへの細かいマージが多いほど、そのたびに本番ビルドが走る**

この検証では、**featureブランチ運用が確立されておらず、mainへの細かいPR・マージが多い**状態でした。開発の進め方が、そのまま課金に反映されていたことになります。

## 対処①：production以外のビルドを止める

最も効果の大きい対応です。

**Ignored Build Stepを「Only build production」に設定**しました。

```
if [[ "$VERCEL_ENV" == "production" ]]; then exit 1; else exit 0; fi
```

これにより、featureブランチや未割り当てブランチへのpush/PRではビルドが走らなくなります。

ここで押さえるべき仕様の違いがあります。

**キャンセルされたビルドはデプロイメントクォータにカウントされますが、スキップ（ビルド未実行）はCPU消費が発生しません。**

組み込みのオプションによるスキップと、bashコマンドでキャンセルする方式は**仕組みが違います。**コスト削減が目的なら、スキップさせる必要があります。

## 対処②：ビルドマシンの種別を確認する

もう1つの大きなコスト要因です。

| マシン種別 | 単価 |
| --- | --- |
| Turbo（固定） | $0.126/分 |
| **Elastic（自動スケール）** | **$0.0035/CPU分から** |

**多くのプロジェクトでコストが半減以上します。**

新規チームではElastic Build Machinesがデフォルトですが、**以前から使っているプロジェクトはTurbo固定のままになっている可能性があります。**確認する価値のある設定です。

## 止血だけでなく上限を設ける

この検証で最も重要な指摘かもしれません。

**Spend Managementを設定しない限り、On-Demand超過は上限なく課金され続けます。**

対策として、50%/75%/100%での通知と、上限到達時にproductionを自動停止する設定が可能です。新規Proチームは$200がデフォルト予算になっています。

ただし注意点があります。

**チェックは数分ごとのため、上限到達後も数分は課金が継続しうる。絶対上限より低い値を設定するのが安全です。**

**「上限を設定したから絶対に超えない」ではありません。**余裕を持った値にしておく必要があります。

## その他のコスト削減策

-   **`vercel.json` でブランチ単位制御** — `git.deploymentEnabled` でパターン指定のデプロイ無効化
-   **Turborepo Remote Cache** — モノレポなら**追加費用ゼロでビルド時間を最大85%削減**（全プラン無料）
-   **On-Demand Concurrent Buildsを「1ブランチ1ビルド」に制限** — 並行ビルドの無駄を抑制
-   **Active CPU課金の理解** — I/O待ち中は課金されないため、Cache-ControlやISRの設定でActive CPU消費を削減できる

Remote Cacheは全プラン無料です。**モノレポ構成なら、設定するだけで効果が出ます。**

## 他プラットフォームとのコスト比較

| プラットフォーム | ビルド | 帯域 | 備考 |
| --- | --- | --- | --- |
| Vercel | $0.0035/CPU分〜（Elastic） | $0.15/GB（超過） | **Next.js最適化が最強、コストは高め** |
| **Cloudflare Pages** | 月500ビルド（無料）、実質無制限に近い | **Egress無料** | **コスト最安、帯域課金なし** |
| Netlify | 100分/月（無料） | 100GB/月（無料） | 2025年に無料枠を300分→100分へ削減 |
| Render | 月500ビルド分（無料） | 100GB/月（無料） | フルスタック対応、Next.js最適化は弱い |

判断の軸は明確です。

**Next.js以外（Astro等）なら、Cloudflare Pagesへの移行でビルド・帯域コストをほぼゼロに近づけられます。**

逆にNext.jsを使うなら、統合・DX・Preview体験の価値とコストを天秤にかけることになります。

## トレードオフ

ビルドを止めることには代償があります。

**featureブランチ単位のPreview URLが発行されなくなります。**動作確認はdevelop/mainマージ後に行う運用へ変わります。

この検証では、**現状Preview確認が運用に組み込まれていないため実害なし**と判断しました。

**使っていない機能のためにコストを払っていた**——という構造です。設定を見直す前に、実際に使っているかを確認する価値があります。

## 対応ロードマップ

| 優先度 | 内容 | 状態 |
| --- | --- | --- |
| 高 | Ignored Build Stepを「Only build production」に設定 | **完了** |
| 高 | mainへの直接プッシュ防止 | **完了** |
| 中 | Spend Limitをハードリミットに変更 | 今後 |
| 低 | featureブランチ運用へ移行（作業者 → feature/\* → develop → main） | ゆくゆく |

**止血（ビルド停止）を先に、体質改善（運用フロー）を後に**という順番です。課金は待ってくれないため、この順序が現実的です。

## よくある質問

### なぜ請求が膨らんだのですか？

**ビルド回数の多さが主因です。**Build CPU Minutesが全体の約90%を占めていました。実行時のCPU課金は$1.80と軽微でした。

### すぐにできる対策は？

**Ignored Build Stepを「Only build production」に設定してください。**featureブランチやPRでのビルドが走らなくなります。あわせて、ビルドマシンがTurbo固定になっていないか確認すると効果が大きくなります。

### 上限を設定すれば安心ですか？

**チェックが数分ごとのため、上限到達後も数分は課金が継続しうる点に注意してください。**絶対上限より低い値を設定するのが安全です。

### 他プラットフォームへの移行は有効ですか？

**Next.js以外を使っているなら有効です。**Cloudflare Pagesならビルド・帯域コストをほぼゼロに近づけられます。Next.jsを使う場合は、統合とDXの価値との比較になります。

## まとめ

-   超過の主因は**常時起動コストではなくビルド回数**。Build CPU Minutesが約90%
-   デフォルトでは**全ブランチへのpush・PRでビルドが走る**
-   **Ignored Build Stepで production 以外をスキップ**する。キャンセルとスキップは仕組みが違う
-   **Turbo固定とElasticでは単価が大きく違う**（$0.126/分 vs $0.0035/CPU分〜）
-   **上限設定がなければ超過は無制限に続く。**ただし到達後も数分は課金されうる
-   モノレポなら**Remote Cacheが無料でビルド時間を最大85%削減**
-   **使っていない機能（Preview URL）のためにコストを払っていないか**を確認する

クラウドサービスのコストは、機能の使い方ではなく開発の進め方に反映されます。請求内訳を分解すると、どの習慣が効いているかが見えてきます。

株式会社AI棒では、こうしたAI活用の検証を日々行い、企業の開発体制とインフラ運用を支援しています。ご相談は[お問い合わせフォーム](/contact)から、継続的な伴走支援については[AI参謀](/ai-sanbo)をご覧ください。
