10 min read
You're not trying to win an argument online. You're trying to avoid wasting weeks on a role whose band can't clear your floor.
Check your resume for free while you build your range sheet so your title and level language match the postings you are using as comps. Recruiters compare your headline to the req before they compare your ask to the band.
If you haven't researched salary for your job title and city lately, start tonight with one metro and one title family. You'll widen the net after the first band feels honest.
And if the numbers still feel fuzzy, that's normal. You're triangulating, not finding a secret master price list. Don't let perfect data stall a good enough band you can defend out loud.
Cost of living isn't vanity math when you're weighing a move. Note rent, commute, and state tax quirks on the same tab as base pay so you're comparing lives, not just integers on a form.
Quick Wins
- Save the BLS metro row for your closest occupational match before you open more tabs.
- Write scope notes next to each posting comp: team size, ownership, on-call, travel.
- Set a walk-away number you would actually decline, not a fantasy anchor.
What job title and city mean in salary research
Employers pay for scope under a label, not for the label alone. A senior analyst in Dallas and a senior analyst in Chicago can share a title while the work and band do not line up.
City means the labor market that funds the role. For onsite work, that's the metro on the posting. For remote roles, it's often the employer's pay tier or hub named in the fine print.
Your research unit is title family plus metro plus level cues, not a single national average.
Government wage tables use occupational codes broader than startup job titles. You pick the closest match, then adjust for level language in the description.
Official U.S. wage data by area lives in the Bureau of Labor Statistics Occupational Employment and Wage Statistics program . Use it as the public baseline, then layer posting bands and recruiter answers on top.
Before: You search one title and copy the first range you see.
After: You record BLS percentiles for your metro row and mark which postings look like the same level as yours.
Total compensation still matters. Base salary research is step one; bonus, equity, and benefits belong on the same sheet so you do not compare apples to oranges in negotiation later. See how to negotiate salary using market data when you move from research to a counter.
Six steps to research salary by title and city
Work in order. Each step should change the numbers on your sheet or tell you to skip the role.
Step 1: Freeze the title you are pricing
Copy the exact title from the posting you care about. If you are exploring broadly, pick the title you will put on your resume header for that search lane.
List alternate titles recruiters use for the same work. Operations coordinator and operations specialist often sit in the same family even when the words differ.
Step 2: Pick the metro that funds the role
Onsite or hybrid roles usually map to the office city. Remote roles may map to a tier or hub named in the posting; if you cannot tell, plan to ask on the recruiter screen.
Pull the BLS metro or state table for that geography. Write the 25th, median, and 75th percentile for your closest occupational match. Screenshot or paste the row link on your sheet so you can find it again without a new search spiral.
Step 3: Collect three live posting comps
Save three active postings with the same title family in the same metro or pay tier. Note any published range, years of experience, and ownership verbs such as own, lead, or support.
Before: You treat every posting with the word senior as identical.
After: You tag each comp as likely IC, lead, or manager based on bullets, not adjectives.
Step 4: Adjust for scope you can defend
Add a column for scope: budget ownership, people leadership, on-call, travel, clearance, or licensing. A title match with heavier scope belongs higher in your band. Light scope at a flashy title should pull you toward the lower half of the BLS spread until your resume proves otherwise.
If your resume cannot support that scope yet, price yourself against the lower cluster even if the title sounds senior.
Step 5: Build low, target, and walk-away
Low is the number you would accept if the rest of the package and growth path are strong. Target is where your scope and comps overlap. Walk-away is where you decline without drama.
Copy-paste range sheet (fill brackets only):
Title family: [e.g., Product Marketing Manager]
Metro / pay tier: [e.g., Seattle-Tacoma-Bellevue]
BLS row (25th / median / 75th): [___ / ___ / ___]
Posting comp A range + scope: [___]
Posting comp B range + scope: [___]
Posting comp C range + scope: [___]
My low / target / walk-away: [___ / ___ / ___]
Notes from recruiter screen: [___]
Step 6: Refresh after the recruiter screen
Hiring managers add scope on calls that never made the public posting. Update your sheet when you hear on-call rotation, headcount ownership, or travel you did not see earlier.
I've screened offers where the candidate's range matched the title on paper but ignored a level code tied to years in Workday; the band was never going to stretch, and we both would have saved a week with sharper research up front.
Before: You name a number on the application form because the field is required.
After: You enter the top of your researched range only when the form forces it, and you explain your logic on the live screen.
For how employers use early numbers, read why salary expectations trigger early rejection before you type a figure into a portal.
Industry shape changes the band even inside one metro. Regulated employers often publish tighter levels. Startups may trade base for equity language you must parse separately on your sheet.
Union or collective agreements can cap certain public-sector titles. Private employers in the same city won't share that ceiling, so don't assume one posting defines the whole market.
When you're switching lanes, research the title you're targeting, not the title you're leaving. A coordinator band won't price a manager jump just because you've got years of tenure.
Keep a dated note on each source. Wage tables update on a schedule; postings turn over weekly. Your sheet should show when you last refreshed so you don't negotiate on stale comps.
Salary research mistakes that waste your time
- Mixing national averages with a single-city role without adjusting metro.
- Comparing a manager posting to IC wage rows because the words sound similar.
- Treating equity or bonus language as base salary without a separate line on your sheet.
- Using stale postings from last year when the req market moved.
- Ignoring cost of living when you might relocate; compare take-home and rent, not headline city prestige.
One aggregate number from a form widget is a starting point, not a signed offer.
Before: You research only after the offer lands and feel rushed.
After: You walk into interviews knowing your walk-away so silence is not pressure.
Do not confuse employer size with level. A mid-size company senior title can sit below a large company mid-level band when scope differs.
Networking chats aren't salary surveys, but they reveal band quirks. A peer might mention that offers at a given employer cluster at one internal level code. Write that down as context, not as your only number.
If a role demands travel or hybrid days you didn't budget for, adjust your walk-away. The same base can feel different when you're on the road every other week.
Make your resume match the band you researched
Salary research fails when your headline says senior and your bullets read like entry-level support. Align title, summary, and bullet one with the scope you used to price the role.
Run the free ATS check after you tune the headline so parsers still read your level line above Experience.
Score your job match on the posting you used as your best comp. If match is thin, your band argument will be thin too.
Need a one-line title bridge for a nonstandard internal title? Use the cover letter generator for plain mapping language, not for salary tables.
Research before you chase the role
A clean range sheet saves you from loving a job description that cannot pay your floor. BLS metro rows ground you in public data; posting comps ground you in what employers say this week.
Update the sheet after every recruiter call that changes scope. Your target number should move with the work, not with your nerves.
Keep one master sheet per title family you are actively pursuing. Duplicate it per metro when you expand geography.
When the band and your resume story line up, negotiation is a logistics talk, not a guessing game.
Share your range sheet with a trusted peer if you want a sanity check. They might spot a scope mismatch you normalized because you really want the job.
File the final version you used when you accept or decline. Next year's search starts faster when you are not rebuilding the template from memory.
Read more
Frequently asked questions
Open the U.S. Bureau of Labor Statistics Occupational Employment and Wage Statistics table for your metro, pick the occupational code closest to the posting title, and write down the 25th, median, and 75th percentiles. Then read three active postings for the same title in that metro and note any listed pay band or scope clues. Your working range should sit where those two sources overlap, not where a single blog roundup says you should be.
Treat a posted band as the employer's screening fence, not the whole market. Some companies publish wide bands to attract volume. Others publish tight bands tied to internal levels you cannot see yet. Cross-check the title against government wage tables and your own level notes before you treat the posting as the ceiling or floor.
Anchor on where payroll usually sits. Many US employers still tie offers to a hub city or a tier label in the posting. Research the title in that hub first, then note whether the description mentions national pay or location-based tiers. If the posting is silent, ask on the recruiter screen which geography drives the band before you lock a number into an application form.
Build your range before you spend time on a long assessment or take-home. You do not need a final ask number on day one, but you should know whether the role's scope and band fit your floor. After a screen, refresh the range if the hiring manager adds ownership or on-call detail that was not in the public posting.
