GitHub Billing


Googlers’ use of GitHub is generally restricted to open source projects, which means at some point all projects should be publicly available. There are legitimate uses for private repositories, such as timing the release of a new project with a particular announcement, however GitHub charges for having private repositories.

Historically, the Open Source Programs Office has paid for whatever private repositories that teams needed and managed billing centrally. However, in May 2016 GitHub changed the way that they charge for private repositories which, in the worst case, would increase our bill by two orders of magnitude. As a result, we were forced to change how we handle private repositories on GitHub.

Existing organizations that are grandfathered into the older per-repository pricing model will remain unchanged. OSPO will continue paying for these organizations for the foreseeable future.

All other organizations, which includes newly created orgs as well as existing orgs that did not previously have billing enabled, will have one of three options:

  1. Don’t use private repositories on GitHub at all, instead use something like go/gob. This still allows collaboration with external partners and vendors, is much more secure and reliable, and provides more robust code review.

  2. Host private repos in our dedicated googleprivate organization. When the repo is ready to be made public, we will transfer it to the proper organization with all issues and pull requests kept intact.

  3. Enable per-user billing in your organization with your corporate card. OSPO would continue to maintain compliance and security oversight of the org, the product team would just take care of the billing. Note that this can get very expensive very quickly depending on the number of people in the organization (which will still include the two OSPO-managed accounts required by go/github-org-owners).

Except as otherwise noted, the content of this page is licensed under CC-BY-4.0 license. Third-party product names and logos may be the trademarks of their respective owners.