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

Global Compensation

Compensation Principles

  1. We're an open organization, and we want to be as transparent as possible about our compensation principles. Our compensation model is open to data driven iterations.
  2. We are paying local rates.
  3. Compensation aims to be at a competitive rate for your job family, your location, your level, your experience, and your contract type.
  4. We use a compensation calculator to ensure transparent and consistent compensation.
  5. We do not disclose individual compensation since compensation is not public.
  6. We adjust our calculator based on survey data, feedback from applicants and team members, and candidate data. Please email total-rewards@ domain if you want to contribute.
  7. We offer stock options for most positions.
  8. We base compensation on current position, experience at GitLab, and performance – not on what we paid you last month – and, generally, we don't reduce compensation.
  9. We want to follow the processes on this page for everyone, please email total-rewards@domain when we don't. If you have a specific question around your compensation or one of your direct reports' please schedule a call with total-rewards@ domain to review.
  10. We will update this page and the processes throughout the year.
  11. We'll adjust your pay as soon as your job-family or level factor changes.
  12. If we change our SF benchmark for a job family without changing the requirements, we change the compensation both for existing team members and new hires. If the SF benchmark is changed together with the requirements this review might happen at the time of the change or in our yearly cycle.
  13. We offer bonuses and incentives, but we don't offer ping pong tables or free lunches. We think it is more important to offer people flexibility and freedom. See the Top 10 reasons to work for GitLab on our culture page.
  14. We hire across the globe, but we're not location agnostic. Your timezone, the location factor in your region, and the vicinity to users, customers, and partners can all be factors. For example, we may favor one applicant over another because they live in a region with a lower location factor or because we need someone in that timezone. All things being equal, we will hire people in lower cost markets vs. higher cost markets.
  15. People on quota (account executives, account managers, and sales leadership) have variable compensation that is about 50% of their On Target Earnings (OTE). Individual contributors in the sales organization have variable compensation that is purely based on commission. The commission for all roles in the sales function is paid monthly with the exception of the following roles: Professional Services Engineer, Sales Development Manager, Director of Customer Success. These roles are paid commission quarterly. The VP of Alliances is paid according to the Executive Bonus Program.
  16. Compensation decisions around level and experience levels and for functions not in the calculator are taken by the compensation group. This group consists of the CFO, CEO, and Chief People Officer. All requests will first be routed to the CFO and the CPO. If needed, the request can be escalated to the CEO. When there is no time to coordinate with the group, the CEO can make a decision and inform the group. When the CEO is away (e.g. vacation), the two other members of the group can make a decision and inform the group. Whatever the decision is, the earnings committee should be cc-ed (or bcc-ed) on the final email so that the committee members can know that the loop was closed. This group is different from the compensation committee at the board level.

Compensation & Benefits Schedule

Throughout the year, the compensation and benefits team will need action from leadership and individual contributors. Below is a summary of the major events that will be coming up and affect everyone at GitLab. For more detailed information on the issues the compensation and benefits team is working on, please see the total rewards issue tracker.

Summary of Events for FY 2020:

Month Events
Feb 2020 Audit FY 2021 Annual Compensation Review
  Canada Benefits Implementation
Mar 2020 Job Family Alignment
  Exchange Rate Fluctuations effective 2020-03-01
Apr 2020 Compensation Philosophy Training
May 2020 TBD
Jun 2020 Benefits Survey Released FY21
Jul 2020 Benefits Survey Results FY21 Analyzed and added to Handbook
Aug 2020 Catch-up Compensation Review Manager Review (Compaas)
Sep 2020 Catch-up Compensation Review Effective 2020-09-01
Oct 2020 Compensation Training TBD
Nov 2020 Compa Group Reviews
Dec 2020 Annual Comp Review Inputs Evaluated/Proposed to Compensation Group for FY22
  Divsion and Department Impact Analysis shared with People Business Partner Team
Jan 2021 Annual Comp Review changes finalized for 2021-02-01 effective date
  Manager Review (Compaas)

Competitive Rate

We want our compensation to be at a level where we can recruit and retain people who meet our requirements. Our requirements for most of our job-families are at or above the average in the market. Therefore, we can expect to be at or above the 50th percentile of the survey data gathered from providers like Comptryx and Radford. Please do not use the term market rate since this can mean either competitive rate or survey data. Also see our SF benchmark.

When discussing a competitive rate for a single person at GitLab, please refer to this as their lottery factor. For example, if this person won the lottery and left the company what impact would that have. Other common industry terms are walk away factor or bus factor, but those both hold a negative connotation.

Paying Local Rates

Why we pay local rates

Competitive rates for roles vary depending on regions and countries. We pay a competitive rate instead of paying the same wage for the same role in different regions. Paying the same wage in different regions would lead to:

  1. A concentration of team members in low-wage regions, since it is a better deal for them, while we want a geographically diverse team.
  2. Team members in high-wage regions having less discretionary income than ones in low-wage countries with the same role.
  3. Team members in low-wage regions being in golden handcuffs and sticking around because of the compensation even when they are unhappy. We believe that it is healthy for the company when unhappy people leave.
  4. If we start paying everyone the highest wage our compensation costs would increase greatly, we can hire fewer people, and we would get less results.
  5. If we start paying everyone the lowest wage we would not be able to attract and retain people in high-wage regions.

For more context please also see our blog post about paying local rates.

Please see a Twitter thread from compensation expert Heather Doshay where she discusses paying local rates and how that impacts both companies and team members.

Hire the best candidate

We hire the best candidate for each role regardless of location, cost, or other factors. During the sourcing we do optimize what potential candidates we approach in order to bring more diversity (both geographically and people from underrepresented backgrounds) to our team.


Different than business travel, vacation, or visiting a relative for a few weeks, relocation means that you will establish yourself in a new location outside of your current metro area. If you are ending your current residential living arrangement, spending more than six months in one location as part of an extensive period of travel and/or will have your mail delivered to an address in a different city please contact us.

As stated in the code of conduct section of the handbook, you should first obtain written agreement (from your manager) when planning a relocation. It is the company's discretion to offer you a contract in your new location. At the time of the location update, we will take into consideration your new metro region when making a salary offer for continued employment.

At the onset, this practice sounds harsh when moving to a lower paid region. One might argue that it seems unfair for the organization to pay someone less for the same work in the same role, regardless of where they go. However, if you look at it from another angle for a minute and compare this practice to what most companies do, it should make more sense. For example, say you work for a company with physical locations and say they haven't accepted that remote work is as productive as coming into the office yet. If you wanted to pack up and move to a location where they did not have a physical site, you would have no alternative but to resign and seek new employment in your new location. You would find quickly that companies in the area pay at a locally competitive rate.

Now, let's say the company did have a site in your new location and they offered the flexibility to transfer. If they did not have a similar position open, you would have to either apply for a different open position in the same company or resign and apply externally (back to the realization that other companies will pay at local competitive rate). If you were lucky enough that they did have a similar role in the new location, a transfer would come with a pay rate based on the local market to ensure equity across all incumbents (people in the job) by location.

Adjusting pay according to the local market in all cases is fair to everyone. We can't remain consistent if we make exceptions to the policy and allow someone to make greater than local competitive rate for the same work others in that region are doing (or will be hired to do). We realize we might lose a few good people over this pay policy, but being fair to all team members is not negotiable. It is a value we stand behind and take very seriously.

Please refer to the code of conduct to review the relocation process.

Blog Post

We also wrote a blog post about paying local rates.

Compensation Calculator

Use the calculator

The calculator is embedded in every job family page but we also have a calculator that lets you select the job family.


As a natural extension of the Compensation Principles outlined above, and our commitment to transparency, sharing, efficiency, directness, and boring solutions (see our values) we developed a Compensation Calculator. The compensation of directors or above and anyone on a quota is not set with the calculator.

The goals of the calculator are:

  1. Calculate compensation for 200+ regions all over the world.
  2. Based on a simple formula.
  3. People with the same attributes should earn the same.
  4. The adjustment for paying local rates should be the same if you are in the same location.
  5. You should be able to calculate your compensation in case you know or made an assumption about your level and experience.
  6. That it is as close to a competitive rate as possible given the other constraints.
  7. Be able to calculate compensation for most of our offers without involving a compensation specialist.


Your compensation = SF benchmark x Location Factor x Level Factor x Compa Ratio x Contract Factor x Exchange Rate

The calculator will output the amount as base + variable = total target cash (TTC)

Your options can be found on stock options.

See the calculator in action on each job description, or at its home page.

The compensation calculator is updated in January and July with the proper exchange rate, keeping compensation levels in line with local purchasing power.

Reporting a Discrepancy

As with all things at GitLab, the compensation calculator is a constant work in progress. There are a few options for reporting a discrepancy if you find the calculator isn't outputting data that is true to market.

If you are an internal GitLab team member or external to GitLab:

If you prefer to remain anonymous:


The compensation calculator is a tool to assist the Total Rewards team in determining a compensation package for new and existing team members. The results of the calculator are not binding. Written correspondence through a contract or letter of adjustment specify all official compensation changes. We reserve the right to change the calculator at any point in time.

SF Benchmark


SF benchmark is the employee compensation at a compa ratio of 1.0 at or above market for the role in San Francisco, which we determine using various sources of survey data: Radford, Comptryx, AdvancedHR. We only use crowd sourced data (Paysa, Payscale, etc) when no survey data is available. The SF benchmark used in each position is available in the job_families.yml file in this website's repo.

Benchmark Evaluation

Benchmark Types

Benchmarks are determined based on the following types: Individual Contributor (IC), Manager, Director, Senior Director. The next iteration to our job families is to have the entire career progression and calculator in one place. Please see the following issue for more information on the progress. In the job_families.yml file the Total Rewards team will add an entry for each type listed within the job family. For example:

ic_ttc: compensation: 100000 percentage_variable: 0 from_base: true manager_ttc: compensation: 140000 percentage_variable: 0 from_base: true director_ttc: compensation: 180000 percentage_variable: 0.15 from_base: true senior_director_ttc: compensation: 220000 percentage_variable: 0.15 from_base: true

Note: Where there is no variable component offered (ICs and Managers) GitLab runs the benchmark evaluation off of base salary only. Where there is a variable component offered, GitLab runs the benchmark evaluation off of Total Target Case (TTC).

Benchmark Evaluation for Existing Roles

Benchmarks are evaluated annually as part of the Annual Compensation Review process. Benchmarks can also be adjusted as needed throughout the year.

To analyze benchmarks:

  1. Use the job code as the unique identifier to match all data.
  2. Outline whether the role is Base or TTC (Total Target Cash) to pull data accordingly.
  3. Add in the Radford and Comptryx Job Code.
  4. Generate a formula to look up the proper survey data from both Radford and Comptryx at the 50th and 75th percentile.
  5. Propose an updated benchmark taking the maximum of the 50th percentile median or the current benchmark.
  6. Evaluate the percent change.
  7. Generate a merge request to update the benchmark on the job_families.yml file and assign to the executive of the group for approval.
  8. Evaluate any impact to the current team if this benchmark change is done outside of annual compensation review.

New Benchmark

Whenever a new role is established, a new benchmark must also be determined. The Total Rewards team is pinged on the merge request for a compensation review to start the process. The Total Rewards team should ensure that the request is not for a role that already exists and has a benchmark.

Compensation Benchmarking is the process of using internal job descriptions to match salary survey jobs in order to identify the external survey data for each benchmark positions. Compensation data can fluctuate from very high salary data to very low salary data for roles that have the same or similar job titles. Example would be Field Marketing Manager. A Field Marketing Manager at GitLab or another SaaS or Technology company salary benchmarks would and can be included with Field Marketing Manager for other Non Technology companies, as an example RedBull. Though they have the same "title" the role, scope and salaries for these roles are very different. Based on these variants in comp data we will look at the relevant comp data for each role and use the median for the benchmark.

Each new job family will be assigned a job code and evaluated through the same process as for existing role.

To review the Compensation Benchmark process please refer to the New Roles Creation.

Benchmark Adjustment

As stated in competitive rate we want to recruit and retain people who meet our requirements. If more than 20% of the people do not accept our offers stating compensation as a reason this is an indication we're not offering a competitive rate. In this case the People Ops Analyst can review the compensation. During this review, we do not look to target at a certain percentile, but instead look at market rates and declined candidate offers when adjusting. A business case should be presented to the compensation group after approval from the Total Rewards Analyst in a google sheet with market data, candidate expectations, an impact to the current team; and in a google doc outlining the problem statement, likely cause, what the department has already tried, and an overall proposal which clarifies the budgetary impact.

If we change our SF benchmark for a job family without changing the requirements, we change the compensation both for existing team members and new hires. If the SF benchmark is changed together with the requirements this review might happen at the time of the change or in our yearly cycle.

Sometimes the requirements of a job family change. Usually this means the requirements become more restrictive as the complexity of our project and services demands more–or more specific–experience. This is different from a market adjustment because the market has not necessarily changed. This means that everyone on that benchmark does not get an automatic raise.

However, we want everyone who works at GitLab prior to a role requirement change to the have the same opportunity as new hires. They and their manager can then immediately begin technical and career development using the new role requirements. Promotions against this new criteria can also be requested on their own cadence.

It's not necessary, but it's easier for the organization to digest a benchmark change resulting from changes in a job's requirements if the name of the role changes as well. Two examples are:

Job Codes

To automate the process of pulling survey data from Comptryx and Radford to review benchmarks, GitLab has mapped each job title with a corresponding job code. As a first iteration GitLab will use the job codes Radford has outlined. Each job family and level must have a unique job code. The following structure is used:

For example: Backend Engineer = 5163 Senior Backend Engineer = 5164 Distribution Engineer = 5163A Senior Distribution Engineer = 5164A

All current job codes can be found by the Total Rewards team in the "Job Codes" google sheet on the Final Job Code Tab.

As a second iteration, GitLab will review whether or not we should generate our own job codes.

Location factor


Location Factor is calculated using multiple data sources to conduct a market analysis of compensation rates globally: Economic Research Institute (ERI), Numbeo, Comptryx, Radford, Robert Half, and Dice. This is not a cost of living analysis, but instead a cost of market evaluation compared to San Francisco. The location factors are stored in the data file on GitLab. The Total Rewards team will use their best judgement in determining the input per location based on our Compensation Principles.

Geographical Areas

The location factor depends on your geographical area. To determine geographical areas as it relates to compensation, we looked at what the United Nations outlines globally.

To determine your area:

  1. Select the country you live in. This will filter out all areas outside of your country. Based on the remaining choices under "area," if you live within a commutable one hour and forty-five minutes of a city listed, you may use that as your location. If not, you will select "Everywhere else." If the only item listed for the country is "All," the country has the same location factor regardless of the city you live in. If applicable, a state or province might be listed instead of a city.
  2. If your country is not listed, reach out to total-rewards@domain to gather relevant data.
  3. When you move, you have to inform us and we may adjust your compensation up or down. Refer to Total Rewards Analysts to see what the likely impact will be.

Calculating Location Factors

GitLab will gather and analyze the data for each location factor annually as part of annual compensation review. We will also iterate on location factors as needed throughout the year.

  1. Data Gathering
    • ERI: Review the Cost of Market Analysis of each Geo Area to San Francisco at the 100,000, 125,000, and 150,000 salary rate. Take the average of all three data points.
    • Numbeo: use the Numbeo rent index normalized to San Francisco, or in math terms, (.7 x (Rent Index/1.26) + 0.3).
      • Numbeo's rent index is a valuable resource as we may not have proper data to conduct the analysis in all countries or geo areas.
    • Robert Half: For US and Canada, Robert Half has salary differential information based on each geo area. Normalize this data as a fraction of SF.
    • Dice: Using the Results from the Dice Tech Salary Report, take the differential of the geo area to SF.
    • Comptryx: Pull a report from Comptryx with all job families in SF as well as each location available in Comptryx to evaluate the differential to market.
    • Radford: Pull a report from Radford with all job families in SF as well as each location available in Radford to evaluate the differential to market.
    • In reviewing the data set, determine if a new geo area needs to be added to the list.
  2. Data Analysis
    • Take the maximum of:
      • the average of all data sources rounded down to the nearest 0.05 OR
      • the current location factor (so as to not reduce location factors).
    • Analyze the output based on geo areas to adjust location factors where needed. Add a comment with the rationale for the adjustment.
      • Reasons why the formula may be adjusted:
        • Not enough number of data points for the output to be statistically relevant
        • Adjusted to align with other metros in geo
        • Decreased to remove inflated metro data in everywhere else location factors
    • When analyzing: Focus on where we are having troubles recruiting, retaining, or have a smaller population of team members as these can be indicators of a misalignment in the region.

Level Factor

Level Factor is currently defined as:

Not all levels of each job follow this same nomenclature. A summary of the naming of levels per role can be found in role_levels.yml.

GitLab Job Grades

GitLab job grades aid in mapping a role for internal equity with respect to cash and equity. For example, you can see the grade for each role level and the stock options in their respective yml file.


Grade Management Individual Contributor
12 VP Fellow
11 Senior Director  
10 Director Distinguished
9.5 Manager, Product Principal Product Manager
9 Senior Manager Principal
Senior Product Manager
8 Manager Staff
Product Manager
7   Senior
6   Intermediate
5   Junior
4   Intern

Sales/Demand Generation:

Grade Management Individual Contributor
12 VP  
11 Senior Director  
10 Director  
9 Manager (Sales)  
8 Manager (Demand Generation) Enterprise & Customer Success
7   Mid Market
6   SMB/SDR Lead & Acceleration
5   Analyst/ SDR

Compa Ratio

Upcoming Iterations

We have renamed experience factor to Compa Ratios.

As part of the first iteration towards this change, the Annual Compensation Review will still use the output of the what was previously the experience factor worksheet, but completing the worksheet itself will be optional and will generate a range instead of specific number. For example, the output would be a compa group of growing in the role, instead of an experience factor of 0.97.

In FY 2021 We will develop and release a new tool to assess compa group.


The Compa Ratio is the range spread of the base salary calculator. Specifically, the compa ratio has a 30% spread (+/- 15% from the median). It is common to see range spreads up to 50%.


If you have any questions around Compa Ratios or determining Compa Groups, please feel free to open an issue or email total-rewards@domain.

Compa Group

The Compa Group is determined by the direct manager for each team member, and reviewed by all indirect managers. This should be done at least once per year for current team members and during the offer stage for candidates. This factor does not directly reflect years of work experience, but instead, demonstrated ability to drive projects and deliverables from the position description to completion within GitLab. It also does not reflect the performance of the team member in comparison to their peers. You may have a lot of top performers in your team but they won’t all necessarily have the same Compa Group. The goal of narrowing Compa Groups from Compa Ratios, as it relates to compensation, is to ensure they are accurate to work toward getting to the right salary.

If a manager is new to the team member, and has not had time to assess the Compa Group, collaboration with previous managers or colleagues is encouraged as a strong data point when assessing.

Compa Ratios are broken down into the following four Compa Groups:

Breakdown of the Compa Group mathematically:

Compa Group Compa Ratio Range
Learning the role 0.85-0.924
Growing in the role 0.925-0.999
Thriving in the role 1.0-1.074
Expert in the role 1.075-1.15
  1. Using the compa groups, determine where your direct report aligns based on their knowledge, skills, and ability in their current role. This compa group can incorporate soft skills and job requirements, but should not take into account requirements or responsibilities that are outside of the scope of the Job Family and level.
  2. If you are not sure on how to classify your direct reports based on the descriptions above, you can use the Optional Compa Group Worksheet by saving a copy in the name of your team member. The worksheet is optional, but may be a helpful tool if you are not sure what classification your team member would fall into.
    • Use the role description, including any appropriate requirements or responsibilities, to help populate the responsibility line items in the worksheet. It is important to take all aspects of the position description into account when determining compa group. If the position description isn't correct, use this as an opportunity to update it. Also be sure to update the soft skills section of the worksheet. The percentages are the same for each team member at GitLab, but level should be taken into account when evaluating experience.
    • Please add the file to BambooHR. Login to BambooHR and go to your team member's profile. Click on the documents tab. Upload the file to the "Compa Group Worksheets" folder and select the option to share the file. Sharing the file will allow the team member to also view the worksheet.
    • The most recent feedback cycle can be a helpful tool when distinguishing the compa group the team member is currently performing at.
    • Feedback reviews should not be about judging, but helping people. We do not want feedback reviews where people are holding back, so these metrics are different as compa ratios are used within the compensation tool.
  3. Whether you use the worksheet or not, it is critical that all managers are able to explain the compa group with the respective team member, including how they arrived at that classification.
  4. If reviewing as part of annual compensation review: Add the Compa Group to BambooHR. Please note that only the direct manager will be able to submit the Compa Ratio request. If the reporting relationship is not accurate, please update the manager through a job information request to ensure they are reporting into the right person. If you have any issues here, please email total-rewards@domain.
    • Login to BambooHR
    • Go to the team member's profile. At the top right hand corner select "Request a Change"; from that list you will want to pick "Compa Ratio".
    • Enter in today's date
    • From the Comp Group drop down select the proper classification.
    • You may include an optional comment (for example a link to the compa group worksheet if used).
    • Click "Submit"
    • The request is then forwarded to the manager's manager for final review and approval before automatically being uploaded to the BambooHR profile.
  5. If reviewing off cycle from annual compensation review: Add the Compa Group as a comment in the BambooHR request.

It is important to note that deriving an compa group based on the current compensation calculator is not advised. Compa groups should be based on the knowledge, skills, and ability in the current role. Second, the output of the compensation calculator may change due to the review of all inputs. We want each team member's pay to be an accurate reflection of their market, with the caveat that we adjust once a year in order to reduce the overhead of the adjustment process.

Contract factor

Contract Factor distinguishes between employee (1) or contractor (1.17), which can be found on the contract_factors.yml file. A contractor may bear the costs of their own health insurance, social security taxes and so forth, leading to a 17% higher compensation for the contractor. Visit our contracts page to learn more about the different types of contracts we offer.

Annual Compensation Review

The Annual Compensation Review process is currently undergoing iteration and the most up to date timeline can be reviewed in the Compensation & Benefits Schedule.

During the fourth quarter of each year, the Compensation & Benefits team will conduct a compensation review to ensure all team members are paid based on survey data in the compensation calculator. This is not a Cost of Living Adjustment, but instead a review of market changes. Location Factor and Compa Ratio will continue to be a part of the compensation calculator equation.

The annual compensation review is not directly linked to performance reviews nor the ability to be promoted. Other companies may tie compensation to performance reviews where each team member is rated on a performance scale with a corresponding compensation increase. GitLab’s takes a market based pay approach to annual compensation review by 1) assessing market changes in the compensation calculator inputs and 2) to review the Compa Group of team members to ensure alignment within the range.

The increase percentage may vary for each person. For instance, compa ratios are reviewed as part of a compensation adjustment or promotion, which GitLab encourages to happen independently from this review. If a team member was recently adjusted, the annual adjustment might yield no additional salary during the annual compensation review. This review acts as a sweep for each team member’s compensation to be evaluated at least once per year. If there is an increase in Location Factor and/or Benchmark, team members affected will have the new location factors applied to their compensation, but would not receive an automatic percent increase. For example, if the location factor in a region increases by 10% the team member will not receive an automatic 10% adjustment. The team member would receive an increase aligned to their benchmark, location factor, and compa group range taking any budget constraints into account.

Process overview

graph LR start((Annual review
kicks off)) step_manager_review(Manager determines
provisional compa group
of team members) step_manager_discuss(Manager discusses
provisional compa group
with team members) step_manager_input(Manager inputs
compa group
into BambooHR) step_imanager_review(Indirect manager
compa groups) decision_imanager_approve{Approves
compa groups?} step_imanager_agree(Indirect manager
discusses the compa group
with direct manager and
determines agreed compa group) step_manager_inform(Manager informs
direct report of approved
compa group) step_exec_review_1(Executive review) decision_exec_change{Changes in compa group?} step_manager_discuss_change(Direct manager
discusses feedback and
changed compa group
with direct report) step_cb_calculate(Comp & Benefits
team calculates
proposed increases) step_manager_compaas(Manager review
in Compaas) step_exec_review_2(Executive review) step_manager_final(Manager informs
direct reports of
adjustment to
compensation) stop((New
effective 1
Feb 2020)) start-->step_manager_review step_manager_review-->step_manager_discuss step_manager_discuss-->step_manager_input step_manager_input-->step_imanager_review step_imanager_review-->decision_imanager_approve decision_imanager_approve-->|No| step_imanager_agree decision_imanager_approve-->|Yes| step_manager_inform step_imanager_agree-->step_manager_inform step_manager_inform-->step_exec_review_1 step_exec_review_1-->decision_exec_change decision_exec_change-->|No| step_cb_calculate decision_exec_change-->|Yes| step_manager_discuss_change step_manager_discuss_change-->step_cb_calculate step_cb_calculate-->step_manager_compaas step_manager_compaas-->step_exec_review_2 step_exec_review_2-->step_manager_final step_manager_final-->stop

View the enlarged version of the process

Annual Compensation Review Timeline

  1. Benchmarks and Location Factors
    • The Compensation & Benefits team will review all benchmarks and location factors associated with the Compensation Calculator and propose revised inputs to the Compensation Group for approval/implementation.
  2. Compa Ratios
    • The Compensation & Benefits team will reach out the managers to obtain compa groups for each active team member with a hire date on or before October 31st.
    • Manager will then use the Compa Group Guidelines to assess each team member's classification within their current position.
    • Managers will add this compa group as a request in BambooHR which is also approved by the manager's manager. Instructions on how to do so can be found in the determining section.
    • Once all requests have been reviewed and approved the executive leaders of each group will review the breakdown with the Compensation & Benefits team along with the People Business Partner for their group.
      • In this breakdown, leaders will be able to analyze all individual compa groups, the distribution of compa groups overall and by department, as well as a gender distribution audit. Compensation will outline any concerns based on the aggregated data for the leader and people business partner to review.
    • Remember that this is also a good time to update your team’s position description if it does not reflect the role.
    • Compa Groups should be submitted to BambooHR no later than November 30th.
  3. Using the revised inputs, the Compensation & Benefits team will calculate a proposed increase for each team member using the exchange rate as of 2020-01-01.
  4. Manager Review in Compaas
    • All indirect managers will also review the increases compared to their budget.
    • Each division leader is responsible for making sure their group stays within budget. The company has a 6% budget for all COLA and Market Adjustments.
    • Depending on budget constraints, the increases for the individual team members may be adjusted up or down by management and reviewed by Compensation & Benefits.
  5. Once the People Group gives the ok: Managers will inform the team members of the increase and adjustments to compensation compared to their compa group.
  6. Total Rewards Analysts will update BambooHR, and notify all payroll providers to be effective February 1st. Letters of adjustment are not necessary for annual compensation review changes.

Manager Review

As part of the new Annual Compensation Review, managers will review, approve, and where necessary update the proposed salary increases to ensure that we are paying each team member to market. Please verify the compensation calculator inputs (compa group, level, title) are accurate.

It is very important that GitLab team-members understand their compa group and how it impact their salary.

While some GitLab team-members may not receive an increase due to already being at the right competitive rate for their Comp Group, Level, Role, and Location there are other circumstances where an increase should be avoided. If there are any reasons as to why the team member should not receive the proposed increase to be aligned with their experience and market in our calculator, please email total-rewards@ domain with the reasoning and cc your People Business Partner. This could be due to a current performance issue, pending termination, etc. If you would like to delay the increase, please outline a proposed plan of action and deadline. Team members who are currently struggling to perform at their current level should have that communicated clearly and the manager should consider delaying the increase until performance reaches a commendable level.

Manager Review Department Specific Considerations

Compaas is GitLab's compensation platform where managers can login, review, change, and submit their proposed increases during Annual Compensation Review. January 2020 is the first annual compensation review using Compaas. In the past all compensation reviews have been managed in Google Spreadsheets, which is not a scalable solution. As we go through the first Manager Review in Compaas, please post your feedback in the following issue so we can iterate on the process for the next compensation review.

Individual Contributors and Managers:

The following departments will be administered through Compaas. Compaas will open to managers January 8th by the end of business Pacific Time. The cycle will close for all slate owners and approvers on January 22nd by the end of business Pacific Time.

The following Departments will be administered through Google Spreadsheets since the roles in Marketing and Sales listed are not within the compensation calculator. Managers and Indirect Managers will receive a spreadsheet to review on January 10th by 12 pm Eastern Time. All spreadsheets must be finalized on January 24th by 12 pm Eastern Time.


All directors, senior directors, and distinguished engineers will be reviewed separately in google sheets since we are changing the variable plan from 10% to 15% for directors in FY 2021. For more information on how directors will be converted over time, please review director compensation The budgetary pool will not be broken down by Division but instead as one director pool. Managers and Indirect Managers will receive a spreadsheet to review on January 10th by 12 pm Eastern Time. All spreadsheets must be finalized on January 24th by 12 pm Eastern Time. All manager input will be reviewed and approved by the compensation group before the FY 2021 compensation is finalized.


All executive and fellow compensation will be reviewed in google spreadsheets by the compensation group and, if required per role, the board.

Manager Review in Compaas

Process for slate owners:

  1. Navigate to Compaas and select the option to sign in with Google.
  2. Select to sign in with your originally assigned GitLab email address.
    • If you select to sign in with an alias, you will receive an error and not be able to sign in. You can confirm your original GitLab email address on the Personal tab of BambooHR.
    • incorrect email
  3. Once you have logged in, you will see your slate. This will have the status of your budget, along with a card for each of the team members you will be recommending a raise for.
  4. The card will list the team member's name, role, benchmark role, level, compa group, compensation, adjusted compensation, discretionary raise, final compensation, and notes.
    • slate owner
    • The role is located under the team member's name. This is the team member's job title including level, for example, Senior or Associate.
    • Underneath the role is the benchmark role. This is the job title that is used for determining the base compensation before other inputs such as level are evaluated. For example, the benchmark role for a Senior Backend Engineer is a Backend Engineer.
    • Next to the team member's name is their level. This is a job code used internally that is unique to each role.
    • Next to the level is the compa group. These were selected by managers for each of their reports in November.
    • The Compensation Before is the number in gray and is the team member's current compensation. The Compensation Adjusted is the recommended compensation based on changes to location factor, role benchmark, Cost of Living Adjustment and bringing the team member to the bottom of the range if they received an increase in compa group.
    • Discretionary Raise is money that can be allocated to a team member to bring them higher in their compa group range. This can be allocated as either a cash amount or percentage.
    • The talk bubble at the right of the team member's card can be clicked on to leave a note on the employee's record. This can be used to record reasons for decisions, details about specific compensation change, or open questions for approvers or HR.
    • note
  5. Clicking the background of the person's card expands it to reveal their compensation timeline. The timeline shows any historical compensation data Compaas has available for each person. Clicking the card again closes the timeline.
    • timeline
  6. The slate can be saved as a draft at any time. When you choose to "Save and Submit", you will see a screen summarizing your proposed raises. You may choose to cancel, leaving the slate in a draft state, or "Submit and Lock" which automatically submits your recommendations for approval.
    • slate owner submit
  7. Once the slate has been submitted for approval, it will be locked. You will no longer be able to make changes, but while the annual compensation cycle is open you will be able to log in and review your team's compensation adjustments.
    • If any changes are made by a slate approver, these will be visible in your review screen.
    • slate owner locked

Process for approvers:

  1. Approvers will log in using the same instructions as slate owners.
  2. Once logged in, you will be taken to a slate review screen. This page shows the status of your budget, along with a card for each of the slates you will be approving or editing. Each card will have the status of the slate, the name of the slate owner, number of reports, each individual slate's budget, how much of the budget has been allocated, how much of the budget is left, currency (all in USD), and associated notes accessible by clicking the talk bubble at the right of the card.
    • approver review
  3. Clicking the slate name or the > arrow will take you to a slate. Slates that are not ready for approval will not be available to select. If you need to override a slate approval, please reach out to compensation as only admins can submit on behalf of another account. When you view a slate on your list, you will be able to edit the slate owner's recommendations and save them. Once you have saved, please refresh the page to see the changes applied to your budget, if applicable. For more information on the details located on each team member's card, please review item 4 in the process for slate owners above.
    • approver review slate
  4. Once you are finished making edits to a slate you are an approver for, you can choose to "Save & Approve". You will be taken to a screen summarizing the proposed raises. You may choose to cancel, leaving the slate unapproved, or "Submit and Approve" which automatically submits your recommendations for approval to anyone higher up in the approval chain. It is recommended that you keep all slates in draft form until you are ready to approve all slates in your group. Once you submit you will not longer be able to make any changes.
    • approver save and approve
  5. After you have approved a slate, it will no longer be editable on your list of slates. Any budget allocated to the approved slate will be reserved and deducted from your budget total. After approving, you will still be able to visit the slate and view a current summary of any proposed compensation adjustments including any adjustments made by an approver higher up in the approval chain.
    • approver locked

Manager Review in Spreadsheets

If you have direct reports eligible for compensation review and are in a department which is being administered through google spreadsheets you will receive an email from the Total Rewards team with a link to this handbook section as well as your slate. If you have any indirect reports you will have two tabs that need attention: "Slate" and "Approver".

If anything on your spreadsheet is not working, has incorrect information, or a formula breaks please email total-rewards@ and we can review/adjust.


  1. All information on your spreadsheet is a formula with the exception of Column R $ Input from Leader. This is where you as the manager can enter in the dollar amount in discretionary funds (if applicable). Please enter a value (even if $0) so your manager can see your slate has been completed. You may also want to notify your manager that your slate is ready to go.
  2. Once the manager enters in this amount, their manager will automatically be able to see the increases on their spreadsheets as the sheets dynamically interact.
  3. In column V, Discretionary Approved by Comp Group, you can see the final OTE for your team member along with the dollar increase as well and percent increase in order to communicate to your direct reports. Please do not communicate any compensation numbers until you have received confirmation from the Total Rewards team that all budgets have been approved.
  4. Please note that your recommendation may or may not be applied based on leader discretion (budgets are managed at the executive level).


  1. If you have indirect reports, you will have two tabs on your spreadsheet. The first is your slate, please see the directions above. The second is the Approver tab which will have information about all of your direct reports along with manager discretion values (if inputted).
  2. All information on your spreadsheet is a formula with the exception of Column U $ Input from Leader. This is where you as the manager can enter in the dollar amount in discretionary funds (if applicable).
  3. Please review your Manager's input (in column R, $ Input from Manager) and if you agree, enter the same value into Column U. Please enter a value (even if $0), so your manager knows your slates have been reviewed. You may also want to notify your manager that your slate and approver tab is ready to go.
  4. Please note that your recommendation may or may not be applied based on leader discretion (budgets are managed at the executive level).

Final Review:

  1. The executive of each group will have access to the master spreadsheet and be able to review the final leader approved discretionary amount. They will then enter the final approved discretionary amount in column AR Approved by Leader (or Comp Group). Please enter a number, even if it is 0. Once this number is populated, all slate and approver spreadsheets will be able to see the final result.

Communicating Compensation Increases

All increases for Annual Compensation Review will be finalized by Feb 1st. FY 2021 compensation will be uploaded into BambooHR no later than Feb 4th for payroll to make changes in all subsequent systems. The Total Rewards team will turn off the ability to see compensation in BambooHR using Employee or Contractor Self Service from Jan 27th until Feb 13th for Employees and until Feb 6th for Contractors. Managers will have the ability to communicate any increases to their team before end of day on the 6th for Contractors and end of day on the 13th for Employees.

Sample communication: "The manager review process for annual compensation review is complete. Based on your compa group evaluation of x, you are receiving an increase of x%."

Please note, the % increases in Compaas are rounded up to the nearest whole number. Please either communicate the amount increase or calculate the % increase to at least the hundredths place for communication: ((FY21 Salary-FY20 Salary)/FY20 Salary).

If your direct report has any questions on the calculation of their increase please feel free to have them reach out to the Total Rewards team.

Compensation Increases for FY 2022

In previous compensation review cycles, the maximum the team member was allocated was the output of their market compensation in line with the compensation calculator, whereas the minimum was the prorated cost of living adjustment. In FY 2022 compensation planning we will move away from the prorated cost of living adjustments. The Total Rewards Team will work through alternate options on how the minimum compensation increase is determined in the following issue.

FY 2022 Annual Compensation Review Budget

In FY21, the budget was 6% of all team members as of October 31, 2019. For the next compensation review which will take place from November 2020 to January 2021 to be effective for Fiscal Year 2022, we will separate the promotion and annual compensation review budget for the following conditions:

  1. Promotion Budget
    • Assume 12% of the team is promoted with an average of a 10% increase to OTE.
  2. Annual Compensation Review Budget
    • 6% of those who were not promoted. Therefore 6% of 88% of the population.
  3. Relocation Budget
    • Relocations are not considered in the budget. Theoretically throughout the year, there would be a net zero from those moving to hire cost and lower cost regions.

Calculating Budget Actuals

  1. Promotion Budget
    • At the beginning of each quarter, the Total Rewards team will calculate what the budget is for each Division to be managed by the executive of the group.
    • Take total OTE (TTC) as of the first day of the quarter x 12% x 10% / 4 to get to the actual for that quarter.
    • Any additional increases over budget must be approved by the CPO and CFO and may be taken from the following quarter's pool
    • Per Divison, any unused funds for promotions can be rolled over per quarter, if after Q4 there are unused funds they can be added to the annual compensation review budget.
    • Considerations when reviewing increases in BambooHR:
      • Any promotion with a percent increase of more than 10% to base salary must be approved by the CPO
      • Any promotion where the employee has had less than one year of tenure in the current level must be approved by the CPO
      • Any promotion to Director and above must be approved by the Compensation Group
    • The Compensation & Benefits team will track and report on budgets throughout the quarter as part of the team member spend KPI
  2. Annual Compensation Review Budget
    • Per Division take the total OTE (TTC) of the group as of October 31st x 88%. Remove any overspend or allocate additional budget per division from the promotion budget.
    • Verify totals with the Manager, FP&A.

Catch-up Compensation Review

For team members hired between November 1st and January 31st, participating only in the annual compensation review may mean their compensation is not reassessed for up to 15 months. GitLab has incorporated a catch up review conducted in August for anyone hired in November, December, or January of the previous year. For example, any new hires in Nov 2019 - Jan 2020 would be reviewed in August 2020.

During the annual compensation review, the budget for these team members is separated out to be used in August. If anyone would fall out of the compensation range, the team member would be adjusted immediately, but this would be deducted from the budget used in August.

No cost of living adjustments would be made at this time. This review will only take into account a compa group alignment (if any). Team members should not expect an increase, but instead understand that their compensation is being reviewed to ensure alignment to market.

All changes will follow the same process as the annual compensation review timeline with an effective date of September 1st.

Exchange Rates

The compensation calculator is updated in January and July with the proper exchange rate, keeping compensation levels in line with local purchasing power.

Not paid in your local currency

There are a number of reasons why team members may not be paid in local currency. For example, GitLab's bank might not support the currency or there may be a strong economic reason for the team member to choose a different currency. The currencies that GitLab can pay in are published on the contracts page.

  1. The Total Rewards Analyst will analyze the difference in exchange rates from January to July (or vice versa) and the effect this has on local purchasing power using the following process:
    • The exchange rate between the team member's local currency and chosen currency will be collected for both the current and previous conversion effective date.
    • The percent change is calculated between the two rates: (New Rate - Previous Rate)/Previous Rate.
  2. Criteria for review, the team member:
    • Is not paid in local currency.
    • Has been at GitLab for greater than six months.
    • Has not opted out.
  3. Only changes greater than +/- 5% will be processed in each review.
    • Changes must stay within band of the compensation calculator.
  4. Total Rewards Analysts will confirm by letter of adjustment any increases or decreases to compensation as a result of this review.
  5. Any significant increases or decreases will be reviewed on a case-by-case basis before any changes are made.
  6. Team members may also opt out of the reviews.
    • If an opt out agreement is signed, the team members will be excluded from any future Exchange Rate reviews. GitLab retains the right to revisit the opt-out status in the future.
  7. Additionally, if a team member is impacted outside of this review period they should reach out to total-rewards@domain.

Example: A team member's local currency is the Russian Ruble (RUB) and they are paid in US Dollars (USD). They have not previously opted out and have been employed for greater than 6 months. The exchange rate effective 2020-01-01 is 0.016. If for 2020-07-01 the exchange rate increases to 0.017, then this would result in a percent increase of 6.25%. The team member would have the option to either accept this increase to their salary or opt out.

2020-01-01 Oanda Rates

Currency Rate from USD Rate to USD
EUR 0.89169 1.12147
GBP 0.75846 1.31846
CAD 1.3018 0.76817
SEK 9.34579 0.107
PLN 3.79521 0.26349
INR 71.32668 0.01402
AUD 1.42596 0.70128
ILS 3.4626 0.2888
CNY 6.96913 0.14349
RUB 62.1118 0.0161
MXN 18.91432 0.05287
JPY 108.69565 0.0092
ZAR 14.05679 0.07114
CZK 22.66546 0.04412
HUF 294.98525 0.00339
NZD 1.48496 0.67342
DKK 6.66267 0.15009
KES 102.35415 0.00977
RON 4.27113 0.23413
CHF 0.96765 1.03343
SGD 1.34604 0.74292
KRW 1162.7907 0.00086
MAD 9.69368 0.10316
BRL 4.0235 0.24854
TRY 5.95238 0.168

Director Compensation

Beginning in FY21, Directors will be brought into the compensation calculator by benchmarking off of Total Target Cash (TTC).

In addition to base compensation, Directors who are not already enrolled in the Sales Compensation Plan or other performance incentive plan are eligible for a 15% bonus of current base salary (increased from 10% beginning in FY 2021).

To transition Directors who are on a 10% bonus plan, the following conditions will be taken into account during Annual Compensation Review:

  1. The minimum increase to base salary will be the Prorated Cost of Living Adjustment.
  2. Any additional increase will be added to variable cash.
  3. If the split ends up not being 15% of base salary, any future increases will go to variable cash until the desired split is achieved.

Director and above Bonus Plan

Targets: 50% of the bonus is based on performance against IACV. 50% of the bonus based on performannce against TCV less Operating Expenses (including COGS).

All targets are based on Company performance against Plan targets as approved by the Board of Directors.





Proration and Eligibility:

GitLab reserves the right to change or discontinue the bonus program at any time. All bonus payouts are discretionary and require the achieving of specific company results that will be communicated each year.

Bonus Payout Approvals

The Compensation Committee approves all bonus payouts for direct reports to the CEO at the end of each Fiscal Year. The Compensation Group internally at GitLab approves all other bonus payouts.

  1. The Finance team will generate a calculation of the total bonus payout for the Fiscal Year within 30 days of the last day of the fiscal year.
  2. The The Total Rewards Team will audit the calculation.
  3. Once approved by the Total Rewards Team, the CFO and CPO will review and approve all final numbers.
  4. Once approved by the CPO and CFO, the Total Rewards Team will generate a google sheet summarizing the data for the direct reports of the CEO. This sheet should include the following headers: Employee #, Name, Reporting to, Division, Department, Title, Hire Date, Total Eligible, Total Payout. Any additional notes should be added to the bottom of the sheet.
  5. The Total Rewards Team will communicate the final numbers via email to the Compensation Committee for approvals and ccing the CFO, CPO, CEO, and CLO in the communication.
  6. Once approved by the Compensation Committee, the Total Rewards team will notify payroll that the bonuses are ready for processing.
  7. Once the compensation group internally at GitLab approves all indirect reports to the CEO, the Total Rewards Team will notify payroll that the bonuses are ready for processing.