Per-SKU cost, instead of a raw minutes count
CostMon reads GitHub's billing usage API daily, broken down by product and SKU. Because SKUs encode runner OS and size, what those minutes cost is visible instead of a bare tally of minutes used.
GitHub cost monitoring
CostMon reads GitHub's billing usage API each day. It splits usage by product and runner SKU. A CI matrix that burns minutes on pricier macOS and Windows runners shows in days. So does a Copilot AI-credit spike. You do not wait for next month's invoice.
A GitHub-hosted runner minute has no single price. Each runner OS and size has its own per-minute list price. macOS costs about 10x the Linux rate. Windows costs about 1.7x (as of 2026-07-29). Included minutes drain in proportion to that price. A CI matrix can look fine in wall-clock minutes and still use a whole plan allowance early. Nobody sees it until metered overage starts. Larger runners always bill per minute. Copilot now bills seats plus metered AI credits. A team that uses agentic Copilot features more can pass its flat per-seat budget. A raw minutes count hides all of this. Only the per-SKU usage in GitHub's billing API shows it.
Cost anatomy
Alerts
CostMon's default rule watches every service on your account from the day you connect it. An alert always shows up in your CostMon feed. Add an email, Slack, or webhook channel to send it somewhere else too.
A CI matrix leaning on macOS or Windows runners, draining the plan's included minutes in days.
A monthly budget on total GitHub spend catches Copilot's metered AI-credit use growing alongside seats.
Sample alert, illustrative
Anomaly: github / Actions spend spike github / Actions was $160.00 on 2026-08-05 — 78% above its 14-day average of $90.00. Severity: warning Occurred on: 2026-08-05
To find what to cut, the recommendations list flags idle spend and commitment gaps to review.
Why CostMon
CostMon reads GitHub's billing usage API daily, broken down by product and SKU. Because SKUs encode runner OS and size, what those minutes cost is visible instead of a bare tally of minutes used.
A daily, per-SKU view shows a CI matrix leaning on the pricier macOS and Windows runners. You see the allowance draining in the first week of the month.
CI minutes and Copilot seats rarely reach the same budget review as cloud spend. In CostMon they share a chart with AWS and GCP, so tooling spend gets the same scrutiny.
CostMon connects with a token scoped to read-only billing/administration access only. It never touches your repositories, code, or Actions workflows themselves.
Getting started
Add a fine-grained personal access token with Administration: read for an organization, or a classic token with admin:enterprise for enterprise-wide billing. CostMon never touches your repositories, code, or workflow contents.
CostMon queries GitHub's billing usage API month by month. It groups the result by date, product and SKU. GitHub spend then uses the record format that every other source uses.
Open a daily view of Actions and Copilot spend by SKU. A matrix that leans on macOS runners lifts the Actions line, and a rule fires.
FAQ
Through a fine-grained personal access token scoped to Administration: read for an organization, or a classic token with admin:enterprise for enterprise-wide billing. CostMon only reads billing usage, never your code, issues, or workflow contents.
Yes. GitHub's billing API reports usage for each date, product and SKU. A SKU names the runner OS and size. You see Linux, Windows and macOS minutes apart instead of one blended Actions total.
Yes, as far as GitHub reports it. Copilot is one of the products in GitHub's billing usage API. CostMon syncs whatever that API returns for Copilot. It sits next to Actions spend in the same daily view.
GitHub's billing API returns usage at the organization or enterprise level. CostMon stores it at that date, product, and SKU grain, rather than per repository or per workflow.
A flat monthly rate per plan. CostMon never takes a percentage of your GitHub spend or the savings it helps you find. Free includes 2 connectors; Professional and Enterprise include unlimited connectors.
Connectors
AWS, GCP, and Azure for cloud. Anthropic, OpenAI, Amazon Bedrock, Vertex AI / Gemini, and Helicone for AI and LLM spend. Snowflake and Databricks for the data cloud. Datadog, GitHub, and Vercel for the rest of the stack. Add CSV import for any tool without a native connector. That's 14 connectors, all normalized into the same unified view.
Connect a provider and CostMon builds a daily baseline for it. From there, a spike reaches your team as an alert.