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

Sales Handbook

Reaching the Sales Team (internally)

On this page

Other Sales Topics in Handbook

Sales Resources outside of the Sales Handbook

How GitLab Sales are organised

Team Structure & Roles

See the GitLab org chart.

Reporting into the Chief Revenue Officer (CRO) are the:

Reporting into the VP Sales are:

Initial Account owner - based on segment

The people working with each segment and their quota are:

  1. Strategic & Large: Strategic Account Leader (SAL) with a quota of $1M incremental annual contract value (IACV) per year
  2. Mid market: Account Executive with a quota of $700,000 incremental ACV (IACV) per year
  3. SMB: SMB Customer Advocate can close SMB deals directly by referring them to our self-serve web store or assisting them with a direct purchase.

The quota coverage types are:

  1. Native Quota Req (NQR) - individual owns direct quota for their assigned territory.
  2. Overlay Quota Rep (OQR) - individual supports an assigned territory that is currently owned by a NQR.

Quotas may be adjusted based on geographic region.

Variable Compensation takes the following into consideration:

Quota Ramp

For all quota carrying salespeople, we expect them to be producing at full capacity after 6 full months. We have the following ramp up schedule and measure performance based on this schedule:

For the purposes of our internal analytics tool and forecasting we have the first 3 months at 25%. We do this so we do not have overinflated %'s when a salesperson does sell something in months 1 and 2.

Operating Rhythm - Sales Meetings, Presentations and Forecasting

Bi-Weekly Monday Sales Call

  1. We start on time and do not wait for people.
  2. If you are unable to attend, just add your name to the list of "Not Attending".
  3. When someone passes the call to you, no need to ask "Can you hear me?" Just begin talking and if you can't be heard, someone will let you know.

Weekly Thursday Sales Enablement Call led by Product Marketing

Sales Group Conversation

Weekly Forecasting

The Regional Director/Vice President of each team will establish weekly due date/time for your forecasts submissions. The RD/VP will be responsible for using your data for forecast the following:

Please watch the following videos on how to submit your IACV forecast and your Renewal ACV forecast. The following sections provide you with additional information on our forecasting methodologies and practices.

Forecast Category and Renewal Forecast Category Fields

Default Salesforce Stage to Forecast Category and Renewal Forecast Category Mapping

Opportunity Stage Default Forecast Category Renewal Forecast Category
00-Pre Opportunity Omitted NULL
0-Pending Acceptance Omitted Commit
1-Discovery Pipeline Commit
2-Scoping Pipeline Commit
3-Technical Evaluation Pipeline Commit
4-Proposal Best Case Commit
5-Negotiating Commit Commit
6-Awaiting Signature Commit Commit
Closed Won Closed Closed
8-Closed Lost Omitted Omitted
9-Unqualified Omitted NULL
10-Duplicate Omitted NULL

Forecast Categories

There are two types of categories we review when your forecasts are pushed to Clari:

Overriding Forecast Categories

Early in a quarter, you may not have many opportunities in Stage 4 and beyond. With that in mind, you will have the ability to override the Forecast Category and Renewal Forecast Category for your opportunities in both Salesforce and Clari.

In Salesforce, go to the Opportunities Home tab:

  1. Select either the My Forecast opportunity list view OR the My Forecast report.
  2. Click on the Opportunity Name of the record you want to update
  3. Change the Forecast Category and/or Renewal Forecast Category fields.
  4. Click Save.

In Clari, you will update records individually via Opportunity tab:

  1. Select the CQ: Open Deals, CQ: Commit Deals, CQ: Best Case or CQ: Open Renewals view
  2. You can update the opportunities directly within the opportunity grid. Just to to the field you want to update and double click.
  3. Click on the row of the opportunity you want to edit. On the right, you should see additional details (if you don’t, click on the Toggle Details button).
  4. In the Details tab, scroll to Forecast Category and double-click the field to edit. Select the desired category.
  5. Click Save.
Advantages to Updating Opps in Clari

In Clari, we have provided a simplified layout meaning that we have designed the Details tab to include the most important fields that an RD/VP will review when determining whether they will include your opportunity in their regional forecast. Purchasing Plan, MEDDPIC, Next Steps are atop this simpliied layout. You won’t have to navigate through various sections of Salesforce to enter the most important details. What's more is that sales leadersihp will use this exact same view when reviewing your opportunities. So while you might be more familiar with updating opportunity records in Salesforce, over time, you should find updating in Clari will prove much more convenient.

Forecasting and Sales Leaders

If you are a Sales Leader, will have additional access to the Forecasting Tab in Clari. You will see four tabs:

Reviewing Forecasts

On the right of each tab, you will see a Toggle Details button. You can click on this to expand the list of opportunities in the selected forecast category.You will have three options:

Click on the radio button for the type of opportunities you want to see (normally for forecasting calls with AEs, you will select “Open”). Then click “View Deals” to go to a full list of opportunities.

To overwrite your regional forecast:

  1. In Clari, go to the Forecasting tab.
  2. Go the tab of the metric you want to forecast (Gross IACV or Renewal ACV).
  3. Go to Commit and override the value.
  4. Add a note on why the adjustment made.
  5. Repeat this process for Best Case.
  6. Click Save.

Forecast Terminology

Please use these terms correctly and don't introduce other words. Apart from the above the company uses two other terms:

How Sales work with other GitLab teams

Sales Development Representative (SDR)

1:1 pairing with SDR

Customer Success

See our customer success page in the handbook for more details.

Support - Escalation to Support

During the sales cycle potential customers that have questions that are not within the scope of sales can have their queries escalated in different ways depending on the account size:

  1. For Strategic/Large accounts that will have a dedicated Solutions Architect, engage the SA so that they can triage and develop the request.
  2. For questions that you think technical staff can answer in less than 10 minutes, see the internal support section of the support handbook.
  3. If a potential customer has already asked you a question, forward a customer question via email to the support-trials email address. - It's important the email is forwarded and not CC'd to avoid additional changes required once the support request is lodged.

How Support Level in Salesforce is Established

Once a prospect becomes a customer, depending on the product purchased, they will be assigned a Support Level (Account) in Salesforce:

GitLab Self-managed
  1. Premium: Ultimate customers; Premium customers; any Starter customer who has purchased the Premium Support add on
  2. Basic: any Starter customer without the Premium Support add on
  3. Custom: any customer on Standard or Plus legacy package
  1. Gold: Gold Plan
  2. Silver: Silver Plan
  3. Bronze: Bronze Plan

If a customer does not renew their plan, their account will be transitioned to an "Expired" status.


Who to talk to for what

If a client has a question or suggestion about a particular part of the product, find out here who in the Product team you need to speak to.

Contributing to Direction

Being in a customer facing role, salespeople are expected to contribute to GitLab Direction. Each day we talk to customers and prospects we have the opportunity to hear of a feature they find valuable or to give feedback (positive and constructive) to an feature that there is an issue for. When you hear of feedback or you personally have feedback, we encourage you to comment within the issue, if one exists, or create your own issue on our Issue Tracker. Checking the GitLab Direction page and the Issue Tracker should happen throughout the week.

When you have an organization that is interested in a feature and you have commented in the issue and added a link to the account in salesforce, please follow the process outlined on the product handbook to arrange a call with the product manager and account to further discuss need of feature request.

Requesting Assistance/Introductions Into Prospects from our Investors

We have great investors who can and want to help us penetrate accounts. Each month we send out an investor update and within this update there will be a section called "Asks". Within this section, we can ask investors for any introductions into strategic accounts. To make a request, within the account object in Salesforce, use the chatter function and type in "I'd like to ask our investors for help within this account". Please cc the CRO and your manager within the chatter message. All requests should be made before the 1st of the month so they are included in the upcoming investor update.

If an investor can help, they will contact the CRO, and the CRO will introduce the salesperson and the investor. The salesperson shall ask how the investor wants to be updated on progress and follow up accordingly.

Email Intro

This introduction email is progressive. You can choose to use just the first paragraph or the first two, three, or four depending on the detail you feel is appropriate for your audience.

GitLab is the end-to-end platform used by 10,000+ enterprises and millions of developers. As the world is massively transforming the way software is developed and delivered, 10,000+ enterprises and millions of developers have done so using GitLab.

GitLab is the only single application built from the ground up for all stages of the DevOps lifecycle. Companies including VMWare, Goldman Sachs, NVidia, Samsung, and Ticketmaster have all transformed and modernized their development process using GitLab. In the process, they have made their software lifecycle 200% faster, reduced QA tasks from one hour to 30 seconds, all while also improving security and making developers massively more productive.

With GitLab, Product, Development, QA, Security, and Operations teams are finally able to work concurrently on the same project. GitLab enables teams to collaborate and work from a single conversation, instead of managing multiple threads across disparate tools. GitLab provides teams a single data store, one user interface, and one permission model across the DevOps lifecycle allowing teams to collaborate, significantly reducing cycle time and focus exclusively on building great software quickly.

From project planning and source code management to CI/CD and monitoring, GitLab is a single application for the entire DevOps lifecycle. Only GitLab enables Concurrent DevOps to make the software lifecycle 200% faster. Some additional detail is linked below:

GitLab Sales Process

Capturing "MEDDPIC" Questions for Deeper Qualification

MEDDPIC is a proven sales methodology used for complex sales process into enterprise organizations. These questions should be answered in the "1-Discovery" Stage of the sales process. These questions will appear in the MEDDPIC Section of the Opportunity layout and will be required for all new business opportunities that are greater than $25,000 IACV.

Standard Implementation Sequence

The GitLab product is incredibly well matched to customer needs. In fact, we almost always earn a customer and grow quickly if they simply 1) git it a real try and 2) understand it. That means our best sales motion is to ensure we accomplish both at the same time. We've learned that a hands-on workshop is the best way to help the customer understand and make good decisions from the first conversation to the first expansion decision to the move to a higher tier and to the renewals down the road. At every step, a workshop is the most efficient and effective way to serve the customer.

Goal for every conversation with a customer:

Sales Motion and Sequence:

  1. Initial conversations: In an early conversation when a customer is still trying to learn about GitLab, agree to a workshop with decision maker and invovled team members to learn about end-to-end devops in a hands-on workshop to see what would be possible in their environment and exit with a working example to evaluate and better understand DevOps at 5x speed and better security and quality at the same time.
    1. DELIVER: DevOps Best Practices workshop
    2. Give customer a complete undersanding of how their own company could be successful with end-to-end DevOps and GitLab in their own environment
    3. Hands-on setup of GitLab in thier own environment => This is now the PoC deployment in place and running
    4. Begin PoC and with framework to measure success and report back on their real-world experience
      • On completion, move to an initial deployment and opportunity to become a customer.
  2. First Purchase: When a successful PoC is completed: _agree to another workshop
    1. DELIVER: Demo of how to use GitLab in their phase 1 deployment. Show the desired end-state to the customer.
    2. Train customer on GitLab best practices
    3. Leave demo with agreed deployment plan, timeline and target results
      • On completion: customer purchases subscription
  3. CI Expansion conversations: If not in the first deployment, as soon as possible agree to a CI workshop
    1. DELIVER: CI best practices workshop, training and hands-on training for customer
    2. Set up shared runners for the customer during the workshop every time. Ensure this is in place before completing the workshop
    3. Schedule CI training for the broader team at the customer
      • On completion: Expand subscription user base as customer gets broader value from use of CI without having to move up in tier
  4. Department expansion conversations: When a customer has great success with GitLab in part of the company but other departments/organizations have not yet adopted: agree to a workshop with the new organization to save them time. In a 4 hour workshop, that new organization can have developers, devops managers, integration teams, etc. all emerge with:
    1. A complete undersanding of how their own company has been successful with end-to-end DevOps and GitLab in their own environment
    2. A working example to evaluate real development in thier own environment
    3. A framework to measure success and report back on their real-world experience
      • On completion: deploy production users on already implemented instance and ensure all are fully trained and successful.
  5. Up Tier conversations: When a customer is interested in capabilities in a higher tier (security in Ultimate, for example) agree to a workshop so they can see the benefit of end-to-end DevOps with security from the very first commit. These are 1 day workshops and a big investment in our customers' success:
    1. DevSecOps Workshop: Dev, Ops, and Security team members fully understanding DevSecOps and how to implement it. Security automation, auto DevOps, etc. Implement Ultimate in workshop to allow hands-on experience and results.
    2. Kubernetes Workshop: Cloud-native best practices workshop for fully-modern development with fast cycle time and high security and quality. Support our customers to be expert in Kubernetes.
    3. End-to-end DevOps: Using all stages of DevOps. Use remaining stages of GitLab for fastest possible cycle time with highest possible security and quality.
      • In both workshops, deliver a framework to measure success and proof points in agreed cases that are important in thier specific context.
      • On success, renew customer on higher tier (Ultimate, in this case) and ensure all users are trained and fully utilizing the new capabilities.

Tracking Proof of Concepts (POCs)

In Stage 3-Technical Evaluation, a prospect or customer may engage in a proof of concept as part of the evaluation. If they decide to engage, please fill in the following information, as we will use this to track existing opportunities currently engaged in a POC, as well as win rates for customers who have engaged in a POC vs. those that do not.

  1. In the opportunity, go to the 3-Technical Evaluation Section.
  2. In the POC Status field, you can enter the status of the POC. The options are Not Started, Planning, In Progress, Completed, or Cancelled.
  3. Enter the POC Start and End Dates.
  4. Enter any POC Notes.
  5. Enter the POC Success Criteria, ie how does the prospect/customer plan to determine whether the POC was successful or not.

Capturing Purchasing Plans

Once you have reached Stage 4-Proposal, you should agree to a purchasing plan with your prospect/contact. This will include a clear understanding of purchase/contract review process and a close plan. This should include actions to be taken, named of people to complete actions and dates for each action. The information captured in this field will be used by sales management to see if the deal is progressing as planned. Delays in the purchasing plan may result in a request to push the opportunity into the following period.

How Sales Segments Are Determined

Sales Segmentation information can be found in the Business Operations - Database Management section.

Export Control Classification, and Countries We Do Not Do Business In

GitLab's Export Control Classification (or ECCN) is 5D992.c. As a consequence of this classification, we currently do not do business in: Iran, Sudan (excluding South Sudan), Syria, North Korea, and Cuba.

Seeing how our customers use GitLab

Adoption - GitLab Usage Statistics

Using GitLab Version Check, GitLab usage data is pushed into Salesforce for both CE, EE and EE trial users. Once in Salesforce application, you will see a tab called "Usage Statistics". Using the drop down view, you can select CE, EE trails or EE to see all usage data sent to Gitlab. Since version check is pulling the host name, the lead will be recorded as the host name. Once you have identified the correct company name, please update the company name. Example: change to Boeing as the company name.

To view the usage, click the hyperlink under the column called "Usage Statistics". The link will consist of several numbers and letters like, a3p61012001a002. You can also access usage statistics on the account object level within Salesforce. Within the account object, there is a section called "Usage Ping Data", which will contain the same hyperlink as well as a summary of version they are using, active users, historical users, license user count, license utilization % and date data was sent to us.

A few example of how to use Usage Statistics to pull insight and drive action?

Take a look at a Training Video to explain in greater detail by searching for the "Sales Training" folder on the Google Drive.

Open Source users - GitLab CE Instances and CE Active Users on SFDC Accounts

In an effort to make the Usage/Version ping data simpler to use in SFDC, there are 2 fields directly on the account layout - "CE Instances" and "Active CE Users" under the "GitLab/Tech Stack Information" section on the Salesforce account record.

The source of these fields is to use the latest version ping record for and usage record for each host seen in the last 60 days and combine them into a single record. The hosts are separated into domain-based hosts and IP-based hosts. For IP based hosts, we run the IP through a reverse-DNS lookup to attempt to translate to a domain-based host. If no reverse-DNS lookup (PTR record) is found, we run the IP through a whois lookup and try to extract a company name, for instance, if the IP is part of a company's delegated IP space. We discard all hosts that we are unable to identify because they have a reserved IP address (internal IP space) or are hosted in a cloud platform like GCP, Alibaba Cloud, or AWS as there is no way to identify those organizations through this data. For domain-based hosts, we use the Clearbit domain lookup API to identify the company and firmographic data associated with the organization and finally the Google Geocoding API to parse, clean, and standardize the address data as much as possible.

These stats will be aggregated up and only appear on the Ultimate Parent account in SFDC when there are children (since we don't really know which host goes to which child).

To see a list of accounts by # of CE users or instances, you can use the CE Users list view in SFDC. To filter for just your accounts, hit the "edit" button and Filter for "My Accounts". Make sure to save it under a different name so you don't wipe out the original. These fields are also available in SFDC reporting.

A few caveats about this data:

For the process of working these accounts, appending contacts from third-party tools, and reaching out, please refer to the business operations section of the handbook.

How we use our systems

GitLab Tech Stack

For information regarding the tech stack at GitLab, please visit the Business Operations section of the handbook where we maintain a comprehensive table of the tools used across the Marketing, Sales and Customer Success functional groups, in addition to a 'cheat-sheet' for quick reference of who should have access and whom to contact with questions.

Collaboration Applications used by Sales

Please use the handbook as much as possible instead of traditional office applications. When you have to use office applications always use Gsuite applications instead of Microsoft Office; for example, Google Sheets instead of Excel, Google Docs instead of Word, and Google Slides instead of Keynote or Powerpoint. Give the entire company editing rights whenever possible so everyone can contribute.

Parent and Child Accounts

When to Create an Opportunity with Software License Fees

Before a LEAD is converted or an OPPORTUNITY is created the following must occur:

  1. Authority
    • What role does this person play in the decision process? (i.e. decision maker, influencer, etc.) OR is this someone that has a pain and a clear path to the decision maker
  2. Need
    • Identified problem GitLab can solve
  3. Required Information
    • Number of potential paid users
    • Current technologies and when the contract is up
    • Current business initiatives
  4. Handoff
    • The prospect is willing to schedule another meeting with the salesperson to uncover more information and uncover technical requirements and decision criteria
  5. Interest by GitLab salesperson to pursue the opportunity. Are you interested in investing time in pursuing this opportunity.

Creating an Opportunity

Opportunities can only be created from a CONTACT record or when converting a LEAD. See the 'How to create an Opportunity' section of the Business OPS handbook.

True up

What is it?

A true up is a back payment for a customer going over their license count during the year.

Why do we use it?

We use the true up model so that the license never becomes a barrier to adoption for the client.

Let's take an example.

A customer takes out a subscription for 100 users. During the year they grow the usage of the server and 200 additional users come on board. When it comes time to renew, they are now up to 300 active users despite the license only being for 100 users.

At this point the customer needs to do two things: they need to renew the license and to add the true up users. The number of true up users in this case is 200. It is the difference between the Maximum Users and the Users in License. This can be found by the customer in their GitLab server by going to the Admin > License area. It will look like this

There is more information below on the steps you need to take, but in this example you would need to update the number of users for the renewal to 300 and add the True Up product to the renewal quote for 200 users. This will create a one time only charge to the customer and in a year's time, they will have a renewal for 300 users.

See here more information on the steps to take for the true up

Note that we make provision for true ups in our standard Subscription Terms Section 5 - Payment of Fees.

Deal Sizes

Deal Size is a dimension by which we will measure stage to stage conversions and stage cycle times of opportunities. Values are IACV in USD.

  1. Jumbo - USD 100,000 and up
  2. Big - USD 25,000 to 99,999.99
  3. Medium - USD 5,000 to 24,999.99
  4. Small - below USD 5,000

Note that we use the same amounts to group customers by ARR.

Associating Emails to Opportunities

Associating emails to Salesforce is a best practice that should be followed by all users. Attaching emails to a Lead, Account, Contact, or Opportunity record are vital for transparency, as any number of team members can review the correspondence between GitLab and the customer/prospect account. It doesn't do anyone any good when all of the correspondence is kept in a user's inbox.

With that said, there are multiple ways that an email can be associated to an opportunity. But before you do that, you must first make sure that the contact record is associated to an opportunity via the Contact Roles object.

First, Contact Roles

To add a Contact Role to an opportunity:

  1. Go to the Opportunity.
  2. Go to the Contact Role related list.
  3. Click 'New'.
  4. Add the Contact.
  5. If this person is your primary contact, click on the 'Primary' radio button.
  6. Add the Role this person plays in the opportunity (Economic Buyer, Technical Buyer, etc).
  7. Repeat the steps, although you can only have one Primary Contact per opportunity.
  8. For more information, you can visit the Salesforce Knowledge Center.

Email to Salesforce

Email to Salesforce allows you to associate emails to Opportunities using an email long email string that associates the email to the contact. To set this up:

  1. Click on your 'Name' on the top right of any page in Salesforce.
  2. Select 'My Settings'
  3. Go to the left sidebar and click 'Email'.
  4. Then click 'My Email to Salesforce'.
  5. Copy the email string.
  6. Go to My Acceptable Email Addresses and make sure your gitlab email address is there.
  7. In 'Email Associations', make sure "Automatically assign them to Salesforce records" is checked.
  8. Check Opportunities, Leads, and Contacts.
  9. In the Leads and Contacts section, make sure to select "All Records".
  10. It is up to you if you want to save all attachments, as well as if you want to receive an email confirmation of an association (my recommendation is yes for the first few weeks to make sure it's working, then you can turn it off anytime).
  11. Click Save.
  12. Go to Gmail and save this email address in a Contact record. A good practice is name it 'BCC SFDC' for first and last name.
  13. When you send any emails from Gmail, you will BCC the "BCC SFDC" contact, which will send the email to long string you copied in Step 5.


If you want to associate emails to Opportunities using Outreach, follow these steps:

  1. Go to your photo on the bottom left.
  2. Click Settings
  3. Select 'Plugins' on the left menu.
  4. Select the SFDC (Salesforce) plugin.
  5. Click on 'Contact'.
  6. On the bottom right, enable 'Automatically associate activity with Opportunity'
  7. Click the 'Save' button on the top right.

Salesforce Lightning for Gmail

If you want to associate emails to Opportunities or other records using the Salesforce Lightning for Gmail plug in, follow these steps:

  1. Visit the Chrome Store to download the Salesforce Lightning for Gmail plug in.
  2. Click Add to Chrome
  3. Click Add Extension
  4. Go to Gmail and open the right sidebar.
  5. When you open an email that may contain email addresses from existing leads or contacts in Salesforce, all related records associated to that email (Lead, Contact, Account, Opportunity, and Cases) will appear, and you can select any or all records to related the email to.
  6. For each record you'd like to associate the email to, click on the upload icon for each record.
  7. If you wish, you can include some or all of the attachments to the record as well by clicking the checkbox next to each attachment.

If you have any issues with the setup, please contact the Director of Sales Operations via Slack, email, or SFDC Chatter.

Sales Order Processing

See the order processing page for information and training related to using Salesforce to create accounts, contacts, opportunities, etc.; opportunity reassignments; returning customer creation; and more.

Elevator pitch

Please see our value proposition.