Guides & Checklists
Parallel payroll testing before a payroll system go-live
A practical method for running legacy and new payroll side by side: how many cycles, which cases to force in, and how to clear every variance.
A parallel payroll test runs the legacy system and the new system against the same pay period, using the same source time and personnel data, and then compares the results employee by employee and component by component. It is the only test that proves the new system produces the same money, the same taxes, the same deductions, and the same employer costs as the system your workforce already trusts. Unit tests and scripted user acceptance testing cannot substitute for it, because they exercise the cases someone thought to write down, not the thousands of combinations your actual population contains.
Vendors frequently propose one parallel cycle, sometimes on a sample of employees, and treat a clean comparison as proof of readiness. One cycle proves that a correctly configured path works once. It does not prove that accumulators carry forward correctly, that a fix for one bargaining unit did not break another, or that quarter end and year end reporting will tie. Plan the parallel effort as a multi cycle program with its own schedule, staffing, and exit criteria, and put it in the contract before signing.
How many parallel cycles are enough
Count cycles by what each one is meant to prove, not by a number in a project plan.
- Cycle one surfaces configuration errors: earnings and deduction code mapping, tax setup, rate tables, calendar and period definitions.
- Cycle two surfaces converted data problems and rounding behavior once the loud configuration defects are fixed.
- Cycle three proves stability, because year to date balances, limits, and arrears carry forward from the prior parallel cycles rather than from conversion.
Three is a floor, not a target. A defensible standard is to keep running until two consecutive cycles complete with no new defect categories and no unexplained variance. Add cycles that cover each distinct payroll frequency you operate, at least one quarter end reconciliation, at least one off cycle or supplemental run, and a year end dry run that produces draft wage and tax statements even if go-live falls mid year.
Build the test population deliberately
Compare the full population if the tooling allows, and separately hand audit a constructed sample that forces the hard cases into every cycle. Make sure the sample includes at least one employee in each of these situations:
- Every bargaining unit and memorandum of understanding, including any unit with unusual premium, longevity, or step rules.
- Every FLSA status, with overtime cases that include nondiscretionary premiums in the regular rate, plus shift differential, standby, callback, and out of class assignments.
- Complex assignments: multiple concurrent positions, mid period transfers between departments or funds, promotions, rate changes, and leave without pay.
- Life cycle events: new hires mid period, terminations with final pay, retirees returning to work, and employees on protected or paid leave.
- Deduction complexity: multiple garnishments requiring priority and proration, support orders, union dues, retirement tiers, catch up contributions, arrears, imputed income, and taxable fringe benefits.
- Retroactive pay, including a settled contract retro calculation if one is pending.
Set variance thresholds before the first run
Decide what counts as a pass before anyone sees a result, otherwise the threshold will drift to match whatever the run produced. A reasonable standard for a production payroll is zero unexplained variance in net pay, employee and employer taxes, each deduction, each earning code, and each accumulator. A small rounding tolerance is acceptable only where the two systems use documented and different rounding methods, and each instance still needs a written explanation rather than a waiver.
Sort every difference into one of four dispositions: the new system is correct and the legacy result was wrong, the legacy result is correct and the new system has a defect, both are wrong, or the difference comes from input timing rather than calculation. The first category is common and welcome, but it must be affirmatively explained and approved, not assumed.
Document and clear every difference
Keep one reconciliation register for the whole effort, with a row for each variance carrying the employee identifier, pay component, legacy amount, new amount, difference, root cause, disposition, owner, fix reference, the cycle in which it was retested, and the closure date. Reconcile at three levels each cycle: individual employee, organizational rollup by fund and appropriation, and agency total, plus the general ledger journal, the bank file total, and the tax deposit amounts.
Do not close a difference by editing data in the new system until the root cause is recorded. A fix applied during one cycle is not proven until a later full cycle reproduces it cleanly, so treat regression as part of the exit criteria.
Test what happens after the pay run
The calculation is only part of go-live risk. Each parallel cycle should also produce and validate the downstream outputs: the direct deposit and check files, the general ledger and labor distribution entries including grant and project charges, retirement reporting files, deduction vendor files, and the data that will feed quarterly and annual tax and wage reporting. Form layouts, file specifications, and reporting rules change, so confirm current formats with the receiving agency or plan sponsor rather than relying on the vendor's stored template. Also verify employee facing results: pay statement content, self service display, direct deposit splits, and withholding elections carried from current federal and state forms.
What to ask vendors and put in the contract
Useful questions during evaluation and negotiation:
- How many parallel cycles are included in the fixed price, and what triggers additional cycles at no cost?
- Who performs the comparison, and does the vendor provide an automated comparison tool or does agency staff build it?
- What are the defect severity definitions, response times, and the rule for rerunning a full cycle after a severity one fix?
- Who is responsible for correcting converted data, as opposed to configuration?
In the contract, make parallel testing a named deliverable with written acceptance criteria, tie a meaningful payment milestone to its completion, reserve the agency's unilateral right to delay go-live without penalty or rescheduling fees, require the vendor to retain parallel evidence for audit, and specify vendor staffing levels during parallel and through the first several live cycles.
Making the go or no-go call
Give the decision to the payroll director or finance officer who owns paying people correctly, not to the project manager who owns the schedule. Publish the exit criteria in advance, hold a documented readiness review against them, and keep the legacy system able to run at least one more live cycle as a contingency. Confirm with counsel how your state's wage payment timing rules and any applicable collective bargaining provisions constrain a delayed or corrected payroll, since those requirements vary and change.
HQT works with state and local agencies on enterprise systems implementation and independent verification and validation, including test planning and reconciliation support for payroll and ERP projects.
Frequently asked questions
How many parallel payroll cycles should we run before go-live?
Three full cycles is a practical floor, because the first tends to surface configuration errors, the second data and rounding problems, and the third proves that year to date accumulators carry forward correctly. A better standard than a fixed count is to keep running until two consecutive cycles produce no new defect categories and no unexplained variance. Add cycles to cover each payroll frequency you operate, a quarter end, an off cycle run, and a year end dry run.
What is an acceptable variance in a parallel payroll run?
For a production payroll the target is zero unexplained variance in net pay, employee and employer taxes, individual deductions, individual earning codes, and accumulators. A small rounding tolerance can be acceptable where the two systems use documented and different rounding methods, but each instance still needs a written explanation. Differences where the new system is correct and the legacy system was wrong are common and acceptable, provided they are identified, explained, and approved rather than assumed.
Should the parallel test cover every employee or only a sample?
Compare the full population automatically if your tooling supports it, since that is the only way to find rare combinations nobody anticipated. Alongside the full comparison, hand audit a constructed sample that deliberately includes every bargaining unit, every FLSA status, multiple concurrent positions, garnishments, retroactive pay, terminations, and new hires. A sample alone leaves the unusual cases untested, which is where payroll failures usually occur.
What should the contract say about parallel payroll testing?
Name parallel testing as a distinct deliverable with written acceptance criteria and tie a meaningful payment milestone to meeting them. Specify how many cycles are included, what triggers additional cycles at no added cost, vendor staffing during parallel and through the first live cycles, and defect severity definitions with response times. Reserve the agency's right to delay go-live without penalty, and require the vendor to retain parallel evidence for audit.
Who should own the go or no-go decision for a payroll go-live?
The decision belongs to the official accountable for paying employees correctly, typically the payroll director or finance officer, rather than the project manager responsible for the schedule. Publish exit criteria in advance and hold a documented readiness review against them so the decision rests on evidence instead of momentum. Keep the legacy system capable of running at least one more live cycle as a contingency, and confirm with counsel how state wage payment timing rules and bargaining agreements affect a delayed payroll.