FirstHR

Payroll Ledger: What It Is and How to Create One

What a payroll ledger is and how to build one. Every column you need, a worked example with the employer tax rows most homemade ledgers leave out.

Nick Anisimov

Nick Anisimov

FirstHR Founder

Payroll
23 min

Payroll Ledger

Every column you need, the employer-tax rows nobody includes, and how to build one from scratch

The first payroll ledger I built was a Google Sheet with six columns: name, hours, rate, gross, taxes, net. It felt complete. It balanced. Every number tied to every other number.

It was also wrong in a way that took me a full quarter to notice. I had built a ledger that tracked what came out of my employees' paychecks and nothing that tracked what payroll cost me. There was no column for my matching Social Security, none for my matching Medicare, none for unemployment tax. So when I budgeted from that sheet, I was underestimating my own payroll cost by roughly eight percent, every month, quietly.

A payroll ledger is not hard to build. It is easy to build badly, because the columns you omit are invisible until they are expensive. This guide covers what a payroll ledger is, how it differs from the register and journal and general ledger people confuse it with, exactly which columns it needs including the ones nobody includes, a fully worked example, how to reconcile it, and when the spreadsheet stops being good enough.

TL;DR
A payroll ledger is the cumulative record of what you pay employees over time: one row per employee per pay period, capturing hours, gross pay, every deduction, employer taxes, and net pay, with running year-to-date totals. The columns most homemade ledgers omit are the employer tax columns, which is why so many small businesses underestimate what payroll actually costs them. Keep the ledger at least four years to satisfy both FLSA and IRS retention.

What Is a Payroll Ledger?

A payroll ledger is the cumulative record of what a business pays its employees over time. One row per employee per pay period, showing what they earned, what was withheld, what you owed on top, and what they actually took home.

Definition
Payroll Ledger
A payroll ledger is a running record of employee compensation across pay periods. Each entry documents a single employee for a single pay period: hours worked and pay rates, gross pay broken out by earning type, each deduction withheld from wages, the employer payroll taxes owed on those wages, and the resulting net pay. Unlike a pay stub or a single pay run report, a payroll ledger accumulates over time and carries running year-to-date totals, which makes it the operational record behind tax filings, audits, and any question about historical pay.

The word that matters in that definition is cumulative. A pay stub tells you about one paycheck. A payroll ledger tells you about a relationship over time, and it is the accumulation that gives it its value: the year-to-date totals that drive your quarterly filings, the history you produce when someone disputes a paycheck from eighteen months ago, and the cost trend that tells you what your team actually costs.

The Equation Every Ledger Row Must Satisfy
Gross Pay − Employee Deductions = Net PayEmployer taxes sit outside this equation. They are your cost, not a deduction from their pay, and they are the columns most homemade ledgers forget
WHAT THEY EARNEDGrossRegular, overtime, bonus
WHAT CAME OUTDeductionsTheir taxes, benefits, garnishments
WHAT IT COST YOUEmployer taxesOn top of gross, not inside it

Payroll Ledger vs Register vs Journal vs General Ledger

These four terms get used interchangeably across the internet, including by payroll vendors who should know better. Here is the actual distinction, which mostly comes down to what each one is organized around.

Payroll ledger
What it is: The cumulative, ongoing record of compensation across pay periods. It carries running year-to-date totals and is organized so you can see one employee over time.
When you use it: Your master record. This is what you produce in an audit and what you reconcile against.
Payroll register
What it is: A snapshot of one specific pay run: everyone who got paid this period, with gross, deductions, and net. It is a single period, all employees.
When you use it: The per-run report. Many vendors use ledger and register interchangeably, which is why the terms feel muddy. The practical difference is the time axis.
Payroll journal
What it is: The accounting entry: the debits and credits that record payroll in your books. Wage expense debited, cash and tax liabilities credited.
When you use it: The bridge between payroll and accounting. It speaks in debits and credits rather than in hours and rates.
General ledger
What it is: Your company's complete accounting record across every account, not just payroll. Payroll is one of many things that posts into it.
When you use it: The destination. Payroll data eventually summarizes into the GL as journal entries. The payroll ledger is the detail behind that summary.

If you take one thing from this section: the register is a period, the ledger is a history, the journal is an accounting entry, and the general ledger is the whole company's books. They describe the same underlying money at different levels of aggregation and from different vantage points. A small business genuinely needs the ledger. It gets the register automatically from any payroll system. It needs the journal only when the payroll data has to land in accounting software.

The Columns You Actually Need

A useful payroll ledger has six families of columns. Miss any one of them and the ledger becomes decorative rather than useful.

Employee identifiersName, employee ID, and the pay period covered. Sounds obvious, gets omitted, and makes the ledger useless the moment two people share a first name.
Hours and pay basisRegular hours, overtime hours, and the rate for each. If someone is salaried, record the basis anyway. The FLSA requires you to record the basis on which wages are paid.
Gross pay, broken outRegular earnings, overtime earnings, bonuses, and commissions as separate columns. A single gross figure hides the detail you will need in a wage dispute.
Employee deductionsFederal income tax, Social Security, Medicare, state and local tax, benefit premiums, retirement contributions, garnishments. Each on its own line, not lumped together.
Employer taxesYour matching Social Security and Medicare, FUTA, and state unemployment. These are the columns almost every homemade ledger leaves out, and they are what payroll actually costs you.
Net pay and running totalsWhat actually hit their account, plus year-to-date columns. The YTD gross is what tells you when someone crosses the Social Security wage base and your matching obligation stops.

The single most consequential design decision is breaking things out rather than lumping them together. One gross column is easier to build and useless in a dispute. Regular, overtime, bonus, and commission as four columns takes ten extra seconds and answers the question a wage claim will actually ask. The same logic applies to deductions: a single deductions column tells you nothing, while a column per deduction traces each one back to the authorization that permits it.

The Employer Tax Columns Nobody Includes

This is the section I wish someone had put in front of me before I built that first spreadsheet. Employer payroll taxes are not deductions. They are not subtracted from anyone's pay. They are an additional amount the business owes on top of gross wages, and if your ledger does not have columns for them, your ledger does not know what payroll costs.

Four employer taxes belong in the ledger for a typical small business.

Employer TaxRate and BaseWhat to Watch
Social Security (employer share)6.2% of wages, up to the annual Social Security wage base. For 2026 the wage base is $184,500.The obligation stops for an employee once their year-to-date wages cross the wage base. This is why the YTD gross column matters: without it you keep withholding and matching past the cap.
Medicare (employer share)1.45% of all wages, with no wage base limit.There is no cap, so this one never stops. Note also that the additional 0.9% Medicare tax on high earners is withheld from the employee only. There is no employer match on it.
FUTA (federal unemployment)6.0% on the first $7,000 of each employee's wages, commonly reduced to an effective 0.6% by the state unemployment credit.Paid entirely by the employer and never withheld from employee wages. Reported annually on Form 940 rather than quarterly.
SUTA (state unemployment)Varies by state and by your experience rating.Your rate is not fixed. It moves based on your claims history, which means the same wage costs different employers different amounts.

Per IRS Topic No. 751, the Social Security rate is 6.2 percent each for employer and employee, and the Medicare rate is 1.45 percent each, with no wage base limit on Medicare. Wage bases update annually, so treat any figure here as something to verify each January rather than hard-code forever.

Your Payroll Cost Is Not Your Gross Payroll
If you budget from gross wages, you are budgeting from a number that is roughly 8 to 10 percent too low. On top of every dollar of gross pay, the employer owes 6.2 percent Social Security, 1.45 percent Medicare, plus FUTA and state unemployment. A $2,150 paycheck costs the business closer to $2,330. Multiply that gap across a team and a year and it is a real number, and it is the number you should be planning hiring against. The FICA tax guide covers both sides of the obligation in detail.
Still Using Spreadsheets for Onboarding?
Automate documents, training assignments, task management, and track onboarding progress in real time.
See How It Works

How to Create a Payroll Ledger

Build it in this order. The sequence matters, because each group of columns depends on the one before it.

1
One row per employee per pay period
That is the unit. Employee name, employee ID, pay period start and end dates, and the actual pay date. If two employees share a first name, the ID is what saves you, so add it even when it feels unnecessary at five people.
2
Hours and pay basis
Regular hours and rate, overtime hours and rate. For salaried employees, record the basis on which wages are paid anyway. This is not optional detail, it is a required element of the FLSA payroll record.
3
Gross pay, broken out by type
Regular earnings, overtime earnings, bonus, commission. Four columns, not one. The sum is your gross, but the components are what answer questions later.
4
Each employee deduction on its own column
Federal income tax, Social Security, Medicare, state and local income tax, health premiums, retirement contributions, garnishments. Every one of these should trace back to a W-4, a benefit election, or a court order you can produce.
5
Net pay
Gross minus total employee deductions. This is the number that must exactly equal what leaves your bank account for that employee. It is your first reconciliation check.
6
Employer tax columns
Employer Social Security, employer Medicare, FUTA, state unemployment. On top of gross, never subtracted from it. Add a total employer cost column: gross plus employer taxes.
7
Year-to-date running totals
YTD gross, YTD each tax, YTD net. The YTD gross is what tells you when an employee crosses the Social Security wage base and your matching obligation stops. Without it you will overpay.

A Fully Worked Example

Here is one employee, one biweekly pay period, calculated all the way through to what the paycheck actually cost the business. Income tax withholding is illustrative, since it depends on the employee's W-4.

Step 1Start with gross pay
$2,150.00
80 regular hours at $25.00, plus 4 overtime hours at $37.50. Break these out as separate columns rather than collapsing them into one figure.
Step 2Subtract employee taxes
− $422.48
Federal income tax withheld per their W-4, plus their share of FICA: Social Security at 6.2% ($133.30) and Medicare at 1.45% ($31.18).
Step 3Subtract other deductions
− $215.00
Health insurance premium and 401(k) contribution. Each gets its own column, because each has to be traceable to a signed authorization.
Step 4That is net pay
$1,512.52
What actually lands in their bank account. This is the number the employee cares about and the only one they will ever check.
Step 5Now add employer taxes
+ $177.38
Your matching Social Security ($133.30) and Medicare ($31.18), which come to $164.48, plus FUTA and state unemployment ($12.90 here, since rates vary by state). This is a cost, not a deduction. It is not subtracted from anyone.
Step 6The real cost of this paycheck
$2,327.38
Gross pay plus employer taxes. This is what the pay run actually cost the business, and it is roughly 8 percent more than the gross figure you budgeted from.

Look at step four versus step six. The employee sees $1,512.52. The business spent $2,327.38. Those two numbers are separated by about 54 percent, and a ledger that stops at net pay only ever shows you the first one.

Note also what happens with the Social Security column as the year goes on. At $2,150 biweekly, this employee earns roughly $55,900 a year, comfortably under the wage base, so the 6.2 percent applies all year. A higher earner would cross the base partway through the year, and both the withholding and your matching obligation would stop at that point. Your ledger has to know that, which it only can if the YTD gross column exists.

What worked for me
The column I add now that I never used to is total employer cost: gross plus employer taxes, per employee, per period. Not because a regulator wants it, but because it is the only number that answers the question I actually ask, which is what does this person cost. Gross pay is what we negotiated. Total employer cost is what leaves the business. When I was planning a hire against gross, I was consistently planning against a number that was eight percent optimistic, and eight percent is exactly the size of error that does not announce itself until you are already committed.

The Monthly Per-Employee View

The same data, pivoted. Instead of organizing by pay run, organize by person: one sheet or one view per employee, showing each month down the rows and the same columns across.

This is the view you want in three specific situations, and each one arrives eventually. When an employee asks about their pay history, you produce this rather than digging through twenty-six pay runs. When you prepare a W-2, the annual totals are already summed. And when you need to know whether someone has crossed the Social Security wage base, the running YTD gross is right there in the column.

If you are building this in a spreadsheet, the practical structure is one master sheet with every row, plus per-employee views generated from it with a filter or pivot rather than maintained by hand. Maintaining twenty separate employee sheets by hand is how transcription errors get in, and a transcription error in a payroll record is not a typo, it is a discrepancy between what you paid and what you recorded paying.

How to Reconcile Your Payroll Ledger

A ledger you never check is not a record. It is a guess with formatting. Three reconciliation checks, every pay period, and none of them take more than a few minutes if you do them on time.

CheckWhat You CompareWhat a Mismatch Means
Net pay to bankTotal net pay in the ledger for this run against the total actually withdrawn from your account.Someone was paid an amount other than what the ledger says. Find it now, because in three months you will not remember which of the two figures was right.
Taxes to depositsThe tax amounts in the ledger against what you actually deposited to the IRS and the state.Either you under-deposited, which accrues penalties, or you over-deposited, which is your cash sitting somewhere it should not be.
Ledger to Form 941Quarterly totals in the ledger against what you reported on Form 941.Your filing and your records disagree. One of them is wrong, and the IRS will be working from theirs.
YTD continuityThis period's YTD totals against last period's YTD plus this period's amounts.A formula broke, or a row was edited retroactively. YTD drift is silent and compounds, and it usually surfaces at W-2 time when it is most expensive.
HeadcountNumber of rows this period against the number of people you actually paid.Someone was missed, or a terminated employee is still in the ledger. Both are worth catching in the period they happen.

The general rule is that a discrepancy found in the same pay period takes minutes to fix, and the same discrepancy found at year end becomes a reconstruction project across twenty-six pay runs. The reconciliation is not the tedious part of payroll. It is the part that prevents the tedious part. The quarterly check against IRS Form 941 is the one that matters most, because that filing is what the IRS will be working from if your numbers and theirs ever diverge.

Common Payroll Ledger Mistakes

MistakeWhat Goes WrongThe Fix
Omitting employer tax columnsThe ledger tracks what came out of employee pay and nothing about what payroll costs the business. Budgets run roughly 8 to 10 percent optimistic.Add employer Social Security, Medicare, FUTA, and SUTA columns, plus a total employer cost column. Budget from that column, not from gross.
One lumped gross columnYou can see what someone was paid but not why. When a wage claim asks about overtime specifically, the ledger cannot answer.Break gross into regular, overtime, bonus, and commission. The FLSA requires overtime earnings to be recorded separately anyway.
No year-to-date totalsYou cannot tell when an employee crosses the Social Security wage base, so you keep withholding and matching past the cap.Add YTD gross, YTD tax, and YTD net columns, and let them drive the wage-base logic rather than checking by hand.
Reconciling at year end instead of each periodErrors compound silently across twenty-six pay runs and surface when you are trying to produce W-2s.Three checks every period: net to bank, taxes to deposits, YTD continuity. Ten minutes now beats a week in January.
Editing historical rows in placeThe ledger no longer reflects what you actually paid at the time, which is precisely what a payroll record is supposed to preserve.Never overwrite a historical row. Add a correcting entry with its own date, so the record shows both what happened and what fixed it.
The ledger lives on one laptopThe person leaves, the laptop dies, or the file gets overwritten, and years of payroll records go with it.The ledger belongs somewhere the business controls and can retrieve from, independent of any individual employee or vendor subscription.

The last one is not a spreadsheet mistake, it is an organizational one, and it is the one that actually destroys companies' records. The payroll records guide covers what happens when you cannot produce records in a wage dispute, and the answer is worse than most owners assume.

Companies Using FirstHR Onboard 3x Faster
Join hundreds of small businesses who transformed their new hire experience.
See It in Action

How Long to Keep a Payroll Ledger

Two clocks run at once, and most guides mention only one of them.

Under the FLSA, per DOL Fact Sheet #21, employers must preserve payroll records for at least three years, while the records that wage computations are based on, meaning time cards and wage rate tables, must be kept two years. Separately, per IRS employment tax recordkeeping guidance, all employment tax records must be kept at least four years after the tax becomes due or is paid, whichever is later.

Do Not Run Two Clocks. Keep It Four Years.
The theoretically correct approach is to apply each retention rule to each record type. The practical approach for a business with 5 to 50 employees is to adopt the longest applicable period and apply it to everything, which means keeping the payroll ledger and everything behind it for at least four years. That satisfies FLSA and IRS simultaneously. Some states demand longer, so check yours. The storage cost of a spreadsheet for an extra year is zero. The cost of having purged the year you needed is not.

When the Spreadsheet Stops Working

A spreadsheet payroll ledger is legal. The FLSA prescribes no particular form for payroll records, so Excel and Google Sheets are both perfectly acceptable. The question is not whether it is allowed. The question is when it stops being safe.

Four things break, in roughly this order as a company grows:

What BreaksWhenWhy It Matters
Formula integrityAround 10 to 15 employeesA dragged formula misses a row, or an absolute reference should have been relative. The sheet still balances, so nothing looks wrong, and the error propagates into YTD totals.
Version controlAs soon as more than one person editsTwo people work on different copies. Both are now authoritative and neither is. There is no way to know which reflects what you actually paid.
RetrievabilityImmediately, if the file lives on a laptopPayroll records must be producible on request. A spreadsheet on a departed bookkeeper's machine is not a records system, whatever it contains.
Audit trailAlwaysA spreadsheet does not tell you who changed a historical row or when. In a wage dispute, an unexplained edit to a past pay period is worse than no record at all.

The honest guidance is that a spreadsheet is fine at five employees, workable at fifteen with discipline, and a genuine liability at thirty. The failure mode is not that it stops calculating. It is that it keeps calculating confidently while being wrong, which is the worst possible property for a payroll record to have.

This is the gap FirstHR is built around. Employee profiles hold the compensation arrangement and classification so the pay basis is a record rather than a memory. Document management keeps the payroll ledger, the tax filings, and the deduction authorizations somewhere the business controls and can actually retrieve from, rather than on the laptop of whoever ran payroll last. And e-signature captures the authorizations behind every deduction, so each column in the ledger traces back to a document.

FirstHR is not a payroll engine. It does not calculate your withholding or file your 941, and that work belongs with your payroll provider. What it holds is the record and document layer around payroll, which is precisely the layer that goes missing when a provider changes or a bookkeeper leaves. The running payroll guide covers the full pay cycle this ledger records, and the payroll forms guide covers the filings your ledger has to reconcile against.

Key Takeaways
A payroll ledger is the cumulative record of employee compensation: one row per employee per pay period, with running year-to-date totals. It differs from a register, which is a single pay run, and from a journal, which is the accounting entry.
The columns most homemade ledgers omit are the employer tax columns. Employer Social Security, Medicare, FUTA, and state unemployment are costs on top of gross pay, not deductions from it.
Budgeting from gross payroll understates your real cost by roughly 8 to 10 percent. Add a total employer cost column and plan hiring against that.
Break gross pay out by type and list every deduction separately. One lumped column is easier to build and useless when a wage claim asks a specific question.
Year-to-date gross is the column that tells you when an employee crosses the Social Security wage base and your matching obligation stops. Without it you will keep matching past the cap.
Reconcile every pay period, not at year end: net pay to the bank withdrawal, taxes to your deposits, and YTD continuity. A discrepancy caught in-period takes minutes; caught in January it takes a week.
Never edit a historical row in place. Add a correcting entry with its own date, so the record shows both what happened and what fixed it.
Keep the ledger at least four years, which satisfies both the FLSA 3-year rule and the IRS 4-year employment tax rule at once. Check your state, which may demand longer.

Frequently Asked Questions

What is a payroll ledger?

A payroll ledger is the cumulative record of what a business pays its employees over time. Each row captures one employee for one pay period: hours worked, gross pay broken out by type, every deduction taken from their wages, the employer taxes the business owes on top, and the resulting net pay. Unlike a single pay stub, a payroll ledger accumulates. It carries running year-to-date totals, which is what makes it useful for tax filings, audits, budgeting, and answering questions about what someone was actually paid two years ago.

What is the difference between a payroll ledger and a payroll register?

The practical difference is the time axis. A payroll register is a snapshot of a single pay run: everyone who got paid this period, with their gross, deductions, and net. A payroll ledger is cumulative and carries running year-to-date totals, so it shows one employee across many periods. Many payroll vendors use the two terms interchangeably, which is why the distinction feels murky online. If you need to see this pay run, you want the register. If you need to see the history, you want the ledger.

How do you create a payroll ledger?

Start with a row per employee per pay period and build the columns in order: employee name and ID, pay period dates, regular and overtime hours with their rates, gross pay broken out by earning type, each employee deduction on its own column, net pay, then the employer tax columns for your matching Social Security and Medicare, FUTA, and state unemployment. Add year-to-date running totals for gross, taxes, and net. Then reconcile it against your bank statement and your tax filings every single period, because a ledger you never check is not a record, it is a guess.

What columns should a payroll ledger include?

At minimum: employee name and identifier, pay period start and end dates, pay date, regular hours and rate, overtime hours and rate, gross pay separated into regular, overtime, bonus, and commission, each employee deduction listed individually (federal income tax, Social Security, Medicare, state and local tax, benefit premiums, retirement, garnishments), net pay, and then the employer tax columns: employer Social Security, employer Medicare, FUTA, and state unemployment. Add year-to-date totals for gross, each tax, and net.

Does a payroll ledger include employer taxes?

It should, and this is the single most common omission in homemade ledgers. Employer taxes are not deducted from an employee's pay. They are an additional cost the business owes on top of gross wages: the employer share of Social Security at 6.2 percent, the employer share of Medicare at 1.45 percent, federal unemployment tax under FUTA, and state unemployment tax. If your ledger only tracks what came out of employee paychecks, it is understating the true cost of payroll by roughly 8 to 10 percent.

What is a general ledger in payroll?

The general ledger is your company's complete accounting record across every account, and payroll is one of the things that posts into it. The payroll ledger is the detailed operational record of who was paid what; the general ledger is where that information lands in accounting terms, as journal entries with debits and credits. Wage expense gets debited, cash and tax liability accounts get credited. The payroll ledger is the detail behind the summary that appears in the GL.

Can I keep a payroll ledger in Excel or Google Sheets?

Yes, and most small businesses start there. A spreadsheet is legally acceptable, since the FLSA prescribes no particular form for payroll records. The practical limits arrive as you grow: formula errors compound silently, version control breaks when more than one person edits, year-to-date totals drift out of sync with actual filings, and the file usually lives on a single person's laptop. A spreadsheet is fine at 5 employees and increasingly dangerous at 30.

How long do you need to keep a payroll ledger?

Longer than most people think, and two clocks run at once. Under the FLSA, payroll records must be preserved for at least three years, while the records that wage computations are based on, such as time cards, must be kept two years. The IRS separately requires employment tax records to be kept at least four years after the tax becomes due or is paid, whichever is later. Rather than tracking multiple clocks, keep everything at least four years, which satisfies both.

How do you reconcile a payroll ledger?

Three checks, every pay period. First, confirm total net pay in the ledger equals the total actually withdrawn from your bank account for that run. Second, confirm the tax amounts in the ledger match what you actually deposited and what appears on your quarterly Form 941. Third, confirm year-to-date totals in the ledger still tie to the prior period plus this one. Discrepancies found in the same period take minutes to fix. Discrepancies found at year end become a reconstruction project.

What is a monthly payroll ledger per employee?

It is the same ledger data organized by person rather than by pay run: one view showing a single employee's gross, deductions, employer taxes, and net across each month of the year, with running totals. It is the view you want when an employee asks about their pay history, when you are preparing a W-2, or when you need to know whether someone has crossed the Social Security wage base and your matching obligation has stopped for the year.

Ready to transform your onboarding?

7-day free trial No credit card required
Start Your Free Trial