- Set the quota of CI/CD minutes for all namespaces
- Set the quota of CI/CD minutes for a specific namespace
- View CI/CD minutes used by a group
- View CI/CD minutes used by a personal namespace
- Purchase additional CI/CD minutes
- How CI/CD minutes are calculated
- What happens when you exceed the quota
- Reduce consumption of CI/CD minutes
CI/CD minutes quota
Shared runners are shared with every project and group in a GitLab instance. When jobs run on shared runners, CI/CD minutes are used.
You can set limits on the number of CI/CD minutes that are used each month.
- On GitLab.com, the quota of CI/CD minutes is set for each namespace,
and is determined by .
- On self-managed GitLab instances, the quota of CI/CD minutes for each namespace is set by administrators.
In addition to the monthly quota, you can add more CI/CD minutes when needed.
- On GitLab.com, you can purchase additional CI/CD minutes.
- On self-managed GitLab instances, administrators can assign more CI/CD minutes.
Specific runners are not subject to a quota of CI/CD minutes.
Set the quota of CI/CD minutes for all namespaces
By default, GitLab instances do not have a quota of CI/CD minutes.
The default value for the quota is Prerequisite:
To change the default quota that applies to all namespaces:
If a quota is already defined for a specific namespace, this value does not change that quota.
You can override the global value and set a quota of CI/CD minutes
for a specific namespace.
Prerequisite:
To set a quota of CI/CD minutes for a namespace:
You can also use the update group API or the
update user API instead.
You can view the number of CI/CD minutes being used by a group.
Prerequisite:
To view CI/CD minutes being used for your group:
You can view the number of CI/CD minutes being used by a personal namespace:
If you’re using GitLab SaaS, you can purchase additional packs of CI/CD minutes.
These additional CI/CD minutes:
If you use more CI/CD minutes than your monthly quota, when you purchase more,
those CI/CD minutes are deducted from your quota. For example, with a GitLab SaaS
Premium license:
If you use You can find pricing for additional CI/CD minutes on the
.
You can purchase additional CI/CD minutes for your group.
You cannot transfer purchased CI/CD minutes from one group to another,
so be sure to select the correct group.
After your payment is processed, the additional CI/CD minutes are added to your group
namespace.
To purchase additional minutes for your personal namespace:
After your payment is processed, the additional CI/CD minutes are added to your personal
namespace.
CI/CD minutes for individual jobs are calculated based on:
GitLab uses this formula to calculate CI/CD minutes consumed by a job:
The number is transformed into minutes and added to the overall quota in the job’s top-level namespace.
For example:
The CI/CD minutes used by one pipeline is the total CI/CD minutes used by all the jobs
that ran in the pipeline. The CI/CD minute usage for a pipeline can be higher than
the duration of the pipeline if many jobs ran at the same time.
The cost factor for a job running on a shared runner is:
On GitLab SaaS, shared runners can have different cost factors depending on the cost involved
in executing the runner. For example, a high spec shared runner could be set to have a cost factor of On the first day of each calendar month, the accumulated usage of CI/CD minutes is reset to Usage data for the previous month is kept to show historical view of the consumption over time.
When the quota of CI/CD minutes is used for the current month, GitLab stops
processing new jobs.
The grace period for running jobs is Jobs on specific runners are not affected by the quota of CI/CD minutes.
On GitLab SaaS an email notification is sent to the namespace owners when:
If your project consumes too many CI/CD minutes, there are some strategies you can
use to reduce your CI/CD minutes usage:
If you manage an open source project, these improvements can also reduce CI/CD minutes
consumption for contributor fork projects, enabling more contributions.
See our pipeline efficiency guide for more details.
0
, which grants unlimited CI/CD minutes.
However, you can change this default value.
Set the quota of CI/CD minutes for a specific namespace
View CI/CD minutes used by a group
View CI/CD minutes used by a personal namespace
Purchase additional CI/CD minutes
10,000
monthly minutes.
5,000
minutes.
15,000
minutes.
13,000
minutes during the month, the next month your additional minutes become
2,000
. If you use 9,000
minutes during the month, your additional minutes remain the same.
Purchase CI/CD minutes for a group
Purchase CI/CD minutes for a personal namespace
How CI/CD minutes are calculated
Job duration * Cost factor
created
or pending
status.
alice
, runs a pipeline under the gitlab-org
namespace.
gitlab-org
namespace, not the alice
namespace.
alice
, the CI/CD minutes
are added to the overall consumption for the alice
namespace.
Cost factor
0.008
for public projects on GitLab SaaS, if .
(For every 125 minutes of job time, you accrue 1 CD/CD minute.)
0.008
for projects members of GitLab Open Source program.
(For every 125 minutes of job time, you accrue 1 CD/CD minute.)
0
for public projects on GitLab self-managed instances, and for GitLab SaaS public projects created before 2021-07-17.
1
for internal and private projects.
Additional costs on GitLab SaaS
2
.
Conversely, a shared runner that executes jobs for public projects could have a low cost factor, like 0.008
.
Monthly reset of CI/CD minutes
0
for all namespaces that use shared runners.
What happens when you exceed the quota
1,000
CI/CD minutes.
GitLab SaaS usage notifications
Reduce consumption of CI/CD minutes
rules
to make it only run when it’s needed.