ctrl+F) is taken as the metro region. If none of the cities from our Numbeo database are found in the search, then the "far from metro region" procedure applies (see next).
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 people ops 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 local employment market rates.
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 market rates). 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 market 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.
As a natural extension of the Compensation Principles outlined above, and our commitment to transparency, sharing, efficiency, directness, and boring solutions (amongst other values), we developed a Compensation Calculator that we are rolling out for those roles in which we have the most contributors, and thus for whom the question about "what is fair compensation" comes up most frequently.
The goals of the calculator are:
As with all things at GitLab, the compensation calculator is a constant work in progress. Please send an email to
ernst@ company domain if/when you find a big difference between what the calculator suggests vs. what market data indicates. Please make sure to include all relevant links and data.
Your compensation =
NYC benchmark x
(0.25 + Rent Index + Hot Market Adjustment) x
Level Factor x
Experience Factor x
Contract Type Factor
NYC benchmarkis typically a median employee salary for the role in New York, which we determine using various sources including crowdsourced self-reported compensation data from Payscale. The NYC benchmark used in each position is available in the
jobs.ymlfile in this website's repo.
Rent Indexis taken from Numbeo, which expresses the ratio of cost of rent in many metro areas to the average cost of rent in New York City (i.e. Rent Index in New York = 1.00). As explained in more detail below, we add 0.25 to this regardless of location, which reflects the fact that we hire better than median performers. In point 7 of Compensation Principles it is mentioned what to do if your metro area is not listed. The full list of rent indices used is stored in the
Hot Market Adjustmentis an adjustment to recognize that "hot markets" tend to have a Rent Index that is trailing (i.e. lower than) what one would expect based on compensation rates in the area. It is currently based on the US Census Bureau's top 15 of fastest growing cities larger than 50,000 residents. We found that hot markets were better represented by high growth in part of the suburbs than by growth of the (larger) city itself. We speculate that in the short term the existing housing supply in the core of the metro area is not flexible, so growth shows up in the suburbs. We add a factor of 0.1 for every suburb mentioned in the list for a given metro area. As an example, Georgetown TX and Pflugerville TX are in the top 15 because Austin TX is growing, so we add 2 x 0.1 to Austin's Rent Index. We decided on using a constant factor instead of (for example) the actual rate of growth of the city since we are trying to capture the truly top hot markets while not overrepresenting the accuracy of the approach.
Level Factoris currently defined as junior (0.8), intermediate (1.0), senior (1.2), or lead (1.4)
Experience Factorfalls between 0.8 - 1.2
Contract Type Factordistinguishes between employee or contractor, and can be a different factor in each country; see below for further explanation. The full list of contract type factors is stored in the
See the calculator in action for example for the Developer role, on the Developer job description.
In developing the compensation formula above, we looked at the compensation of our team members which had been set in the past (without the formula), and found out that there was a statistically significant correlation between compensation and the factors that are now in the formula. We purposefully chose to look for correlations with metrics that are probably causal and definitely relevant in people's lives (the rent!). This also has the advantage of letting us work with data that is readily available publicly, as opposed to trying to scour the web for market compensation rates for all roles in all locations. Perhaps surprisingly, there was a stronger correlation between compensation and rent index than with the more general cost of living index available through Numbeo (or the cost of living with rent index, for that matter); and so we moved ahead with the Rent Index.
It was a small step to go from the initial linear regression to picking the coefficients that are now in the formula, except that we 'discovered' that an offset was needed in the Rent Index to make things work (i.e. to have the formula 'predict' compensations that were in line with current actual compensations). As a consequence of this offset of 25%, for an employee in New York their median compensation will be 25% higher than what the New York benchmark would have suggested. This probably reflects that we generally hire better than 'median' performers.
The contract type factor helps to make the distinction between an employee and a contractor for those countries where we offer both contract types. For example, a typical contractor may have to bear the costs of their own health insurance, social security taxes and so forth, leading to a higher compensation for the contractor. As another example the costs also vary for employees between countries, for example if there are more government mandated programs, this commonly leads to more costs for the employer and a lower pay for the individual. The contract type factor is meant to capture these differences.
This list will be expanded as we gain more experience with the calculator and as we are able to offer employee contracts (as opposed to only contractor contracts) in various countries. Visit our contracts page to learn more about the different types of contracts we offer.
|Rest of World||–||1.17|