Gitlab hero border pattern left svg Gitlab hero border pattern right svg

Category Direction - Search

Introduction and how you can help

Thanks for visiting this direction page on Search in GitLab. This page belongs to the Search group of the Enablement stage and is maintained by Kai Armstrong(E-Mail).

This strategy is a work in progress, and everyone can contribute:


GitLab currently supports Advanced Global Search for Self-Managed instances. This provides users with a faster and more complete search across the GitLab instance and within the code. Unfortunately, we haven't been able to bring these features to users. Our goal is to bring this search experience to more users of as we continue to expand our usage inside of our organization and beyond.

One of the primary benefits of continuing to expand our Advanced Global Search to is the ability to provide cross project code search to users of By enabling cross project searching users will be better equipped to discover solutions in other parts of their own organization that might be solving or thinking about the same things they are.

We've also written a blog post on the lessons from our journey as we continue to work towards enabling Elasticsearch on A follow up post was written on some things as we've continued to learn and enable things for

Target Audience and Experience

Advanced Global Search is targeted at all personas who might use GitLab. However, the largest benefits come to users performing cross-project code search looking for innersourcing opportunities or exploring the breadth of public projects across

Challenges to address

Scaling a service as large as Elasticsearch across all of is a complex problem. On top of the infrastructure challenge to address with this, there are also scaling issues associated with how the index is kept up to date.


Currently, GitLab's maturity for Search is viable. Here's why:

A complete Advanced Global Search feature brings this experience to all users of Search is a fundamentally important feature in a users experience across GitLab and all users should have the benefits for this to be considered complete. This also brings a secure and scalable feature to match the needs of

What's Next & Why

In Progress: Enable Elasticsearch for Paid Groups on - Now that Elasticsearch has been enabled for the gitlab-org and gitlab-com groups on we're focusing on how to continue enabling Elasticsearch for Paid groups on This is an important next step in expanding the scale of our Elasticsearch deployment and further support our dogfooding principles.

Next: Elasticsearch admin controls - Previously work on this effort began to bring additional administration controls and functionality to GitLab. While efforts have been re-prioritized to continue testing Elasticsearch with new groups, improvements to the Administration of Elasticsearch will need to happen to help support additional scaling efforts.

Future: Get Elasticsearch working on - Once we've enabled Elasticsearch for Paid Groups on we'll continue to explore bringing these features to the rest of Making code search work is an important feature and we understand the need and value this will provide.

What is Not Planned right now

Currently there is not a plan to scale beyond the needs of Paid Groups on This means that while the ambition of the Search Group is to expand Advanced Global Search to all users of GitLab, we're not yet ready to move in that direction.

The search group is also not focused on expanding the use of Elasticsearch to other search areas beyond Global Search. While areas like Issue and Epic search could benefit from some of the features available, those areas are not in scope at this time.

Competitive Landscape

Both GitHub and BitBucket provide a more comprehensive and complete search for users; particularly in their ability to deeply search code and surface those results to users. While GitLab's Advanced Global Search is available to self-managed users it hasn't reached all users across

Top user issue(s)

Top internal customer issue(s)

Top Strategy Item(s)