My battle with the Canada Revenue Agency portal
Tracking a CRA tax return online means logging into CRA My Account, navigating to the “Tax Returns” section, and reading one of three status labels – Received, Assessing, or Reassessed – to determine where a filed return sits in the processing queue. That is the clean version. The version I actually lived through involved a GCKey session that expired four times in one sitting while I was parked in what felt like a digital equivalent of the DVP at 5:30 p.m. on a Friday.
I filed my diy tax return mid-February using NETFILE, got the confirmation code, and then made the rookie mistake of assuming the hard part was over. It was not. The canada revenue agency portal has a login architecture that seems specifically engineered to test psychological endurance. GCKey times out in roughly 18 minutes of inactivity, which sounds reasonable until I realized “inactivity” apparently includes typing in a form field.
Honestly, I started keeping a sticky note log of every failed login attempt. That is not a joke. I had seven entries before I figured out the kludge – open a second browser tab pointed at the GCKey session-keep-alive page and refresh it manually every 12 minutes. Ugly, absolutely. But it worked, and I stopped losing my authenticated session mid-lookup.
The raw friction of this process is real. I had hold music playing from a CRA phone queue in one ear – I gave up after 47 minutes and hung up – while I was simultaneously trying to load My Account on a laptop. My neighbour had already warned me the phone agents pull from the same internal database as the portal anyway, so that call was a spectacular waste of a Tuesday afternoon.
I am just a regular Toronto guy sharing what worked for me, not a CPA and definitely not a financial advisor. Nothing on this page is official tax guidance. I got that disclaimer out of the way because some of what I found about the canada revenue agency portal surprised me, and I want the context to be clear before I get into the workflow details.
The obsessive part of my brain refused to let this go until I had a repeatable system. If memory serves, it took me parts of three evenings and two double-doubles to build something I could actually trust.
How I set up my own cra tracking workflow
My cra tracking workflow runs on a single principle: match the NETFILE confirmation code to the portal status on a fixed schedule, and log every change with a timestamp. The confirmation code is the receipt. Everything else – T4 line entries, T5 interest slips, the Line 15000 total – feeds into what the portal eventually confirms back to me. Without the confirmation code logged somewhere I can find it, the whole process has no anchor.
I made the embarrassing error – mild self-deprecation fully earned here – of filing two years ago and then storing my confirmation code in an email I archived into a folder I renamed and then forgot the name of. I spent 40 minutes searching before I found it nested under a folder called “2022 admin stuff” inside another folder called “receipts misc.” That cost me 40 minutes of my life I will never get back, and I now paste the code into a plain text file named with the tax year the second NETFILE spits it out.
Setting up direct deposit through My Account was the single highest-return action I took. The setup screen asks for a void cheque image or manual entry of a transit number, institution number, and account number. I had the cheque image ready in about three minutes. Once direct deposit was confirmed, I noticed the express NOA delivery option appeared in my notification preferences – that alone cut my wait time for the Notice of Assessment from postal mail lag down to same-day digital delivery.
Here is the status comparison I built for my own reference:
| Portal Status | Typical Processing Time | What I Did Next |
|---|---|---|
| Received | 0 to 2 business days post-NETFILE | Logged timestamp, confirmed NETFILE code matched |
| Assessing | 2 to 8 weeks (peak season) | Checked portal every 72 hours, no calls |
| Reassessed | Variable – sometimes months | Reviewed NOA line-by-line against my filed T4 entries |
| Refund Issued | 1 to 5 business days post-NOA | Verified direct deposit routing in My Account |
The table above is based on my own filing timelines across three returns, not CRA’s published figures, which I found vague enough to be nearly decorative.
Checking every 72 hours felt excessive to people around me. It felt insufficient to me. I settled on a calendar reminder every three days that took about 90 seconds to action – log in, screenshot the status line, paste it into my log file with the date. Total time investment across a typical six-week assessment window was under 30 minutes. Compared to 47 minutes on hold for zero new information, that math was obvious.
The real meaning of those obscure status codes
The three CRA portal status labels – Received, Assessing, and Reassessed – each signal a specific and distinct point in the processing lifecycle of a filed return, and conflating them cost me real anxiety during my first year tracking toronto taxes this carefully. “Received” means exactly what it says: the agency has the file. Nothing has been reviewed. No refund date exists yet. It is the bureaucratic equivalent of a coat check ticket.
“Assessing” is where the wait lives. This is the active review phase. The CRA is cross-referencing my T4 slips against employer submissions, my T5 interest income against what my financial institution reported, and checking whether my RRSP contribution room was correctly applied. During this phase I had a near-miss moment – I thought my return had stalled because the status read “Assessing” for 31 consecutive days. I was four minutes from calling when I noticed the “last updated” timestamp had actually changed twice during that window. The assessment was progressing; the label just does not change until it flips entirely.
That phantom near-miss cost me about an hour of low-grade panic I could not quite explain to anyone without sounding like I was describing a problem that did not exist. It did exist. The status interface gives no granular progress indication, which is a real design gap for anyone trying to run a systematic cra tracking process.
“Reassessed” is the status that requires actual attention. A reassessment means the CRA made a change to the assessed return – sometimes in the taxpayer’s favour, sometimes not. I received one reassessment in my tracking history. It came with an updated NOA showing an adjustment to a deduction I had claimed. The new NOA arrived through My Account the same day the status changed, which is the one part of the process I found genuinely fast.
The bureaucracy limbo of the “Assessing” phase is real and has no comfortable resolution I can offer. I watched my status sit at “Assessing” for 44 days during a peak filing season. That is six weeks of a tab open in my browser. It is the kind of wait that makes the Eglinton Crosstown delays feel efficient by comparison.
The only productive thing I found to do during the “Assessing” phase was verify that my direct deposit information in My Account was still accurate, and confirm my TFSA contribution room displayed correctly so I could catch any discrepancy before the NOA arrived.
How I claimed my ontario tax credits early
Ontario tax credits – specifically the Ontario Energy and Property Tax Credit (OEPTC) and the Ontario Trillium Benefit (OTB) – can be tracked and, in some cases, received in advance monthly payments rather than as a lump sum after the NOA processes, and understanding that distinction changed how I planned my spring cash flow. Again, I am not a tax professional; I am a Toronto resident describing what I found when I read the program details myself.
A neighbour of mine – fellow DIY filer, equally stubborn about calling the CRA – assumed the Trillium benefit would arrive as one large cheque in the summer. It does, if the total is under a threshold, but above that threshold it pays out monthly starting in July. He had budgeted for a lump sum and then re-budgeted twice when monthly payments arrived instead. That re-budgeting exercise cost him two evenings of stress he described using language I will not reproduce here.
The OEPTC portion of the Trillium benefit is calculated on Schedule ON-BEN, which gets filed as part of the provincial return inside the same NETFILE submission. I realized I needed to verify that my software had actually attached ON-BEN before I submitted, because the first year I used a free filing tool I almost missed the schedule entirely. It was buried under a province-specific section that did not auto-populate from my T4 data.
Claiming the ontario tax credits properly meant I also had to input my property tax paid – or rent paid, depending on housing situation – and my postal code for the energy component. The postal code piece matters because the OEPTC has a northern component that applies to specific Ontario regions. Mine did not qualify, but I checked, because that is the kind of thing I check.
Direct deposit through My Account handles the Trillium payments the same way it handles income tax refunds. Once the direct deposit was active for one, it covered the other. That was one of the few genuinely efficient features I found in the entire canada revenue agency portal experience – the routing information carries across program types.
The timing between filing, NOA issuance, and the first Trillium payment depends on when the return was assessed relative to the benefit year calculation cycle. I found this difficult to predict precisely, and I stopped trying to after I missed the first payment calculation cutoff by about a week one year. The refund still came; it just landed in the next cycle.
My personal checklist for diy tax return tracking
My diy tax return tracking process, distilled after three filing seasons of obsessive documentation, runs in five verification stages that I work through in order every single time. This is not a prescription; it is a record of what I actually did and what caught errors before they became problems. By the time I reached this workflow, I was genuinely tired – the exhaustion of learning a bureaucratic system through repeated friction is a particular kind of soul-drain I had not anticipated when I first decided to file my own returns.
Stage one: the moment NETFILE sends a confirmation, I copy the confirmation number into a text file labelled with the tax year and the words “DO NOT ARCHIVE.” That label is doing real work. I learned this from the folder-inside-a-folder catastrophe described earlier.
Stage two: I log into CRA My Account within 24 hours of filing and confirm the status reads “Received.” If it does not appear within 48 hours, that is the trigger to check whether NETFILE actually transmitted – not assumed, checked. The confirmation code can be cross-referenced through the My Account “NETFILE submissions” history section.
Stage three is the 72-hour portal check cadence. I set a repeating calendar event. It takes 90 seconds. I screenshot the status and paste it into my tracking log with the date. This is excessive by most reasonable standards. It is also the only way I caught the timestamp change during my 31-day “Assessing” status period that prevented an unnecessary phone call.
Stage four: when the NOA arrives – digitally, through the express NOA notification I set up under My Account alerts – I compare it line by line against my filed return. Specifically Line 15000 (total income), the RRSP deduction line, and the refund or balance owing figure. Any discrepancy between what I filed and what the NOA shows triggers a read of the NOA explanatory notes before anything else.
Stage five is the refund confirmation. Once the NOA shows a refund owing, direct deposit typically posts within two to five business days. I verify the deposit against the NOA amount to the cent. I once had a small discrepancy that turned out to be a provincial credit processed on a slightly different schedule. Knowing to expect that prevented 20 minutes of confused bank-statement staring.
The whole system, running across a six-to-eight-week assessment window, costs me maybe two hours of total effort. The first time I filed without a system, I spent more than that on a single hold queue that went nowhere.