CRA Payroll Deductions Online Calculator (PDOC): How to Use It — and Where It Stops
The CRA's PDOC is the official free tool for estimating Canadian payroll deductions for one employee over one pay period. This guide walks through the key inputs for a regular pay period, the mistakes that throw estimates off, and where a one-off calculator stops being enough.
Last updated August 2026
At a glance
- PDOC (Payroll Deductions Online Calculator) is the CRA's free online estimator for CPP, EI, and income-tax deductions — federal, provincial, and territorial calculations, except Quebec provincial tax.
- It computes one calculation at a time: one employee, one pay period. It does not keep records, run pay periods, produce T4s or ROEs, or handle remittances.
- The CRA states that printed PDOC calculations are not an official statement of earnings.
- This guide explains the key inputs for a regular pay period, common mistakes, and what to use when one-off estimation is no longer enough.
What the Payroll Deductions Online Calculator is
PDOC is a free web tool published by the Canada Revenue Agency. You enter an employee's pay details — province of employment, pay frequency, gross income, and TD1-based claim information — and it returns the estimated deductions for that single pay period:
- Canada Pension Plan (CPP) contributions, including CPP2 above the annual ceiling;
- Employment Insurance (EI) premiums;
- Federal and provincial or territorial income-tax withholding.
Use the official tool directly on canada.ca: CRA Payroll Deductions Online Calculator (PDOC).
PDOC covers provincial tax for every jurisdiction except Quebec, which administers its own Quebec Pension Plan (QPP) and Quebec Parental Insurance Plan (QPIP) through Revenu Québec.
When PDOC is the right tool
- Estimating deductions before making a job offer or setting a salary.
- Checking one pay period when you suspect something looks wrong on a pay statement.
- Understanding how a TD1 change affects withholding for a single period.
- Modeling a bonus or lump-sum scenario using the tool's irregular-payment options.
For irregular payments such as bonuses, retroactive pay, or lump sums, separate withholding methods apply. See Earnings & Deductions for how each payment type is treated.
Using PDOC correctly, input by input
The inputs that matter most for a regular salary calculation each map to a payroll concept. Getting these right matters more than the tool itself:
| PDOC input | What it means | Common trap |
|---|---|---|
| Province of employment | Generally the employer establishment where the employee reports for work. Under the CRA's remote-work administrative policy, a full-time remote employee may instead be considered reasonably attached to an employer establishment. The province decides the provincial tax table, and in Quebec's case the pension plan. See the CRA's province of employment guidance. | Assuming an employee's home or work-from-home province always applies. |
| Pay frequency | Weekly, bi-weekly, semi-monthly, monthly, and so on. The frequency drives the prorated CPP basic exemption and the income-tax tables. | Confusing semi-monthly (24 per year) with bi-weekly (26 per year). |
| Gross income per period | Taxable earnings for the period before any deductions. | Entering an annual salary instead of the per-period amount. |
| TD1 claim information | The federal and provincial TD1 forms determine the claim code used in income-tax withholding. See our guide to TD1 claims with multiple employers. | Leaving claim amounts at defaults when the employee filed additional credits. |
| Year-to-date CPP / CPP2 / EI | Later in the year, contributions stop once annual maximums are reached, so PDOC asks for amounts already contributed this year. | Entering zero YTD in, say, November — which overstates CPP and EI. |
The pay date, not the period end date, decides which tax-table year applies and which remittance period a payment falls into. See Pay Date vs Pay Period.
Common mistakes that skew PDOC results
- Wrong claim code. A claim code taken from an out-of-date or incomplete TD1 changes income-tax withholding for every period.
- Ignoring three separate maximums. Regular CPP stops at the YMPE, CPP2 has its own ceiling above it, and EI stops at its own maximum insurable earnings. A mid-year estimate with zero YTD fields will overstate deductions.
- Treating the estimate as the remittance amount. What you send to the CRA also includes the employer portions and follows the remitter schedule — see Source Deductions Remittance.
- Re-running one period instead of running payroll. An estimate for period 14 does not keep periods 1–13 consistent; year-to-date accuracy comes from cumulative records.
Where PDOC stops
PDOC is deliberately narrow, and the CRA is upfront that it is not payroll software. Four boundaries matter most in practice:
| Boundary | What it means day to day |
|---|---|
| No saved payroll history | PDOC keeps no persistent records — there is no employee history to review and no record to reconcile against a pay statement. The CRA notes entered information can remain in your browser session for up to 30 minutes of inactivity, but CRA does not save it. |
| One calculation at a time | Five employees over twenty-six pay periods means 130 manual runs — each one an opportunity for a transcription error. |
| Manual maximum tracking | CPP, CPP2, and EI each stop at their own annual maximum per employer. With manual calculations, tracking who has capped — and when — is on you. |
| No downstream workflow | PDOC does not produce remittance schedules or PD7A statements, does not map amounts to T4 boxes, and plays no role in ROEs. |
The CRA also notes that printed PDOC calculations are not an official statement of earnings. They are estimates for planning, not payroll records.
2026 worked example: one biweekly pay period, verified against PDOC
This scenario comes straight from Beanflow's payroll validation suite: deduction outputs are captured from live PDOC runs and stored as checksummed regression fixtures that the calculation engine must match. Setup: a single Ontario employee on a $60,000 salary paid bi-weekly ($2,307.69 per period), full TD1 claims, no year-to-date contributions yet, pay date January 16, 2026.
Inputs you can reproduce in PDOC:
- Province of employment: Ontario;
- Pay frequency: bi-weekly (26 periods per year);
- Gross income per period: $2,307.69;
- Federal claim amount: $16,452.00; Ontario claim amount: $12,989.00 (full 2026 claims);
- All year-to-date fields: $0.
| Deduction | Basis | Amount |
|---|---|---|
| CPP | 5.95% × ($2,307.69 − $134.62 prorated basic exemption) | $129.30 |
| CPP2 | Applies only above the $74,600 YMPE | $0.00 |
| EI | 1.63% × $2,307.69 insurable earnings | $37.62 |
| Federal income tax | T4127 tables at the full federal claim amount | $205.32 |
| Ontario income tax | T4127 tables at the full Ontario claim amount | $114.68 |
| Net pay | Gross minus total deductions | $1,820.77 |
The employer cost on top of the same period:
- CPP matched dollar-for-dollar: $129.30;
- EI at 1.4× the employee premium: $52.67.
Evidence trail: these figures were captured from live PDOC output for exactly this input set, and the capture was repeated under the July 2026 edition of T4127 with identical results (the 14% federal first-bracket rate holds all year). The screenshot artifacts and their SHA-256 checksums live in Beanflow's test suite, and the payroll engine is required to match them on every run — that is the same validation loop behind our "validated against the CRA calculator" statement. You can reproduce every number above yourself, either by entering the inputs into PDOC or by running the same pay period free in Beanflow.
Now multiply this by every employee and every period in the year, add YTD maximum tracking, and the boundary becomes practical rather than theoretical.
From estimating one period to running real payroll
PDOC answers "how much is deducted from this cheque?" Once the same question has to be answered repeatedly — across employees, across periods, with automatic maximums and remittance-ready records — a calculator stops being the right shape of tool.
Beanflow's core payroll is free: no monthly fee, no per-employee charge. Its calculation engine is built from the CRA's T4127 formulas and validated against PDOC output, and it carries the calculation through the steps PDOC doesn't cover — saved employees, automatic CPP/CPP2/EI maximum handling, source-deduction reporting, and T4 preparation. Recreate the example above — or, more likely, enter your own employee's real numbers and run a genuine pay period, free.
Prefer to see the workflow before trying it? The Switching to Beanflow walkthrough on our homepage shows the real product UI end to end — company, catch-up pay group, people, run payroll.
Beanflow currently supports Canadian payroll outside Quebec. For general reference content we note Quebec differences where needed for completeness; product workflows apply to supported jurisdictions only.
Frequently asked questions
Is the CRA payroll deductions calculator free?
Yes. PDOC is a free official tool on canada.ca. Free describes the calculation only — running actual payroll involves records, remittances, and year-end reporting that the tool does not do.
Does PDOC work for Quebec employees?
PDOC handles federal deductions for Quebec but not Quebec provincial tax. QPP and QPIP are administered by Revenu Québec through separate tools. Beanflow payroll likewise does not support Quebec.
Does PDOC save my calculations?
No persistent payroll history. Each calculation covers one employee and one period, and nothing accumulates into payroll records. The CRA notes that information you enter can remain in your browser session for up to 30 minutes of inactivity, but CRA does not save it.
Is a PDOC printout an official statement of earnings?
No. The CRA states that printed PDOC calculations are not an official statement of earnings. Official records come from your payroll records and slips such as the T4.
What should I have ready before opening PDOC?
Province of employment, pay frequency, gross pay for the period, and the employee’s TD1-based claim information. Later in the year you will also need the employee’s year-to-date CPP, CPP2, and EI contributions so deductions stop correctly at the maximums.