Skip to content

Container Registry billing and metering

Container registry usage is metered on two dimensions: stored image data and data transfer for push and pull operations. Understanding both helps you estimate cost and design retention policies.

Storage metering

Registry storage is metered per namespace based on total stored size (gigabytes). Usage records are updated periodically from the regional registry backend and billed as gigabyte-hours across your namespaces.

Namespace and repository management through the API is not separately metered.

What counts toward storage

Stored size includes all artifacts (image manifests and layers) retained in a namespace, regardless of how many tags reference them. Untagged artifacts also consume storage until removed.

Reducing storage costs

ActionEffect
Delete tagsRemoves tag references; underlying artifacts may remain if other tags exist
Run retention policiesAutomatically deletes old tags and optionally untagged artifacts
Delete repositoriesRemoves the repository and all tags and artifacts
Delete namespaceEnds usage metering for that namespace; storage cleaned up asynchronously

See Namespace configuration for retention policy setup.

Data transfer metering

Pull and push operations are metered per GB of data transferred. Transfer charges apply to image layer uploads (push) and downloads (pull) through the regional registry endpoint.

Cost optimisation tips

  • Configure retention policies to automatically prune old tags and untagged artifacts
  • Delete unused repositories when images are no longer needed
  • Use digest pinning in production but clean up superseded tags after rollout
  • Delete namespaces you no longer use to stop storage metering immediately

Related documentation