Understanding the UNC Salary Database

The University of North Carolina system publishes employee compensation data through its public records portal. Most people looking at this are trying to understand how much different roles pay, compare departments, or figure out if someone's compensation is competitive. The database itself is a collection of quarterly payroll reports covering all UNC system campuses. I spent about six months cleaning this data for a compensation benchmarking project. What I learned would have saved me weeks if someone had just documented the quirks upfront.

Getting Started With the Data

You need to request the data through UNC's public records request system. Each campus maintains its own subset, so you will likely need to file requests for multiple universities if you want system-wide coverage. The typical turnaround is two to three weeks depending on campus workload. Some campuses like Chapel Hill respond faster than regional campuses that lack dedicated staff for data requests. Once you have the files, you are looking at CSV exports with fields like employee name, department, position title, base salary, benefits, and pay period. The structure changes slightly between campuses because each one uses different internal coding systems for departments and positions.

Unlocking The Secrets Of The Unc Salary Database A Comprehensive Analysis Of The Universitys Compensation Package

The raw numbers alone tell only part of the story. What actually matters for analysis is how you normalize the data across campuses and time periods. A person listed with a base salary of eighty thousand dollars in one year might have received a summer supplement or research stipend that inflated their reported compensation. Without understanding the file structure, you will misread those numbers as higher annual pay when they are really split across multiple payment types. I ran into a specific problem early on where several faculty members appeared to have zero salary in certain quarters. At first I thought the data was broken. It turned out those individuals were on research grants that paid outside the regular payroll cycle and were reported under different classification codes in other quarters. My workaround was to cross-reference employee IDs across all four quarterly files and merge records by unique identifier rather than by name. Names duplicate constantly. Employee IDs are consistent.

Get the Full Details

Salary Analysis Form - Comprehensive Evaluation For Compensation ...
Salary Analysis Form - Comprehensive Evaluation For Compensation ...

Common Pitfalls in Analysis

Most people treat the published salary figures as total compensation. They are not. The database shows base salary and sometimes additional pay components, but it does not include employer contributions to retirement, health insurance premiums, or deferred compensation arrangements. If you are using this data to benchmark against private sector salaries, you will underestimate the total package by roughly twenty to thirty percent for benefit-heavy positions. Another issue is position title standardization. UNC uses hundreds of variations for what is essentially the same job. "Assistant Professor of Biology" and "Asst Prof Biol" might appear in the same dataset from the same campus. You will need to build or purchase a title-mapping table before doing any meaningful comparison. I built my own using a combination of keyword matching and manual review of the top two hundred most common titles, which took about forty hours but paid for itself immediately when the automated portion handled the rest. The data also has gaps. Not all employees are included. Student workers, some contingent faculty, and employees on certain types of appointments may not appear in the standard quarterly reports. If your analysis depends on capturing every employee type, you will need to file supplementary requests or work with the campus human resources office directly.

What the Data Can and Cannot Tell You

For internal equity analysis within a single department, the data is quite useful. You can calculate salary ranges, identify outliers, and spot patterns around gender or race if you combine it with demographic fields that some campuses include. For cross-institutional comparisons, the noise increases significantly because promotion timelines, cost of living differences between campuses, and local budget constraints all affect compensation in ways the raw numbers do not capture. One counter-intuitive finding from my analysis: departments with the most transparent salary practices were not necessarily the ones with the fairest outcomes. Several departments used the public data to justify paying certain roles less than comparable institutions, citing local market conditions that did not actually hold up under scrutiny. The database reveals what people are paid, not whether that pay is justified. For most practical purposes, spending two or three days properly cleaning and normalizing the data will give you results that are far more reliable than a surface-level read. The bottleneck is always the title standardization step. If you skip it, your analysis will have enough errors to be misleading without being obviously wrong.