fshy

Home / GitLab

GitLab Container Registry (gitlab.com)

registry.gitlab.comRegistrystorage/gitlab-container-registryJSONcomparereport an errorprovider JSON

Free allowance
Not counted against any storage quota.
Verdict
★ qualifiesusable as stated; the read path was probed
Cost
free tier
Identity
anonymousno card, no phone
Binding limit
noneno named constraint binds
Evidence
reported4 sources; a third party said so
Freshness
stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
Free tierNot counted against any storage quota. GitLab docs: 'Only the project's repository and LFS are included in the storage limit. The container registry, package registry, and build artifacts are not included in the limit.' The 10 GiB Free limit therefore does not apply to OCI blobs.
unit GiB; metered on stored-bytes
Pricenone stated
Identityanonymous not published
EgressNo egress charge is published for gitlab.com registry pulls; anonymous pulls are served without auth beyond a JWT. Effectively unmetered for anonymous public projects.
Per-object capnot stated
Retentionnot stated
Interfaceoci, rclone part of the text of Free tier, above
ToolingORAS / docker / skopeo / crane all work against registry.gitlab.com; rclone has no OCI backend but 'oras cp' + rclone covers push/pull. Public projects allow anonymous pull tokens.
Composes withUnlimited projects per namespace x unlimited namespaces/accounts x 5 GB per layer (generic package max file is 5 GB; container layers see the same class of limit). Since blobs are outside the 10 GiB project quota, a single free account can host arbitrarily many OCI layers. Compare GHCR (already known) — the differentiator here is the explicit quota exemption, not the registry itself.
ReliabilityStorage is reported under 'reduce container registry storage' but no hard cap or eviction is documented on Free; the risk is administrative cleanup of dormant projects rather than quota enforcement.
Evidence 4
datesourcewhat it proved
2026-10-21docs.gitlab.com/user/storage_usage_quotas/part of the text of Free tier, above
2026-10-21about.gitlab.com/pricing/'Purchased storage applies to Git repository size and LFS usage. It does not apply to other storage types, such as the container registry.'
2026-10-21gitlab.com/jwt/auth?service=container_registry&scope=repositprobe: GET -> {"token":"eyJ..."} anonymous pull token issued with no credentials
2026-10-21registry.gitlab.com/v2/gitlab-org/gitlab-runner/manifests/laprobe: GET (Bearer token) -> 200, Content-Type: application/vnd.oci.image.index.v1+json, docker-content-digest: sha256:f1c76f91... (real OCI manifest served anonymously)
Unknown values 6
  • $.binding_note boilerplate
  • $.identity_cost.detail boilerplate
  • $.per_object_cap.notes the field may be stated in a source that was not read
  • $.per_object_cap.stated the field may be stated in a source that was not read
  • $.retention.notes the field may be stated in a source that was not read
  • $.retention.stated the field may be stated in a source that was not read