An independent federal pay resource. Not affiliated with OPM or any U.S. government agency.

Updated with current federal pay tables and reference data

Archive year. This is the 2016 GS-12 pay scale. Current year: 2026 GS-12.
$62,101 GS-12 Step 1 base salary (2016)
$80,731 GS-12 Step 10 base salary (2016)
O-5 Lieutenant Colonel Approximate military equivalent

2016 GS-12 base salary, all 10 steps

This is the nationwide base GS-12 salary schedule for 2016, before any locality adjustment. It shows annual salary, biweekly pay and hourly rate for every step.

Step Annual salary Biweekly pay Hourly rate Notes
Step 1 $62,101 $2,388.50 $29.76 -
Step 2 $64,171 $2,468.12 $30.75 -
Step 3 $66,241 $2,547.73 $31.74 -
Step 4 $68,311 $2,627.35 $32.73 -
Step 5 $70,381 $2,706.96 $33.72 -
Step 6 $72,451 $2,786.58 $34.72 -
Step 7 $74,521 $2,866.19 $35.71 -
Step 8 $76,591 $2,945.81 $36.70 -
Step 9 $78,661 $3,025.42 $37.69 -
Step 10 $80,731 $3,105.04 $38.68 -
← GS-11 Calculate GS-12 pay GS-13 →

Who is a GS-12?

Typical role. Experienced professionals and working-level experts. This is the most common GS grade for mid-career federal employees. Many policy, acquisition, engineering and scientific specialists sit at GS-12.

Minimum qualifications. One year of specialized experience at the GS-11 level.

Career progression. Competitive promotion to GS-13 requires a GS-13 vacancy and selection on merit.

Step-increase waiting periods

Within-grade step increases happen automatically as long as your performance is acceptable.

  • Step 1 → Step 2 52 weeks
  • Step 2 → Step 3 52 weeks
  • Step 3 → Step 4 52 weeks
  • Step 4 → Step 5 104 weeks
  • Step 5 → Step 6 104 weeks
  • Step 6 → Step 7 104 weeks
  • Step 7 → Step 8 156 weeks
  • Step 8 → Step 9 156 weeks
  • Step 9 → Step 10 156 weeks

GS-12 locality-adjusted salary for every pay area

Most federal employees receive locality pay on top of their base salary. The table below shows GS-12 Step 1 and Step 10 for every OPM locality pay area in 2016, sorted from highest to lowest adjustment.

Locality pay area Adjustment GS-12 Step 1 GS-12 Step 10
San Jose-San Francisco-Oakland 35.75% $84,302 $109,592
New York-Newark 29.20% $80,234 $104,304
Houston-The Woodlands 29.11% $80,179 $104,232
Los Angeles-Long Beach 27.65% $79,272 $103,053
Hartford-East Hartford 26.20% $78,371 $101,883
Chicago-Naperville 25.44% $77,899 $101,269
Boston-Worcester-Providence 25.19% $77,744 $101,067
State of Alaska 25.16% $77,726 $101,043
Washington-Baltimore-Arlington 24.78% $77,490 $100,736
San Diego-Chula Vista-Carlsbad 24.73% $77,459 $100,696
Detroit-Warren-Ann Arbor 24.40% $77,254 $100,429
Denver-Aurora 22.93% $76,341 $99,243
Sacramento-Roseville 22.61% $76,142 $98,984
Seattle-Tacoma 22.26% $75,925 $98,702
Philadelphia-Reading-Camden 22.22% $75,900 $98,669
Minneapolis-St. Paul 21.30% $75,329 $97,927
Miami-Port St. Lucie-Fort Lauderdale 21.05% $75,173 $97,725
Dallas-Fort Worth 21.04% $75,167 $97,717
Portland-Vancouver-Salem 20.69% $74,950 $97,434
Atlanta--Athens-Clarke County--Sandy Springs 19.58% $74,260 $96,538
Cleveland-Akron-Canton 18.87% $73,819 $95,965
Cincinnati-Wilmington-Maysville 18.76% $73,751 $95,876
Milwaukee-Racine-Waukesha 18.39% $73,521 $95,577
Raleigh-Durham-Cary 17.94% $73,242 $95,214
Columbus-Marion-Zanesville 17.41% $72,913 $94,786
Buffalo-Cheektowaga-Olean 17.31% $72,851 $94,706
Phoenix-Mesa 17.12% $72,733 $94,552
State of Hawaii 16.81% $72,540 $94,302
Richmond 16.76% $72,509 $94,262
Pittsburgh-New Castle-Weirton 16.68% $72,459 $94,197
Dayton-Springfield-Kettering 16.50% $72,348 $94,052
Huntsville-Decatur 16.37% $72,267 $93,947
Indianapolis-Carmel-Muncie 14.92% $71,366 $92,776
Laredo 14.59% $71,162 $92,510
Las Vegas-Henderson 14.55% $71,137 $92,477
Colorado Springs 14.52% $71,118 $92,453
Austin-Round Rock-Georgetown 14.51% $71,112 $92,445
Tucson-Nogales 14.51% $71,112 $92,445
Albany-Schenectady 14.49% $71,099 $92,429
Kansas City-Overland Park-Kansas City 14.49% $71,099 $92,429
St. Louis-St. Charles-Farmington 14.49% $71,099 $92,429
Harrisburg-Lebanon 14.47% $71,087 $92,413
Charlotte-Concord 14.44% $71,068 $92,389
Davenport-Moline 14.43% $71,062 $92,380
Palm Bay-Melbourne-Titusville 14.42% $71,056 $92,372
Albuquerque-Santa Fe-Las Vegas 14.37% $71,025 $92,332
Rest of U.S. 14.35% $71,012 $92,316

Top and bottom GS-12 localities in 2016

About the GS-12 pay scale

GS-12 is part of the 2016 General Schedule, the pay system used by roughly 70% of civilian white-collar federal employees. Experienced professionals and working-level experts. This is the most common GS grade for mid-career federal employees. Many policy, acquisition, engineering and scientific specialists sit at GS-12.

How step increases work

Within-grade step increases happen automatically as long as your performance is acceptable. You move from Step 1 to Step 4 one year at a time, from Step 4 to Step 7 every two years, and from Step 7 to Step 10 every three years. Managers can award a one-time quality step increase (QSI) to accelerate progression for employees whose performance is rated outstanding.

Browse other grades in 2016

GS-12 questions for 2016

  • What is the starting salary for GS-12 in 2016?
    The base starting salary for GS-12 in 2016 is $62,101 at Step 1. With the highest locality adjustment in 2016 (San Jose-San Francisco-Oakland, 35.75%), GS-12 Step 1 can reach significantly more.
  • How long does it take to reach GS-12 Step 10?
    If you never get a quality step increase, it takes roughly 18 years to move from Step 1 to Step 10. Steps 1-4 take one year each, Steps 5-7 take two years each, and Steps 8-10 take three years each. A quality step increase can shorten that timeline by one year per QSI.
  • How do I get promoted from GS-12 to GS-13?
    Promotion from GS-12 to GS-13 generally requires one year of specialized experience at the GS-12 level, and a competitive selection into a GS-13 vacancy. Open the GS-13 pay scale to see the next grade's salaries.
  • What is the military equivalent of GS-12?
    GS-12 is roughly equivalent to O-5 Lieutenant Colonel. These equivalents are approximate. The GS and military pay systems do not map one to one.