Getting Your Hands On Real State Pay Data

Most people trying to look up state government pay just hit the first search result and get dumped onto some clunky portal with terrible search filters. The Maryland government salary data for 2024 is scattered across multiple systems depending on what department you are pulling from, and if you are doing serious compensation analysis you need to understand where the gaps are before you trust any numbers you find. The Maryland Department of Budget and Management publishes compensation data through its main employee compensation search tool, and the Maryland State Personnel and Pensions System (MSPS) has its own salary tables that overlap with it in ways most analysts miss. Here is how I actually pull this data without wasting half a day on broken exports. I started with the DBM official employee compensation search, filtering by fiscal year 2024. The export gives you roughly 50,000 rows if you pull the full roster. The columns they include are name, agency, position title, step or grade, base salary, and a couple of other standard fields. What they do not include in that initial export is the total compensation breakdown with benefits, and they also split agency names inconsistently so you end up with duplicate entries for merged departments. I wrote a quick Python script using pandas to normalize the agency names against the official Maryland agency code list DBM publishes separately, and merged on that instead of the text field. That cut my duplicate rate from about 12% down to under 2%.

One thing that trips people up regularly is that the base salary number in the 2024 export includes retroactive pay adjustments for some agencies but not others. The Education and Corrections departments flagged theirs with a separate supplemental row, while most other agencies just folded it into the base figure. If you are comparing median salaries across departments without accounting for this, your variance analysis will be off by several percentage points on the high end. I spent about three hours manually cross-referencing the export against the published state salary schedules for FY2024 to verify whether positions were actually paid within their designated grade bands. Around 7% of records showed salary ranges that did not match the published schedule for that specific job code, and about half of those were legitimate special appointments with documented exceptions. The other half were simply data entry errors where the employee's hire date and current step did not align with the grade band in the system. If you are building a model on this data, I would recommend adding a flag column for out-of-band salaries and either excluding them or noting them separately rather than letting them skew your distribution curves. The MSPS salary scheduling tables are actually the more reliable source for understanding what a position should pay versus what someone is actually making. Those tables break down by job family, grade level, and step increments with the exact effective dates for each increase. Most people treat these as reference material and never actually cross-check them against the compensation export, which means they miss structural pay compression issues that show up clearly when you overlay the two datasets. I pulled the MSPS schedule tables for 2024 and mapped every record in the compensation export to its corresponding scheduled step, then calculated the deviation percentage. Positions in the Health and Human Services cluster showed the most compression, with roughly 18% of employees sitting below their scheduled step minimum, while the Judiciary and General Assembly sides were well within band more consistently.

Another edge case I ran into involves joint appointments where an employee splits time between two agencies. The export lists them once under the primary appointing agency, but their salary is actually funded partially from the second agency. If you are aggregating by department for budget analysis, you will overcount spending in the primary agency and undercount in the secondary one. I found about 400 of these cases by matching employee IDs across agency groupings, and the workaround was straightforward once you have the unique employee identifier. I built a lookup table that flagged dual-appointed records and allocated the salary proportionally based on the funding percentages listed in the supplementary payroll notes DBM posts on a separate page. For anyone trying to calculate meaningful medians or percentiles, the biggest distortion comes from excluding the executive and legislative branches from your baseline comparisons. Their pay structures operate under different statutes and include allowances that inflate the raw salary figures. When I stripped those branches out and recalculated medians by job family, the spreads narrowed considerably and the patterns made more practical sense. The corrected medians for administrative and clerical tracks came in roughly $4,200 to $7,800 lower than the unadjusted figures, which is a meaningful difference if you are benchmarking against private sector equivalents or building internal equity analyses. Data stays available through the DBM compensation portal for about 18 months after the fiscal year closes, and the 2024 dataset was last updated in early spring of that year with a final reconciliation run. If you need to reproduce the analysis later, you should archive the exact export files and the normalized agency code mapping table, because the portal interface changes occasionally and the raw download format has shifted between yearly releases. I keep a versioned copy of the export schema documented so I can track whether a re-download five months later still matches the original column structure.

Get the Full Details

2024 Maryland State Salaries – USM COLA & Salary Increase History – HXDM
2024 Maryland State Salaries – USM COLA & Salary Increase History – HXDM

If you want to dig deeper into individual position histories, the state also maintains promotion and separation records that link back to the same employee ID. Pulling those together lets you see career progression timelines within each agency, which is where the real patterns show up. Tenure-adjusted salary growth rates vary significantly between the Department of Public Safety and Corrections and the Department of Budget and Management, with the former showing steeper mid-career jumps and the latter flattening out faster at higher grades. Without the movement data, the salary snapshot alone tells you almost nothing about attrition risk or competitive positioning.