I'm looking for a comprehensive answer to this question, not short answers that just tell me one piece of the equation.

The ideal answer should include:

  • How can I determine the average salary rate for my position?

  • What statistics affect the sort of salary I can ask for? (location, skillset, experience, education, etc)

  • Do employment benefits play a role in the salary amount I should ask for?

  • 73
    I like this question, if we can get this one answered well, with canonical sources and references, it should be possible to point many inevitable future questions at this one.
    – Mark Booth
    Commented Apr 23, 2012 at 17:20
  • 5
    Intersting link: infohost.nmt.edu/~shipman/org/noel.html Commented Apr 23, 2012 at 17:35
  • 7
    Might this be better split into three questions: "What data or tools exist to determine average salary for a given position?", "What factors should I consider when calculating the salary I ask for?", and "How do employment benefits relate to he salary I can ask for?" I feel that different people might be able to answer each one, but no one would be able to adequately cover all of them in a single answer to one question. Commented Apr 23, 2012 at 17:40
  • 4
    @ThomasOwens Ye have little faith. :) But I actually think that addressing them together allows for useful generalizations (including searching patterns) that answering each specifically might produce too localized results.
    – jcmeloni
    Commented Apr 23, 2012 at 18:03
  • 2
    You start with the premise that a reasonable salary is what is something around the average salary for your position. This might come short-sighted I am afraid. It binds you to ask what everyone else is getting instead of asking what you think you deserve for your skills, dedication, knowledge, etc. If your professional performance is below average then sticking to what is customary to pay for your kind of job is just fine. But if you think you have ambition and talent for above average performance it is a different cup of tea. You'd need advertise your advantages, show clear and powerful case
    – drabsv
    Commented Jun 6, 2012 at 21:49

5 Answers 5


How can I determine the average salary rate for my position?

There are a few ways to analyze this:

  • Use salary websites such as Glassdoor.com, Indeed.com or bls.gov (for jobs in the USA). Salary websites will usually take into account your job title, years of experience, and location.

    Keep in mind that they will sometimes lump benefits in with the salary figure shown, so the dollar amount presented may be larger than what you should ask for depending on what benefits the company offers.

  • Surveying people (colleagues/recruiters) in the same locality or even company. To avoid asking someone their salary directly (because that is not polite), you can ask them what range someone with their skillset/experience would typically get.

  • Interviewing and actually getting offers. This would be before you negotiate with them; if you have multiple written offers, it is easy to compare.

What statistics affect the sort of salary I can ask for?

Location: This is one of the biggest things that affects the sort of salary you can ask for. Some factors that play a role include:

  • Supply/Demand - A place that has a high demand and a low supply will obviously pay more than a location with a low demand and a high supply.
  • Cost of Living - Some cities have a very high cost of living, so many jobs there will pay a higher salary than a place with a low cost of living.
  • Taxes - A company is likely to pay you a lower rate in a location that has lower taxes. For example, in the US there are 7 states where you don't pay state taxes, or if you are working as an expatriate in some countries, you may not have to pay taxes at all.

Experience: Someone with a lot of experience is in higher demand than someone with no experience, so they can ask for a higher salary since multiple companies are usually competing for their skills.

Education: Your degree does not entitle you to have a higher salary rate, however the degree is supposed to be proof that you have the knowledge and skills typically required for a job. As with experience, someone with a degree is usually in higher demand than someone without a degree, and it can often be used to negotiate a higher salary.

Skill Set: Companies want someone with skills to match the job they're hiring for, so if you have the exact skills they're looking for, you might be able to ask for a higher rate than if you only had related skills.

In addition, some skills are rarer to find than others, so if you have a rare language on your resume, then you may be able to ask for more than if you had a common one.

Telecommuting: You may get less money since some companies factor in cost-of-living/travel expenses into the salary

Company Size: Larger corporations and government agencies, especially ones with unions, tend to have the best benefits packages although this usually comes with a lower salary.

Smaller companies will tend to offer fewer benefits but will often compensate for this with higher pay or other perks

Do employment benefits play a role in the salary amount I should ask for?

Absolutely. Here are some common benefits which often affect the dollar amount of your salary


  • In some countries, healthcare is provided by the government, so that can affect your salary
  • If you work as an independent contractor, you may get more money since the company is not paying for your healthcare.
  • Some companies pay more for health benefits than other companies so you may have to pay more out of pocket even if you have a higher salary

401k matching/stock options

  • Not every company provides these benefits

Earned Time off/Vacation

  • For contractors or people with no ETO, there is a dollar amount attached to each time you take a day off
  • If you have more time off available, this can be factored into the salary since you are, in a sense, being paid to not work.


  • A small number of employers offer Defined Benefit pensions (pension is calculated on number of years of service x a multiplier)
  • Some countries enforce pension contributions - which impacts your take home pay
  • 9
    Another employment benefit that might be considered is the option to work from home x amount of days per week etc
    – dreza
    Commented Nov 16, 2012 at 7:42
  • 6
    I recently accepted an offer with a salary a good deal lower than what I wanted, largely based on the benefits package. It is ridiculously better than what I have now, so it must always be considered when taking an offer. +1 Commented May 24, 2013 at 15:52
  • 1
    @Atif, People don't mind others knowing their personal info. Address, phone number, email, facebook account and etc. Everything is personal information.
    – Pacerier
    Commented Jul 2, 2015 at 7:35
  • 4
    "so if you have a rare language on your resume, then you may be able to ask for more than if you had a common one." Small point: this only holds true if the skill is at least tangentially related to the job. Being fluent in Swahili is unlikely to matter much while a good grasp of Chinese might be a bonus when applying to an international company, even if they don't (currently) have any Chinese clients.
    – Lilienthal
    Commented Sep 4, 2015 at 10:16
  • 3
    @Lilienthal The OP is a software engineer, and so is the answerer. So it is safe to assume that programming languages are being discussed (and the cited phrase is thus true). I would recommend that "language" be replaced with "unique skill" or something similar, since "language" is field-dependent and not generalizable to all professions. Commented Sep 3, 2017 at 15:40

Indeed.com has a pretty good salary calculation tool. This would give you a decent estimate for many career areas. For example, it shows $118,000 as the average for a C# programmer in NYC compared to $75,000 for one in Minot, ND with a US average of $92,000. The data comes from job listings and other publicly available sources. You can even include additional search keywords to find estimates for degrees and experience but this is a bit more tricky.

Beyond this, it will tend to get company/organization specific. You can use sources like Glassdoor to research company specific salary and benefit information as well as getting some insight into the company. This will tell you if the company you're applying to is paying average or above or below average.

Benefits should be part of your salary consideration. This also varies from company to company. Larger corporations and government agencies, especially ones with unions, tend to have the best benefits packages although this usually comes with a lower salary. Smaller companies will tend to offer fewer benefits but will often compensate for this with higher pay or other perks. You'll have to weigh which best fits your needs.

  • I have trouble believing that the US average for C# developers is $92k. That seems a little high to me, even 75k for ND sounds a little high for the average. Commented Apr 24, 2012 at 1:53
  • 15
    I am telling you that I know c# developers who have 10+ yrs experience in Pittsburgh who are still hard pressed to find a job that will pay $74k/yr. On that note, $250k can build you a large 4 bedroom/2.5 bath house on a 1/2 acre lot so it is certainly a very cheap place to live. I promise you that I am living more comfortably than a developer in NYC making $118k/yr. Commented Apr 24, 2012 at 11:00
  • 3
    @maple_shaft Some salary websites will include benefits in the actual figures shown, which makes the salaries higher than the actual dollar figure. I know one of the two big ones I looked at a while back did that, but I can't remember if it was Indeed.com or not
    – Rachel
    Commented Apr 24, 2012 at 18:28
  • 7
    You should all move to Dallas. It's about as cheap as Pittsburgh, and we are begging for experienced developers. With 10 years experience 100K is not hard to find. I know lots of 30-something senior devs (admittedly very strong) getting $120K+. Commented Apr 24, 2012 at 19:52
  • 13
    The problem with these is that they don't seem to take experience into account. I do some C# development, some database development in NYC, but I'm only 26 and have 4 yrs exp. It's difficult to tell how I'm doing relative to everyone else given I don't know what the experience level of the people that hold those salaries are.
    – Jason
    Commented Jun 5, 2012 at 17:15

Payscale.com has a salary calculation wizard which lets you calculate how much you are worth based on a few factors. See payscale.com.


The first thing you should do is find out what other people in similar situations are earning. When I say "similar", I mean that the work is similar, they live in the same city (or near it) as you, they have been in that role for about the same amount of time as you, they have similar experience as you. Of course it might be difficult to find many people who fit this exactly, so you'll probably end up with an approximation. You can start with your own organization, if you don't feel uncomfortable asking your coworkers how much they make. Talk to other people you know who work in other companies to get an idea of how things are different in other places. You could also talk to HR. Sometimes they will have a job grade matrix that they will share and it will show you the different title, job grades, and pay ranges (where I am that information is available to all). That will be a good start for a ball-park figure.

As others have mentioned, there are websites such as Glassdoor that can also help you figure out a good starting figure to work with.

In general, it seems that the easier it is for many people to qualify for the job, the harder it will be to ask for an above-the-broader-industry-average salary.

If you possess the exact skillset/experiences an employer wants, you can ask for more than average, especially if it's a specialized or niche skill set. If you don't possess those skills, it will obviously be harder for you to justify asking for that high a salary.

I think for many jobs, education won't let you ask for that much extra salary, unless it's a very specialized type of role that would already require an advanced degree in a subject related to the job (such as computer vision, AI, etc...) and in that case the job might be niche enough to already let you ask a higher-than-average salary.

As for benefits, I would imagine that if an employer offers exceptionally good benefits then it might be expected they will not pay as well as others. Similarly, if an employer offers very few benefits you could ask for a higher salary to make up the difference in benefits that you would have gotten elsewhere.


Beware of using sites like Glassdoor as anything more than an indication.

Generally speaking things that tend to increase the salary you can command include:

  • Management experience of any sort, project or other people
  • Years of experience with key technologies
  • Experience with rare technologies/skills
  • Having worked on similar projects in the past
  • Presenting yourself as confident and mature
  • Simply asking for more
  • Being able to wait for the right opportunity (e.g. not unemployed or needing to move for personal reasons)

This is why sites that show averages and upper/lower limits are not that useful. You may have average experience but if you pitch it right it can sound like more, for example. You can find similarities between old projects and the new company's products to boost your value.

Beware of benefits too. Stuff like free coffee is basically worthless. Extra paid holidays are hard to put a value on, it's a personal decision. That works both ways of course, if the salary you want is more than the company is willing to pay you can suggest extra paid holiday as an alternative.

Be particularly aware of fake benefits like parking spaces. Somewhere to park is a basic requirement, like having a desk or bathroom in the building.

Just remember that there is no "right" salary for you, only what you can get. You may think you are only worth $100k based on experience and skills but there is no reason why you can't apply for a $150k job and get it if you meet the requirements and can do the work. So never let your current salary or perceived worth hold you back, and don't be afraid to say no if they low-ball you.

To determine where to start speak to some recruiters, see what they think is reasonable, and then increase it to find a starting point. Remember that they get paid when you get hired so they are motivated to make you a bargain for someone.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .