GitHub Packages - public packages (npm/Maven/NuGet/RubyGems)
Sibling records disagree:
- verdict:
storage/github-packagessays fails-egress, storage/github-packages-public-packages says qualifies-with-caveat - verdict:
storage/github-packages-maven-registrysays fails-quota, storage/github-packages-public-packages says qualifies-with-caveat - verdict:
storage/github-packages-npm-registrysays fails-quota, storage/github-packages-public-packages says qualifies-with-caveat - verdict:
storage/github-packages-public-packagessays qualifies-with-caveat, storage/github-packages-rubygems-registry says fails-quota
- Free allowance
- Unlimited for PUBLIC packages: 'GitHub Packages usage is free for public packages.
- Verdict
- caveatusable, with a named limit or an unprobed read path
- Cost
- free tier
- Identity
- email?placeholder, not evidence; card unknown, phone unknown
- Binding limit
- noneno named constraint binds
- Evidence
- reported2 sources; a third party said so
- Freshness
- stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
| Free tier | Unlimited for PUBLIC packages: 'GitHub Packages usage is free for public packages. In addition, data transferred in from any source is free.' Private packages consume the shared 500 MB/2 GB/50 GB plan pool. unit GB; metered on unstated |
|---|---|
| Price | none stated |
| Identity | email (placeholder) not published |
| Egress | Free for public packages. Paid only for downloads from private packages. |
| Per-object cap | not stated |
| Retention | not stated |
| Interface | rest rest |
| Tooling | npm/mvn/nuget/gem clients directly; standard package-manager tooling, no wrapper needed. (GHCR is the container variant and is on the known-list, so this entry is about the non-container registries.) |
| Composes with | Unlimited public packages x unlimited versions, each bounded only by the per-ecosystem file cap. Multiplied by unlimited orgs/accounts. |
| Reliability | Immutable versions; deletion requires explicit action. Package-manager clients are the bottleneck for bulk blobs (chunking needed). |
Evidence 2
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | docs.github.com/en/billing/concepts/product-billing/github-p | part of the text of Free tier, above |
| 2026-10-21 | docs.github.com/en/packages/learn-github-packages/about-gith | same statement repeated in the packages overview |
Unknown values 5
$.binding_noteboilerplate$.per_object_cap.notesthe field may be stated in a source that was not read$.per_object_cap.statedthe field may be stated in a source that was not read$.retention.notesthe field may be stated in a source that was not read$.retention.statedthe field may be stated in a source that was not read