CI/CD
GitHub Actions料金計算ツール:その利用時間はいくらになるか
下の計算ツールは、GitHub自身のルールでGitHub Actionsの請求額を算出します。すべてのジョブは1分単位に切り上げられ、無料枠はドル建ての金額で、より大きなランナーはサイズごとの価格です。CRACIは同じワークフローを約2倍の速さで実行し、1分あたりの価格も低く、秒単位で課金します。10分のビルドなら費用は約67%少なくなります。
更新日
GitHub Actions料金計算ツール
入力方法は2つです。利用時間がわかっているでは、使用状況レポートからランナーごとの分数を入力します。チームの働き方から見積もるでは、開発者数、プッシュ、実行、ジョブ、ジョブの長さから分数を組み立てます。どちらもGitHubのルールを適用します。各ジョブは1分単位に切り上げ、無料枠はドル建て、より大きなランナーはTeamとEnterprise Cloudのみ、標準ランナーはパブリックリポジトリで無料です。1〜32 vCPUのLinuxジョブは同じサイズでCRACIに移り、それ以外はGitHubホステッドのランナーに残り、無料枠はそちらに適用されます。この試算はコンピューティングのみが対象です。アーティファクト、キャッシュ、パッケージのストレージは別料金で、計算には含めていません。利用時間の確認方法は実際の使用量を確認する方法をご覧ください。
| ランナー | GitHubの分数 | GitHub | CRACI | CRACI(2倍の速さ) | 備考 |
|---|---|---|---|---|---|
| Linux x64, 2 vCPU | 20,000 | $120.00 | $80.00 | $40.00 |
計算ツールの初期値(GitHub Team、プライベートリポジトリ、Linux x64 2 vCPUで月20,000分)では、無料枠適用前のGitHubの支出は$120.00です。プランの無料枠$18.00がそのうち3,000分をカバーするため、請求額は$102.00になります。同じ分数をCRACIで実行すると$80.00で、約22%少なくなります。1分あたりの価格はCRACIのほうが低い一方、CRACIには無料枠がないため、差はこの程度にとどまります。約2倍の速さなら$40.00で、約61%少なくなります。この例ではGitHubに残るものはありません。WindowsやmacOSの行を追加するとGitHubホステッドに残り、無料枠は残った分に適用されます。ジョブの平均時間を入力すると、CRACIの金額は通常さらに下がります。CRACIは1分単位ではなく、ジョブが実行された秒数で課金するためです。
CRACIが答えにならない場合
- 利用量が無料枠に収まる場合や、リポジトリがパブリックで標準ランナーを使っている場合、GitHubの費用はかからず、CRACIで請求額は下がりません。CRACIには無料枠がなく、無料で使える唯一の方法はスタートアッププログラムです。
- 利用時間の大半がmacOSやWindowsの場合、CRACIは現在それらを実行できません。CRACIはLinuxのみで、WindowsとmacOSはロードマップにあります。
- ARM64では、GitHubの定価は4 vCPUでCRACIと同じになり、8 vCPU以上ではCRACIより低くなります。
こうした場合にCRACIを検討する理由は、請求書ではなく、ビルドの記録とエグレスポリシーです。GitHubだけでなくすべてのプロバイダーの価格を比較するには、CIランナーの価格比較をご覧ください。
GitHub Actionsの課金の仕組み
GitHubのすべてのプランには、毎月のActions利用枠が含まれています。GitHub Freeは$12、ProとTeamは$18、Enterprise Cloudは$300で、標準の2コアLinuxランナーでそれぞれ2,000分、3,000分、50,000分に相当します。標準のGitHubホステッドランナーはパブリックリポジトリでは無料で、GitHubはセルフホストランナーに分単位の料金を課しません。無料枠を超えると、プライベートリポジトリではランナーの稼働時間に対して分単位で課金され、価格はランナーのサイズ、OS、アーキテクチャによって異なります。無料のCI時間でカバーされるものとされないものもご覧ください。
2026年11月11日時点で、標準の2コアLinux x64ランナーは1分あたり$0.006です。次の2つのルールにより、請求額は価格から想像するより大きくなります。
- すべてのジョブが1分単位に切り上げられます。10秒のジョブも1分として課金され、短いジョブが10個あるワークフローは少なくとも10分ぶんを支払います。
- より大きなランナーはパブリックリポジトリでも課金されます。TeamとEnterprise Cloudでは、より大きなランナーは独自の高い単価で無料枠を消費するため、無料枠が早く尽きます。
GitHubの言葉では、無料枠は「固定の分数ではなく、金額として表されます」。分数は標準の2コアLinuxランナーで換算した値で、単価の高いランナーほど無料枠を早く使い切ります。GitHubは、Actionsの無料枠の利用が90%と100%に達するとメールで通知します。また予算を設定すれば、従量課金のActions利用を指定した上限で止められます。
GitHub Actionsの1分あたりの料金(全ランナーサイズ)
2026年11月11日時点の、無料枠を超えた場合のGitHubホステッドランナーの1分あたりの価格です。1〜32 vCPUのLinuxランナーは、x64でもARM64でも、CRACIで1vCPU分あたり$0.002で実行できます。CRACIは現在Linuxのみに対応しており、WindowsとmacOSはロードマップに掲載されています。
| 機能 | CRACI | GitHub Linux x64 | GitHub Linux ARM64 |
|---|---|---|---|
| 1 vCPU | $0.002 | $0.002 | - |
| 2 vCPU | $0.004 | $0.006 | $0.005 |
| 4 vCPU | $0.008 | $0.012 | $0.008 |
| 8 vCPU | $0.016 | $0.022 | $0.014 |
| 16 vCPU | $0.032 | $0.042 | $0.026 |
| 32 vCPU | $0.064 | $0.082 | $0.050 |
| 64 vCPU | - | $0.162 | $0.098 |
| 96 vCPU | - | $0.252 | - |
| 機能 | GitHub Windows x64 | GitHub Windows ARM64 |
|---|---|---|
| 2 vCPU | $0.010 | $0.010 |
| 4 vCPU | $0.022 | $0.014 |
| 8 vCPU | $0.042 | $0.026 |
| 16 vCPU | $0.082 | $0.050 |
| 32 vCPU | $0.162 | $0.098 |
| 64 vCPU | $0.322 | $0.194 |
| 96 vCPU | $0.552 | - |
| 機能 | 1分あたりの価格 |
|---|---|
| macOS macos-latest (M1)、3 vCPU | $0.062 |
| macOS xlarge (M2 Pro)、5 vCPU | $0.102 |
| macOS macos-15-intel、4 vCPU | $0.062 |
| macOS large (Intel)、12 vCPU | $0.077 |
| GPU Linux, 1x Tesla T4、4 vCPU | $0.052 |
Linux x64では、2 vCPU以上でCRACIの定価がGitHubより低くなります。ARM64では8 vCPU以上でGitHubの定価のほうが低くなりますが、実際のパイプラインでは秒単位の課金とビルドの高速化によって、その差は縮まるか解消されます。
1分あたりの費用:CRACIとGitHubホステッドの比較
| 機能 | CRACI | GitHubホステッド | 差 |
|---|---|---|---|
| 2 vCPU Linux x64 | $0.004 | $0.006 | CRACIが約33%安い |
| 2 vCPU Linux ARM64 | $0.004 | $0.005 | CRACIが20%安い |
| 32 vCPU Linux x64 | $0.064 | $0.082 | CRACIが約22%安い |
| 計測単位 | 秒単位 | ジョブごとに1分単位へ切り上げ | CRACIは切り上げなし |
標準のLinuxランナーではCRACIの定価のほうが低く、課金も秒単位です。1分あたりの差は2 vCPU x64で約33%ですが、実際のパイプラインでは削減の大部分が切り上げの解消によるものです。ARM64では、GitHubの定価は4 vCPUでCRACIと同じになり、8 vCPU以上ではGitHubのほうが低くなります(8 vCPUで1分あたり$0.014対$0.016)。各プロバイダーの価格はGitHub Actionsランナーの比較をご覧ください。
ビルドが速ければ使う時間も少ない
1分あたりの価格は請求額の半分にすぎません。残りの半分は、ビルドにかかる時間です。CRACIは、より高速なハードウェア、短いキュー待ち時間、キャッシュにより、GitHubホステッドランナーの約2倍の速さでビルドを実行します。GitHubホステッドの2コアランナーで10分かかるビルドはCRACIでは約5分で終わり、支払うのはその5分ぶんだけです。
| 機能 | CRACI | GitHubホステッド | CRACIによる削減 |
|---|---|---|---|
| ビルド時間 | 約5分 | 10分 | 待ち時間は約半分 |
| 1ビルド、2 vCPU x64 | $0.020 | $0.060 | 約67% |
| 1ビルド、2 vCPU ARM64 | $0.020 | $0.050 | 60% |
| 月1,000ビルド、2 vCPU x64 | $20 | $60 | 約67% |
ビルドが速くなれば、請求書には表れないコスト、つまりマージ前にチェックが通るのを待つエンジニアの時間も削減できます。
秒単位の課金が効果を発揮する場面
Lint、型チェック、ユニットテストのシャード、デプロイのステップは、多くの場合1分を大きく下回る時間で終わります。GitHubホステッドランナーでは、それぞれ1分ぶんの費用がかかります。CRACIでは、実行した秒数分だけを支払います。以下の例は、高速化を考慮せず、同じ長さのジョブで比較したものです。
| 機能 | CRACI | GitHubホステッド | CRACIによる削減 |
|---|---|---|---|
| 30秒のジョブ1,000件 | $2.00 | $6.00 | 約67% |
| 70秒のジョブ1,000件 | $4.67 | $12.00 | 約61% |
| 10分のビルド1,000件 | $40.00 | $60.00 | 約33% |
| 10分のビルド1,000件、32 vCPU x64 | $640 | $820 | 約22% |
ジョブが短いほど、秒単位の課金による節約は大きくなります。長いビルドでは、節約は速さから生まれます。10分のビルドで約67%、1分あたりの価格差だけなら約33%です。
GitHub Actionsを何分使っているか:実際の数字を確認する
多くのチームは、自分たちのCIが月に何分のビルド時間を使っているかを答えられません。推測では、プロバイダーを比較する根拠になりません。GitHubはこの数字を4か所に記録しています。それぞれ見えるものが異なり、それぞれに注意点があります。
| 情報源 | 場所 | わかること | 注意点 |
|---|---|---|---|
| 課金の使用状況ページと使用状況レポート | 組織の設定 → Billing and licensing → Usage。Actionsで絞り込むか、使用状況レポート(CSV)をメールで依頼します | 日ごと、SKU(ランナーのOSとサイズ)ごと、リポジトリごとの支出と数量。詳細レポートにはワークフローのパスも含まれます | オーナーと請求マネージャーのみ。表示されるのは支出なので、無料の利用(パブリックリポジトリの標準ランナー、セルフホストランナー、無料枠)は割引として表示されます。総額と正味額を比べてください |
| Actions usage metrics | 組織のInsights → Actions usage metrics。下のフォームから直近30日を開けます | ワークフロー、ジョブ、リポジトリ、ランナーの種類、OSごとの利用時間 | 「View organization Actions metrics」の権限が必要です。GitHubは、このメトリクスでは「分数の乗数が適用されない」としているため、請求額そのものではありません |
| 課金使用状況のREST API | GET /organizations/{org}/settings/billing/usage。year、month、dayは任意 | 集計版の使用状況レポートをスクリプトで取得 | 組織のオーナーと請求マネージャーが利用でき、GitHubの拡張課金プラットフォームを使う組織に限られます。個人アクセストークン(classic)が必要で、fine-grainedトークンには対応していません。ワークフロー単位の詳細はありません |
| ワークフローの実行履歴 | GitHub CLIで実行とジョブの履歴を取得(下のスクリプト) | 各ジョブの開始時刻と終了時刻。切り上げは自分で行います | 照会したリポジトリのみ。わかるのは実行時間で、金額ではありません |
課金ページは請求額を、メトリクスページと実行履歴は時間がどこで使われているかを示します。組織名を入力すると、直近30日のActions usage metricsを開けます。
ワークフローの実行から課金対象の分数を数える
課金情報にアクセスできない場合は、自分で数えられます。このスクリプトはGitHub CLIで、リポジトリの直近30日のワークフロー実行を一覧し、各実行のジョブ(再実行を含む)を取得して、ジョブごとに1分単位へ切り上げ、ランナーのラベルごとに合計します。
# Billed GitHub Actions minutes per runner label, one repository, last 30 days.
# GitHub rounds each job up to the whole minute, so the script does too.
REPO=your-org/your-repo
SINCE=$(date -u -d '30 days ago' +%F) # macOS: date -u -v-30d +%F
gh api --paginate "repos/$REPO/actions/runs?created=>=$SINCE&per_page=100" \
--jq '.workflow_runs[].id' |
while read -r run; do
gh api --paginate "repos/$REPO/actions/runs/$run/jobs?filter=all&per_page=100" \
--jq '.jobs[] | select(.conclusion != "skipped" and .started_at and .completed_at)
| [(.labels | join(",")), ((.completed_at | fromdate) - (.started_at | fromdate))]
| @tsv'
done |
awk -F'\t' '{ jobs[$1]++; secs[$1] += $2; billed[$1] += int(($2 + 59) / 60) }
END { for (l in jobs) printf "%s\t%d jobs\t%d s run\t%d billed min\n", l, jobs[l], secs[l], billed[l] }' 切り上げは合計ではなく、GitHubと同じくジョブごとに行う必要があります。20秒のジョブが10個あるワークフローは、4分ではなく10分として課金されます。ラベルを見れば各ジョブの実行場所がわかります。セルフホストやサードパーティのランナーで動いたジョブと、パブリックリポジトリの標準ランナーで動いたジョブは、GitHubの有料の分数を使わないため、請求額からは除外してください。実行一覧のエンドポイントは日付フィルター1つにつき最大1,000件しか返さないため、実行の多いリポジトリは期間を短く区切ってください。以前は実行ごとのtimingエンドポイントが課金対象時間を返していましたが、GitHubは廃止予定としているため、このスクリプトはジョブのタイムスタンプを読みます。
課金情報にまったくアクセスできない場合は、組織のオーナーか請求マネージャーに使用状況レポートを依頼するか、権限があればActions usage metricsのページを使うか、最も実行の多い3つのリポジトリでスクリプトを実行して全体を推計してください。
お話を伺ったチームの中には、無料枠を使い切ってばかりいるため、CIをノートPCに移し、コーディングエージェントにパイプラインをローカルで実行させているところもあります。分数は節約できますが、ビルドは遅くなり、メモリとスワップを使い果たし、何がビルドされたかを誰も再現も監査もできません。必要なのは、数字を把握し、無駄を削り(請求額を減らす9つの方法を参照)、重いLinuxジョブをより安い分数に移すことです。
分単位の料金には表れないコスト
- 再実行。10回に1回失敗する不安定なテストは、それを含むワークフローの請求額をおよそ10%押し上げ、再実行される各ジョブもまた切り上げられます。
- ハングしたジョブ。
timeout-minutesがないと、停止したジョブはGitHubの上限まで実行され続け、その全時間が課金されます。 - 待たされるエンジニア。遅いパイプラインは開発者の時間を奪い、その価値は通常、ランナーの時間よりはるかに大きくなります。クリティカルパス上のジョブには適切なサイズのランナーを使うか、より高速なランナーで実行してください。
- セルフホストの運用負担。セルフホストランナーは分単位の料金を避けられますが、コストは避けられません。マシンはビルドの合間にアイドル状態になり、誰かがパッチ適用、スケーリング、セキュリティ確保を担う必要があります。マネージドランナーとセルフホストランナーの比較をご覧ください。
請求額を減らす9つの方法
- まず費用のかかるジョブを見つける。使用状況レポート、メトリクスページ、または上のスクリプトで、どのワークフロー、ランナー、リポジトリが最も多くの時間を使っているかを確認し、そこから手を付けます。
- 不要になった実行をキャンセルする。
concurrencyグループにcancel-in-progressを設定すれば、同じブランチに新しいコミットが届いたときに古いコミットの実行を停止できます。 - 関係のない処理をスキップする。
pathsフィルターを使えば、ドキュメントの変更でテストスイート全体が実行されるのを防げます。 - 依存関係をキャッシュする。キャッシュからパッケージを復元するほうが、実行のたびにダウンロードするより高速です。 GitHub Actionsのキャッシュの仕組みもご覧ください。
- タイムアウトを設定する。各ジョブに
timeout-minutesを設定すれば、ハングしたジョブがデフォルトの上限まで時間を消費し続けるのを防げます。 - 小さなジョブをまとめる。1分単位の切り上げでは、10秒のジョブ3つには3分ぶんの費用がかかりますが、3つをまとめた1つのジョブなら1分ぶんで済みます。
- ランナーのサイズを最適化する。より大きなランナーは1分あたりの価格が高くなりますが、はるかに早く終われば1ビルドあたりの費用は低くなることがあります。両方を測定してください。
- 安い場合はARM64を使う。GitHubでは、2コアのARM64ランナーの定価はx64より低く設定されています。
- より速く安いランナーに移行する。CRACIはビルドを約2倍の速さで実行し、標準のLinuxランナーではより低い定価を掲げ、秒単位で課金します。ワークフローの変更は
runs-onだけです。
CRACIへの切り替え
CRACIが置き換えるのはランナーであり、GitHub Actionsではありません。CRACI GitHub Appをインストールし、runs-onをcraciに変更すれば、ワークフロー、アクション、ログはGitHubに残したまま、ジョブがCRACIで実行されます。サイズは1〜32 vCPUで、cracicorp/setupアクションで設定します。まず1つのワークフローを移行し、ビルド時間と請求額を比較してください。キャッシュ、OIDC、フォールバックについては、ランナープロバイダーの切り替え方をご覧ください。
CRACIの課金はビルド時間のみです。1vCPU分あたり$0.002(デフォルトの2 vCPUランナーでは$0.004)、秒単位の従量課金で、月額料金もSBOMごとの課金もありません。スタートアップは、スタートアッププログラムを通じて少なくとも100,000分の無料ビルド時間を利用できます。料金をご覧ください。
同じランナーが、各ジョブが取得したもののSBOMを記録し、エグレスポリシーを適用し、来歴データを記録します。より速く安いビルドに、何が組み込まれたかの記録が付いてきます。CRACIとGitHubホステッドランナーの比較をご覧ください。
GitHub Actionsの料金に関するよくあるご質問
GitHub Actionsの料金はいくらですか?
すべてのプランには、毎月のActions利用枠がドル建ての金額で含まれています。GitHub Freeは$12、ProとTeamは$18、Enterprise Cloudは$300で、標準の2コアLinuxランナーでそれぞれ2,000分、3,000分、50,000分に相当します。それを超えると、2026年11月11日時点で標準の2コアLinux x64ランナーは1分あたり$0.006で、より大きなランナーはさらに高くなります。
GitHub Actionsの1分あたりの料金はいくらですか?
2026年11月11日時点で、標準の2コアLinuxランナーは1分あたりx64で$0.006、ARM64で$0.005です。Windowsは2コアで$0.010、macOSは$0.062からです。より大きなランナーはサイズに応じて高くなり、96コアのLinux x64では1分あたり$0.252です。GitHubは各ジョブを1分単位に切り上げます。
CRACIはGitHubホステッドランナーより安いですか?
標準のLinuxランナーでは安くなります。CRACIの定価は2 vCPUで1分あたり$0.004(1vCPU分あたり$0.002)で、2コアx64のGitHubの$0.006より約33%低く、秒単位で課金し、ビルドを約2倍の速さで実行するため、各ビルドで使う時間も少なくなります。GitHubホステッドの2コアランナーで10分かかるビルドは、CRACIでは費用が約67%少なく、つまり3分の1の価格になります。
CRACIがGitHubホステッドランナーより速いのはなぜですか?
より高速なハードウェア、ジョブ開始前の短いキュー待ち時間、そしてキャッシュの3つの組み合わせです。CRACIはGitHubホステッドランナーの約2倍の速さでビルドを実行します。
GitHubはActionsの時間を切り上げますか?
はい。GitHubは各ジョブを1分単位に切り上げるため、10秒しか実行されないジョブも1分として課金されます。短いジョブが多いパイプラインほど、切り上げによる負担が大きくなります。
無料枠はより大きなランナーにも適用されますか?
GitHub TeamとEnterprise Cloudでは適用されます。より大きなランナーは、標準ランナーと同じ無料枠を独自の1分あたりの単価で消費します。より大きなランナーはFreeとProでは利用できず、パブリックリポジトリでも無料ではありません。
GitHub Actionsはパブリックリポジトリでは無料ですか?
標準ランナーであれば無料です。GitHubは、標準のGitHubホステッドランナーはパブリックリポジトリでは無料であると明記しています。
セルフホストランナーは無料ですか?
GitHubはセルフホストランナーに分単位の料金を課しませんが、アイドル状態のものも含めてマシンの費用がかかり、そのOS、ソフトウェア、セキュリティの責任も自社で負います。GitHubは、パブリックリポジトリでのセルフホストランナーの使用はほぼ避けるべきだと警告しています。
ジョブをCRACIに移行するにはどうすればよいですか?
CRACI GitHub Appをインストールし、ジョブのruns-onをcraciに変更します。ワークフロー、アクション、ログはGitHubに残ります。ランナーのサイズは、cracicorp/setupアクションで1〜32 vCPUから選択できます。
GitHub Actionsは何分必要ですか?
推測せずに数えてください。使用状況レポートには、ランナーごとに使った分数が表示されます。課金情報にアクセスできない場合は、GitHub CLIでリポジトリのワークフロー実行とジョブを一覧し、GitHubと同じく各ジョブを1分単位に切り上げます。短いジョブは数字を膨らませます。20秒のジョブ10個は10分として課金されます。その数字をこのページの計算ツールに入力してください。
GitHub Actionsの使用状況はどこで確認できますか?
4か所です。組織の設定のBilling and licensingにあるUsageページ(使用状況レポートをダウンロード可能、オーナーと請求マネージャー向け)。組織のInsightsにあるActions usage metrics(ワークフロー、ジョブ、リポジトリ、ランナーごと、分数の乗数は適用されません)。スクリプト向けの課金使用状況REST API。そしてGitHub CLIで取得するワークフロー実行履歴で、各ジョブの実行時間を自分で切り上げて使います。
無料枠を使い切るとどうなりますか?
有効な支払い方法が登録されていない場合、無料枠を使い切った時点でGitHubはActionsの利用をブロックします。支払い方法がある場合、追加の利用はその支払い方法に請求され、予算を設定すれば指定した上限でActionsの利用を止められます。より大きなランナーには常に有効な支払い方法が必要です。無料枠の利用が90%と100%に達すると、GitHubからメールで通知されます。
サードパーティのランナーでもGitHubは分単位で課金しますか?
分単位の課金はありません。サードパーティのランナープロバイダーはセルフホストランナーとしてGitHubに接続し、GitHubはセルフホストランナーでのActions利用は無料としています。プランの料金と、含まれる分を超えたストレージの料金は引き続きGitHubに支払い、ランナーの分数はランナープロバイダーに支払います。