Get the DevOps platform

Free-forever features for individual users
per user/month
No credit card required
Get started
Spans the DevOps lifecycle
Open Source - MIT License
Bring your own GitLab CI runners
Includes free static websites
400 CI/CD minutes per month [1]
Enhance team productivity and coordination
per user/month
Billed annually at $228 USD
Buy GitLab Premium
Features from Free
Faster code reviews
  • Multiple approvers in code review

    To ensure strict code review, you can require a minimum number of users to approve of a merge request before it is able to be merged.

  • Code Owners

    Assign Code Owners to files to indicate the team members responsible for code in your project. Code owners are assigned automatically as merge request approvers.

  • Code Review Analytics

    Find bottlenecks in your code review process by understanding how long open merge requests have been in review.

  • Merge request reviews

    For faster code review, draft multiple comments in a merge request code review, before submitting them together all at once.

  • Pipelines for Merged Results

    Keep master green. A special pipeline runs on the results of merged code before merging into master to detect changes that may be green on a branch but will fail master when merged.

  • Code Quality Reports

    Full Code Quality reports are available on the pipeline page, showing areas of the codebase that do not meet the organization’s preferred style or standards.

  • Comments in Review Apps

    Shorten the feedback cycle and enable stakeholders to provide comments through a form in your review app - which is then automatically added to the related merge request .

Advanced CI/CD
  • CI/CD Pipelines Dashboard

    Visualize the history and current status of pipelines across projects and groups all in a single dashboard that can be customized for each user.

  • Multi-project pipeline graphs

    Visualize how pipelines across projects are linked together, including cross project dependencies.

  • Merge Trains

    Reduce pipeline queueing and waiting time with merge trains which allows parallel pipeline execution, with each pipeline building off the merge result of the previous one.

  • CI/CD for external repo

    Connect your projects hosted on external services (like GitHub or Bitbucket) and leverage the power of GitLab CI/CD pipelines to build, test, and deploy your applications easily.

  • GitLab Agent for Kubernetes

    Manage the deployments and connection to your Kubernetes clusters in a secure and compliant way, driven by code.

  • Environments Dashboard

    Visualize cross-project environments, track change flow from development to production, track pipeline status and diagnose issues from a single dashboard.

  • Group file templates

    Define custom LICENSE, .gitignore, Dockerfile and .gitlab-ci.yml templates for a Group to make consistency easier.

  • Robust deploy and rollback bundle

    Encapsulate knowledge of deploying and rolling back into something more than a script, perhaps similar to a k8s operator. Something that knows how to handle failure. e.g. if you’re deploying 7 services and one fails, you can’t just stop, you probably have to rollback the 6 that succeeded, as well as the 7th that failed. (Now, depending on implementation, it still might be a script that triggers some kind of operator). GitLab can deploy and rollback, but only via scripts with limited error handling.

Enterprise agile planning
  • Roadmaps

    Visualize multiple epics and milestones across time in a roadmap view.

  • Single level Epics

    Plan and track features and work group level epics that collect issues together. Easily create and assign Issues directly from the Epic itself

  • Scoped Labels

    Assign scoped labels mutually exclusively when they have the same scope.

  • Issue Board Milestone Lists

    Issue board lists that pull in issues in a given milestone

  • Multiple Issue Assignees

    Assign more than one person to an issue at a time.

  • Multiple Group Issue Boards

    Multiple Group Issue Boards, similar to Multiple Project Issue Boards

  • Promote Issue to Epic

    Promote an issue to epic to continue collaboration at a higher-level work abstraction.

  • Issue Weights

    GitLab lets you manage issues using Agile practices by setting the weight of an issue.

Release controls
  • Approval rules for code review

    Approval rules ensure that the right people review merge requests by specifying eligible approvers and the minimum number of approvals required for a merge request.

  • Required Merge Request Approvals

    Guarantee quality and standards of your code by mandating a set number of necessary approvals and predefine a list of specific approvers.

  • Merge Request Dependencies

    Coordinate the order in which merge requests are merged within the same project and/or across different projects.

  • Push rules

    Reject new code and commits that don’t comply with company policy.

  • Restrict push and merge access

    Extend the base functionality of protected branches and choose which users can push or merge to a protected branch.

  • Protected Environments

    Specify which person, group, or account is allowed to deploy to a given environment, allowing further protection and safety of sensitive environments.

  • Lock project membership to group

    Group owners can prevent new members from being added to projects within a group.

  • Geolocation-aware DNS

    Users using Geolocation-aware DNS can be transparently directed to the closest server available and access repository data faster.

Self-managed reliability
  • Disaster Recovery

    Fail over in minutes to another data-center.

  • Maintenance mode

    Maintenance mode allows systems administrators to perform maintenance operations, such as preparing for a scheduled failover, with minimal disruption to end users.

  • Fault-tolerant Git storage with Gitaly

    Configure replicated Git storage with automatic failover, strong consistency, and read distribution for improved fault tolerance and performance.

  • Distributed cloning with GitLab Geo

    Built for distributed teams, GitLab Geo helps to reduce time to clone and fetch large repos with GitLab Geo - thereby speeding up the user experience for all users regardless of location.

  • Support for Scaled Architectures

    Scale GitLab services across multiple nodes to manage demand and provide redundancy. Determine the optimal architecture for your needs using reference architectures.

  • Container Registry geographic replication

    Supports distributed teams by running multiple registry instances across several regions and syncing between data centers.

  • Database load balancing for PostgreSQL

    Distribute read-only queries among multiple PostgreSQL database servers and reduce the load on the primary database to increase responsiveness.

  • Log forwarding

    Forward your logs to a central system.

10,000 CI/CD minutes per month
Organization wide security, compliance, and planning
per user/month
Billed annually at $1,188 USD
Buy GitLab Ultimate
Features from Premium
Advanced security testing
  • Dynamic Application Security Testing

    Ensure you are not exposed to web application vulnerabilities like broken authentication, cross-site scripting, or SQL injection by dynamically investigating your running test applications in CI/CD pipelines.

  • Security Dashboards

    Gain visibility into top-priority fixes by identifying and tracking trends in security risk across your entire organization.

  • Vulnerability Management

    Empower your entire team, and not just Security, to act on security findings with a unified interface for scan results from all GitLab Security scanners.

  • Container Scanning

    Run a security scan to ensure the Docker images for your application do not have any known vulnerabilities in the environment where your code is shipped.

  • Dependency Scanning

    Protect your application from vulnerabilities that affect dynamic dependencies by automatically detecting well-known security bugs in your included libraries.

  • API Fuzz Testing

    Test the APIs in your apps to find vulnerabilities and bugs that traditional QA processes miss.

  • Vulnerability Database

    A vulnerability database that can be viewed and enhanced by anyone.

  • On-demand DAST

    Identify vulnerabilities in your running application, independent of code changes or merge requests.

Security risk mitigation
  • Security Approvals

    Require approval from your security team before allowing developers to merge in code that introduces new vulnerabilities.

  • Security Alert Dashboard

    The security alert dashboard provides a workflow for viewing and managing container network policy security alerts.

  • Security Policies

    Allow security teams to manage and enforce security policies for GitLab projects and for Kubernetes clusters.

  • Interface for audit events

    Continuously log events that are commonly requested in audits. Discover who did what and when.

  • License Compliance

    Check that licenses of your dependencies are compatible with your application, and approve or deny them. Results are then shown in the Merge Request and in the Pipeline view.

  • Compliance report

    View an aggregated list of merge requests for all projects in a group. Easily identify and act on merge requests that are out of compliance or generate and export a chain of custody report for the group’s projects.

  • Quality Management

    Define and plan test cases, maintain test execution results and create a backlog of work from failed tests.

  • Require a Jira issue before merging code

    Help teams using both Jira and GitLab better collaborate and stay in sync by requiring that a Jira issue to be linked to each merge request.

  • Custom compliance frameworks

    Create unique compliance frameworks that projects must follow. These will appear as a label next a project to distinguish it from others.

  • Compliance pipeline configuration

    Ensure projects perform the steps necessary to meet regulatory requirements with a common pipeline definition that will run for all projects which adhere to a given compliance framework.

  • Requirements Management

    Gather, document, refine, and track approval of business and system requirements. Define traceability between requirements and other requirements, code, or test cases.

Portfolio management
  • Multi-level Epics

    Plan and track strategies, initiatives, and features with multi-level epics. Organize and prioritize work across multiple children epics and their issues within the Epic Tree.

  • Epic Boards

    View and track your epics on a kanban-style board

  • Issue and Epic Health Reporting

    Report on and quickly respond to the health of individual issues and epics by viewing red, amber, or green health statuses on your Epic Tree.

  • Planning hierarchy

    Using epics and issues together results in a planning hierarchy that spans groups and projects. This allows multiple layers of breaking down work and better organization. Hierarchy starts with single level epics in Premium. It becomes more flexible with mult-level epics in Ultimate.

  • Portfolio-level Roadmaps

    Establish product vision and strategy, gain progress insights, organize, govern and shape the effort of multi-disciplinary teams with portfolio-level roadmaps.

  • Bulk Edit Epics

    Edit labels on multiple epics all at once via the Epic List.

Value stream management
  • Insights

    Charts to visualize data such as triage hygiene, issues created/closed in a given period, average time for merge requests to be merged and much more.

  • DORA-4 metric - Deployment frequency

    Monitor the frequency of your deployments over time, find bottlenecks, and make improvements when necessary.

  • DORA-4 metric - Lead time for changes

    Lead time for changes measures the time to merge a change to production and helps you understand the efficiency of your deployments over time and find improvement areas.

Free guest users
50,000 CI/CD minutes per month

All plans have unlimited (private) repositories. Use it SaaS or Self-Managed.

Frequently asked questions

License and Subscription

I already have an account, how do I upgrade?

Head over to, choose the plan that is right for you.

Can I add more users to my subscription?

Yes. You have a few options. You can add users to your subscription any time during the subscription period. You can log in to your account via the GitLab Customers Portal and add more seats or contact sales for a quote. In either case, the cost will be prorated from the date of quote/purchase through the end of the subscription period. You may also pay for the additional licenses per our true-up model.

How will I be charged for add-on users?

If you have quarterly subscription reconciliation enabled (default option for new and renewing subscriptions after Aug 1, 2021), users added during a quarter will only be charged for the remaining quarters of their subscription term as opposed to the full annual subscription fee(s) with annual true-ups. For example, if you add 50 users to your subscription during the third quarter of your subscription term, the 50 users will only be charged for the fourth quarter of your subscription term as opposed to all four quarters as per annual true-ups.

If you do not have quarterly subscription reconciliation enabled, add-on users will be charged annual true-ups for the full term during which they were added. For example, if you have 100 active users today, you should purchase a 100 user subscription. Suppose that when you renew next year you have 300 active users (200 extra users). When you renew you pay for a 300 user subscription and you also pay the full annual fee for the 200 users that you added during the year.

What happens when my subscription is about to expire or has expired?

You will receive a new license that you will need to upload to your GitLab instance. This can be done by following these instructions.

What happens if I decide not to renew my subscription?

14 days after the end of your subscription, your key will no longer work and GitLab Enterprise Edition will not be functional anymore. You will be able to downgrade to GitLab Community Edition, which is free to use.

Can I acquire a mix of licenses?

No, all users in the group need to be on the same plan.

How does the license key work?

The license key is a static file which, upon uploading, allows GitLab Enterprise Edition to run. During license upload we check that the active users on your GitLab Enterprise Edition instance doesn’t exceed the new number of users. During the licensed period you may add as many users as you want. The license key will expire after one year for GitLab subscribers.

Payments and Pricing

What is a user?

User means each individual end-user (person or machine) of Customer and/or its Affiliates (including, without limitation, employees, agents, and consultants thereof) with access to the Licensed Materials hereunder.

Is the listed pricing all inclusive?

The listed prices may be subject to applicable local and withholding taxes. Pricing may vary when purchased through a partner or reseller.

What features are included in GitLab self-managed and SaaS across the pricing plans?

You can find an up to date list on the features page.

Can I import my projects from another provider?

Yes. You can import your projects from most of the existing providers, including GitHub and Bitbucket. See our documentation for all your import options.

Do you have special pricing for open source projects, educational institutions, or startups?

Yes! We provide free Ultimate licenses, along with 50K CI minutes/month, to qualifying open source projects, educational institutions, and startups. Find out more by visiting our GitLab for Open Source, GitLab for Education, and GitLab for Startups program pages.

How does GitLab determine what future features fall into given tiers?

On this page we represent our capabilities and those are meant to be filters on our buyer-based open core pricing model. You can learn more about how we make tiering decisions on our pricing handbook page.

Features and Benefits

What are the differences between Free, Premium, and Ultimate plans?

All of the features and benefits of the different GitLab offerings can be found on the feature comparison pages. Read more about Premium and Ultimate are the right tiers for you.

What is the difference between GitLab and other DevOps solutions?

You can see all the differences between GitLab and other popular DevOps solutions on our competitive comparison pages.

GitLab SaaS

Where is SaaS hosted?

Currently we are hosted on the Google Cloud Platform in the USA

What features are not available on GitLab SaaS?

Some features are unique to self-managed and do not apply to SaaS. You can find an up to date list on the features page.

Storage and Transfer Limits

Do the storage and transfer limits apply to self-managed?

No. There are no application limits on the amount of storage and transfer for self-managed instances. The administrators are responsible for the underlying infrastructure costs.

What happens if I exceed my storage and transfer limits?

The limits are currently soft limits only, GitLab will not enforce these limits automatically as the product does not show the usage of all Storage and Transfer yet. If you exceed the limits, GitLab may reach out and work with you to reduce your usage or purchase additional add-ons. In the future, the limits will be automatically enforced. This will be announced separately.

Where can I see my storage and transfer usage?

Storage usage can be viewed on the group’s Settings->Usage Quota page. Transfer and container registry usage will be added at a later date.

What counts towards my storage limit?

Storage limits are applied at the top-level namespace. All storage consumed by projects within a namespace is counted, including the git repositories, LFS, package registries, and artifacts.

Can additional storage and transfer be purchased?

Additional storage and transfer can be purchased as an add-on. Please follow the process described in our documentation.

CI/CD Pipeline Minutes

What are CI/CD pipeline minutes?

CI/CD Pipeline minutes are the execution time for your pipelines on our shared runners. Execution on your own runners will not increase your pipeline minutes count and is unlimited.

What happens if I reach my minutes limit?

If you reach your limits, you can manage your CI/CD minutes usage, purchase additional CI minutes, or upgrade your account to Premium or Ultimate. Your own runners can still be used even if you reach your limits.

Does the minute limit apply to all runners?

No. We will only restrict your minutes for our shared runners (SaaS only). If you have a specific runner setup for your projects, there is no limit to your build time on GitLab SaaS.

Do plans increase the minutes limit depending on the number of users in that group?

No. The limit will be applied to a group, no matter the number of users in that group.

Why do I need to enter credit/debit card details for free pipeline minutes?

There has been a massive uptick in abuse of free pipeline minutes available on to mine cryptocurrencies - which creates intermittent performance issues for users. To discourage such abuse, credit/debit card details are required if you choose to use shared runners. Credit/debit card details are not required if you bring your own runner or disable shared runners. When you provide the card, it will be verified with a one-dollar authorization transaction. No charge will be made and no money will transfer. Learn more here

Is there a different CI/CD minutes limit for public projects?

Yes. Public projects created after 2021-07-17 will have an allocation of CI/CD pipeline minutes as follows: Free tier - 50,000 minutes, Premium tier - 1,250,000 minutes, Ultimate tier - 6,250,000.

Still have questions? Get in touch.

We're here to help. Talk to an expert today.

Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license