Forecasting Irregular Income: A Cash-Flow Guide for Freelancers and Contractors

Variable income budgeting works when you forecast from invoices, set a realistic account floor, and stress-test slow quarters before they arrive. Here's how freelancers and contractors model irregular income in Recurna Flow.

Last updated

A monthly budget was designed for a paycheque: fixed amount, predictable date, same every time. When your income arrives in project payments and net-30 invoices, that model breaks at the foundation — not just in the details, but in the core assumption that last month’s spending tells you what this month can afford.

This guide is for freelancers and contractors who need a forecast, not a budget. The difference is timing. A budget tells you where money went. A forecast tells you what your balance will be on the day your rent is due, the week your biggest invoice still has not cleared, and the quarter you already know will be slow.

Why monthly budgets fail freelancers worse than anyone

A monthly summary has one structural flaw for variable income: it collapses the entire month into a single number. That number hides everything that actually matters.

Here is a common scenario. You invoice a client for $6,000 in March. Your contract says net-30, so the payment arrives April 3. Your March budget shows a gap where income should be. Your April budget shows a windfall. Neither month reflects the reality: you were covering March’s expenses out of February’s balance, and April’s deposit arrived after the credit card due date already passed.

Add a feast-or-famine pattern — $9,000 in February, $2,100 in May — and the monthly average looks fine while specific weeks are genuinely tight. The average tells you your income is sustainable. The week-by-week view tells you that the Tuesday in May when your lease payment, internet bill, and a quarterly software renewal all land at once, you were running on $380. You did not know that until it happened.

The question a monthly budget cannot answer is the one that actually matters: what is my balance on the day rent is due, and what does the week before it look like? A cash-flow forecast answers that directly. A monthly summary never does.

The two-account model

The most stable structure for variable income is two accounts with two separate floors, each forecasted independently.

The operating account is the account you spend from. Rent, groceries, utilities, loan payments, subscriptions — everything that runs your regular life. Income lands here first, then gets swept. Set a floor: the minimum balance below which you would need to take action. For most freelancers, this is roughly one full month of fixed expenses. If your non-negotiable monthly costs are $2,800, your operating floor is $2,800.

The floor is not a goal. It is a warning line. If the forecast shows your operating balance dropping below it in week 14, that is the week to plan around — now, while you still have options.

The tax/buffer account holds two things: your income-tax withholding and a buffer above the operating floor. Every time income lands in the operating account, sweep a fixed percentage to the tax account immediately — before you spend anything. The CRA generally expects 25–30% of gross for federal income tax and HST combined, though your actual rate depends on your province and income bracket. The sweep should be automatic and non-negotiable: the money in the tax account is not yours to spend.

Set a floor on this account too — the minimum withholding you need for the tax year. Do not let it fall below that number, even in a month when the operating account looks healthy and the surplus is tempting.

In Recurna Flow, each account gets its own floor displayed as a horizontal reference line on the balance chart. The forecast for the operating account shows you the spending side; the forecast for the tax account shows you whether your withholding is on track. Run them side by side.

Forecasting from invoices instead of paycheques

Salaried income is easy to anchor: $3,200 biweekly, arriving every other Friday. One recurring entry, done. Variable income requires more granularity, but the principle is identical — you are anchoring future money to the date it actually lands, not the date you earned it.

Recurring clients are the closest thing to a paycheque. If you invoice the same client monthly for roughly the same amount, enter a recurring income anchor at a conservative minimum — not the average, not the best month, but the amount you have reliably received across the last year even in slower stretches. If that client pays on net-30, set the anchor date to roughly one month after your typical invoice date. A $3,500 retainer invoiced on the first of each month should land around the second week of the following month in the forecast, not the first.

Project clients are one-off anchors. When you send an invoice for a project, add it to the forecast as a single future income event on the expected payment date. If the SOW says net-30 and you sent the invoice on June 1, anchor the income for July 1, or July 3 to buffer for bank processing. If payment is delayed, push the anchor back and the forecast immediately shows you what that delay costs — not in the abstract, but as a specific balance on a specific day.

Unpredictable periods — months where you have no active invoices outstanding and no certainty about new work — should stay at $0 income in the forecast. Do not project optimism. Let the forecast show you what your balance looks like running purely on the buffer. If the operating balance stays above the floor for six weeks with no income, your buffer is healthy. If it drops below the line in week three, you know exactly how much runway you have and when the clock starts.

The governing rule for all of this: anchor income to the date money lands in your account, not the date you earned it or the date you invoiced it. A forecast that runs on invoice dates instead of payment dates will always look healthier than it actually is.

Setting realistic floors when income is variable

The floor is the most important number in a variable-income forecast. For a salaried worker, a floor of one week of expenses might be fine — a missed deposit is a short-term inconvenience. For a freelancer, the floor has to carry you through a month where income runs late, a client disputes, or work simply dries up.

A practical way to set it: look at your three lowest income months in the past 12. The minimum of those three is roughly how lean a bad month can get. Your operating account floor should be high enough to cover one full month of fixed expenses at that lean income level — meaning, what you would need in savings to get through that month without adding to credit card debt or borrowing.

If your three lowest months brought in $1,900, $2,400, and $1,600, your realistic lean-month scenario is about $1,600. If your fixed monthly expenses are $2,600, your floor is $2,600 — the amount you need already in the account to carry a near-zero income month.

Set this floor once in Flow and leave it. Do not lower it in a good month because the cushion feels excessive. The floor is your conservative safety line, calibrated for the lean periods — those are the months where it earns its keep. When the forecast shows the projected balance approaching the floor in a future week, that is a signal, not a crisis. A signal means you have time: move a discretionary purchase, accelerate an invoice, or pull from the buffer before the week arrives.

The floor that you set when things are fine is the one you will actually want during a slow quarter.

Simulating a slow quarter

Every freelancer has predictable lean stretches. Q2 might be thin because clients are in fiscal year-end lockdown. December slows because no one signs contracts over the holidays. You know roughly when the quiet periods come — the question is what they cost you, expressed as a real balance on a real date, before they arrive.

The simulation sandbox is built for exactly this. It runs on your real forecast data without modifying it — a layer of assumptions you can test and discard.

  1. Open the Forecast page and set the date range to cover the slow period and the few months that follow it. Next 1Y is usually enough to see the full picture.
  2. Open the simulation panel from the Forecast page. The sidebar slides in. The URL gains ?sim=1. Your real forecast is unchanged underneath.
  3. Tap + to add an adjustment. Choose Start from scratch, then pick New Recurring as the type.
  4. Add a negative income adjustment for the slow period. If your baseline income anchors total $5,000 per month and you expect Q2 to run 30% under, add a recurring outflow of -$1,500 per month from April through June. Label it Slow Q2 scenario so you know what it represents.
  5. Watch the forecast line redraw. Scroll the week-by-week breakdown and find the lowest projected balance.

Now read the result honestly. If the balance stays above the operating floor throughout the slow period and for a month or two afterward, the quarter is manageable — your buffer absorbs it. If the line drops below the floor in a specific week, the simulation has found the exact week where a slow Q2 becomes a genuine shortfall. You now know: that week needs a plan, and you have months to build one.

The options that become visible are the same ones that vanish when you discover the problem the week it happens: defer a planned purchase, develop a pipeline client before the slow stretch starts, or increase the buffer account sweep now while income is healthy.

When you exit simulation mode, your real forecast is restored untouched. The slow quarter was just a question. Now you have an answer grounded in actual numbers.

The 52-week forecast is the foundation you run simulations against. Build it with honest recurring anchors first, then stress-test with the slow-quarter adjustment.

Tax-instalment forecasting for Canadian freelancers

If you owe more than $3,000 in federal income tax in a given year — or more than $1,800 in Quebec — the Canada Revenue Agency expects you to pay quarterly instalments rather than a single lump sum at filing. The due dates are March 15, June 15, September 15, and December 15.

Miss an instalment and you owe CRA interest on the shortfall. It is not a brutal rate, but the instalment itself is not small — for a freelancer earning $80,000 gross, each quarterly payment might be $4,000 to $6,000 depending on your deductions and province. That kind of outflow, arriving four times a year on fixed dates, belongs in the forecast whether you find it welcome or not.

To enter instalments in Recurna Flow, add each one as a recurring outflow from the tax/buffer account — or, if your instalment amounts vary by quarter, enter each as an individual dated transaction. Set the account to the tax/buffer account (not the operating account) so the forecast reflects where the money actually comes from. Once they are in, the instalment months show up as predictable dips in the balance chart. You can see, months in advance, whether the tax/buffer account will cover September’s payment or whether your monthly sweep needs to increase starting now.

The discipline that makes this painless: sweep your withholding percentage immediately when income lands, not at the end of the quarter when the instalment is approaching. Treat it as a cost of doing business, not a saving. If you earn $6,000 in a month and your effective tax rate is 28%, move $1,680 to the tax account the same day. The operating account never sees money that was never yours.

HST and GST remittances follow the same pattern. If you are registered for HST, you collect the tax on top of your fees and remit quarterly or annually to the CRA. Model the remittance outflows in the forecast as scheduled transactions so they are never a surprise balance hit. The money belongs to the government — the forecast is simply acknowledging that.

If you are not sure whether you are required to make instalments, CRA’s My Account portal shows your instalment schedule based on prior-year taxes owed. Your accountant can confirm the recommended amounts. What Flow adds is the week-level view: not just how much you owe on June 15, but what your balance looks like on June 14 and whether the tax/buffer account is funded enough to cover it without touching the operating account at all.


Variable income budgeting is not harder than salaried budgeting — it runs on different inputs. The category totals matter less than the timing. The question is not “did I spend more than I earned this month?” It is “what is my balance the week the rent comes out, and is it above the floor I drew for myself?”

A forecast built from conservative invoice anchors, realistic floors, and stress-tested slow quarters answers that question directly. The slow quarter you saw coming in January is a plan. The same quarter discovered in week two of April is a scramble.

Saving simulations and comparing them side by side are Pro features. On the free tier you can still build a slow-quarter scenario and read its effect on the next 12 weeks of your forecast.

The unlimited forecast horizon — and the ability to run multiple saved simulations and compare them directly — comes with Recurna Flow Pro.

Try it in Recurna Flow

Model your own what-ifs and watch the forecast move before you commit.

Get started