Skip to content

Connect GitHub to Xplorr: Actions, Packages and Copilot Spend

GitHub is the bill engineering teams feel and nobody watches. It is not on your cloud invoice, and on a plan with an included allowance it fails loudly only once the allowance is gone: CI stops, and the invoice still reads zero.

Xplorr reads your organization’s billing usage and shows where it goes, by product, by SKU and by repository.

  • A GitHub organization (not a personal account)
  • Permission to read that organization’s billing
  • Any Xplorr plan. GitHub is available on Starter, unlike the AI and SaaS cost sources
  1. In Xplorr, go to Cost Sources and find GitHub under Developer platforms.
  2. Enter your organization login, the name as it appears in your GitHub URL. For github.com/acme that is acme.
  3. Paste a token that can read organization billing.
  4. Select Test connection. Xplorr calls the billing endpoint straight away, so a token without the right permission fails here rather than silently collecting nothing overnight.
  5. Save. The first sync runs on the next scheduled cycle.

Runner cost is not uniform, and this is the single most useful thing the connector surfaces:

RunnerRate per minute
Linux$0.0060
Windows$0.0100
macOS$0.0620

A macOS minute costs roughly ten times a Linux one. A single macOS entry in a build matrix is how an Actions bill triples, and no GitHub view puts those rates side by side.

Allowance consumed, not only what you were billed

Section titled “Allowance consumed, not only what you were billed”

This is the number that matters on a plan with included minutes.

GitHub bills a gross amount, subtracts your included allowance, and charges the remainder. If the remainder is zero, the invoice is zero, and nothing tells you how close you are:

Actions Linux 4,981 minutes gross $29.89 allowance -$29.89 billed $0.00

That organization had used its entire monthly allowance. Every invoice read zero until CI stopped with a billing error. Xplorr shows the consumed allowance so you can set a budget alert against it.

Every usage line carries its repository, so you can see which repositories are consuming the estate’s minutes rather than only the total.

If your organization uses Copilot, Xplorr records total seats against seats active in the current cycle. Inactive seats are a straightforward saving, in the same way an idle instance is.

  • Personal accounts. The billing endpoint is organization-scoped.
  • Enterprise-level billing. Connect each organization separately.
  • Per-user Actions attribution. GitHub bills Actions per repository, not per person. Copilot is the seat-based product, and that is reported per seat.

“This token cannot read organization billing.” The token is valid but lacks the billing permission. Grant it permission to read organization billing and test again.

“No organization named …” Check the login is the organization’s, not a repository name or your username. For github.com/acme/api the organization is acme.

Connected, but no cost appears. An organization with no billable usage returns no rows, which is a real answer rather than a failure. Confirm on GitHub under Settings → Billing that the period you are looking at has usage.