Storage
DETAILS: Tier: Free, Premium, Ultimate Offering: SaaS
All projects on GitLab SaaS have 10 GiB of free storage for their Git repository and Large File Storage (LFS).
When a project's repository and LFS exceed 10 GiB, the project is set to a read-only state. You cannot push changes to a read-only project. To increase storage of the project's repository and LFS to more than 10 GiB, you must purchase more storage.
GitLab plans to introduce storage limits for namespaces on GitLab SaaS. After these storage limits have been applied, storage usage will be calculated across the entire namespace and project storage limits will no longer apply.
View storage
DETAILS: Tier: Free, Premium, Ultimate Offering: SaaS, self-managed
You can view the following statistics for storage usage in projects and namespaces:
- Storage usage that exceeds the GitLab SaaS storage limit or self-managed storage limits.
- Available purchased storage for GitLab SaaS.
Prerequisites:
- To view storage usage for a project, you must have at least the Maintainer role for the project or Owner role for the namespace.
- To view storage usage for a group namespace, you must have the Owner role for the namespace.
To view storage:
- On the left sidebar, select Search or go to and find your project or group.
- Select Settings > Usage Quotas.
- Select the Storage tab to see namespace storage usage.
- To view storage usage for a project, in the table at the bottom, select a project. Storage usage is updated every 90 minutes.
If your namespace shows 'Not applicable.'
, push a commit to any project in the
namespace to recalculate the storage.
Storage and network usage is calculated with the binary measurement system (1024 unit multiples). Storage usage is displayed in kibibytes (KiB), mebibytes (MiB), or gibibytes (GiB). 1 KiB is 2^10 bytes (1024 bytes), 1 MiB is 2^20 bytes (1024 kibibytes), and 1 GiB is 2^30 bytes (1024 mebibytes).
NOTE:
Storage usage labels are being transitioned from KB
to KiB
, MB
to MiB
, and GB
to GiB
. During this transition,
you might see references to KB
, MB
, and GB
in the UI and documentation.
View project fork storage usage
A cost factor is applied to the storage consumed by project forks so that forks consume less namespace storage than their actual size.
To view the amount of namespace storage the fork has used:
- On the left sidebar, select Search or go to and find your project or group.
- Select Settings > Usage Quotas.
- Select the Storage tab. The Total column displays the amount of namespace storage used by the fork as a portion of the actual size of the fork on disk.
The cost factor applies to the project repository, LFS objects, job artifacts, packages, snippets, and the wiki.
The cost factor does not apply to private forks in namespaces on the Free plan.
Excess storage usage
Excess storage usage is the amount that exceeds the 10 GiB free storage of a project's repository and LFS. If no purchased storage is available, the project is set to a read-only state. You cannot push changes to a read-only project.
To remove the read-only state, you must purchase more storage for the namespace. After the purchase has completed, the read-only state is removed and projects are automatically restored. The amount of available purchased storage must always be greater than zero.
The Storage tab of the Usage Quotas page displays the following:
- Purchased storage available is running low.
- Projects that are at risk of becoming read-only if purchased storage available is zero.
- Projects that are read-only because purchased storage available is zero. Read-only projects are marked with an information icon ({information-o}) beside their name.
Excess storage example
The following example describes an excess storage scenario for projects in a namespace:
Repository | Storage used | Excess storage | Quota | Status |
---|---|---|---|---|
Red | 10 GiB | 0 GiB | 10 GiB | Read-only {lock} |
Blue | 8 GiB | 0 GiB | 10 GiB | Not read-only |
Green | 10 GiB | 0 GiB | 10 GiB | Read-only {lock} |
Yellow | 2 GiB | 0 GiB | 10 GiB | Not read-only |
Totals | 30 GiB | 0 GiB | - | - |
The Red and Green projects are read-only because their repositories and LFS have reached the quota. In this example, no additional storage has yet been purchased.
To remove the read-only state from the Red and Green projects, 50 GiB additional storage is purchased.
Assuming the Green and Red projects' repositories and LFS grow past the 10 GiB quota, the purchased storage available decreases. All projects no longer have the read-only status because 40 GiB purchased storage is available: 50 GiB (purchased storage) - 10 GiB (total excess storage used).
Repository | Storage used | Excess storage | Quota | Status |
---|---|---|---|---|
Red | 15 GiB | 5 GiB | 10 GiB | Not read-only |
Blue | 14 GiB | 4 GiB | 10 GiB | Not read-only |
Green | 11 GiB | 1 GiB | 10 GiB | Not read-only |
Yellow | 5 GiB | 0 GiB | 10 GiB | Not read-only |
Totals | 45 GiB | 10 GiB | - | - |
Namespace storage limit
GitLab plans to introduce the following storage limits per top-level group:
Subscription tier | Storage limit |
---|---|
Free | 5 GiB |
Premium | 50 GiB |
Ultimate | 250 GiB 1 |
- Applies to GitLab Trial, GitLab for Open Source, GitLab for Education, and GitLab for Startups.
If you have a multi-year contract for GitLab Premium or Ultimate, storage limits will not apply until your first renewal after GitLab introduces the namespace storage limits.
Any additional storage you purchase before the introduction of namespace storage limits, including additional storage purchased due to project storage limits, will apply to the top-level group.
Namespaces have a 10 GiB project limit with a soft limit on namespace storage. After GitLab applies namespace storage limits, soft limits will become hard limits and your namespace will be read-only.
To prevent your namespace from becoming read-only:
- Manage your storage usage.
- Purchase more storage.
- If you are eligible, apply for a community program subscription:
- GitLab for Education
- GitLab for Open Source
- GitLab for Startups
- If you have GitLab Free, start a trial or upgrade to GitLab Premium or Ultimate, which has higher storage limits and more features.
- Consider a self-managed subscription, which does not have storage limits.
- Talk to an expert for more information about your options.
Storage types in namespace storage usage
Storage types that count toward the total namespace storage are:
- Git repository
- Git LFS
- Job artifacts
- Container registry
- Package registry
- Dependency proxy
- Wiki
- Snippets
Excess storage notifications
Storage limits are included in GitLab subscription terms but do not apply. At least 60 days before GitLab introduces storage limits, GitLab will notify you of namespaces that exceed, or are close to exceeding, the storage limit.
- In the command-line interface, a notification displays after each
git push
action when your namespace has reached between 95% and 100% of your namespace storage quota. - In the GitLab UI, a notification displays when your namespace has reached between 75% and 100% of your namespace storage quota.
- GitLab sends an email to members with the Owner role to notify them when namespace storage usage is at 70%, 85%, 95%, and 100%.
Manage storage usage
To manage your storage, if you are a namespace Owner, you can purchase more storage for the namespace.
Depending on your role, you can also use the following methods to manage or reduce your storage:
- Reduce package registry storage.
- Reduce dependency proxy storage.
- Reduce repository size.
- Reduce container registry storage.
- Reduce wiki repository size.
- Manage artifact expiration period.
- Reduce build artifact storage.
To automate storage usage analysis and management, see storage management automation.