Your cash position in Xero and the opening balance of your cash flow forecast usually differ because they answer different questions, not because one of them is wrong. Xero keeps two figures for every bank account: the balance on the bank's statement, as imported through the bank feed, and the balance built from the transactions recorded in Xero. A forecast starts from one of those figures and then places each open invoice and bill on the date the cash is expected, adds commitments that are not in the ledger yet, and runs on its own refresh schedule. The usual causes are five, and each one can be checked in a few minutes.
This page explains which Xero figure you are looking at, works through the five reasons with a check for each, and ends with a short routine for finding the cause when the numbers do not agree. It does not cover the wider difference between a forecast and your accounting reports, which is in our guide to cash flow forecasting and accounting reports.
Which Xero figure are you looking at?
Each bank account in Xero carries two balances. The statement balance is what the bank says, built from the statement lines the bank feed has brought in. The balance in Xero is what your books say, built from the account transactions recorded in Xero: the payments, receipts and transfers that have been entered or matched there.
The two meet through reconciliation. Reconciling in Xero means matching each imported statement line to the transaction in your books that it represents. Until a statement line has been matched, it is a record of what happened at the bank, not yet part of your accounts.
Xero's reports, including the balance sheet, are built from the ledger. The bank feed on its own does not change them. Reports are not limited to reconciled transactions, so a figure in a report can include an entry that nobody has matched to the bank yet, and a statement line that has been imported but not matched will not appear in a report at all.
So the first question when two numbers disagree is which two you are comparing: the bank's figure, your books' figure, or a forecast built from your books.
The five reasons your numbers differ
1. The forecast starts from your books, not the bank
A forecast connected to Xero takes its opening position from the accounting side. In Float, the starting balance is the "Balance in Xero" (or, on QuickBooks Online, the "In QuickBooks" balance) of the accounts you include, and not the bank's statement balance. That follows from forecasting from the ledger rather than from a bank connection.
If you are comparing the forecast's opening figure with the statement balance in Xero, a difference is expected whenever there are statement lines waiting to be reconciled.
The check: compare the forecast's opening balance with the balance in Xero for the same accounts, not with the statement balance. If those two agree, the forecast is reading your books correctly and the gap sits between your books and the bank.
2. Items that have not cleared, and items that have not been reconciled
Two different timing gaps sit between the bank and the books, and they are easily confused. The terms below are ours: the accounting bodies describe the first gap, and the software adds the second.
Not yet cleared at the bank. These are items in your books that the bank has not processed yet. ACCA's examiners list the classic causes as "unpresented cheques and uncleared lodgements" on one side, and bank-originated items such as "direct debits, standing orders, bank charges and BACS payments" that reach the statement before anyone records them in the books on the other. In US terms the first pair are outstanding checks and deposits in transit. They resolve themselves when the bank catches up.
Not yet reconciled in the software. These are movements the bank has processed and the feed has imported, but which nobody has matched in Xero yet. They are visible on the bank side and absent from the books until someone reconciles them. They resolve when the reconciliation is done, and not before.
A forecast built from the ledger is affected by the second gap more than the first. Float imports reconciled transactions only, because a payment that has not been matched cannot yet be placed against the right invoice, bill or account. Float's own guidance is to reconcile every day, or at least weekly, for that reason.
The check: look at the number of statement lines waiting to be reconciled on each bank account in Xero. If it is more than a handful, reconcile first and compare again.
3. Due dates against expected dates
An invoice's due date is what the contract says. Its expected date is when you think the customer will pay. Xero holds both: an invoice can carry an expected payment date, and a bill a planned payment date, separately from the due date.
A forecast should place cash on the expected date. ICAEW's guidance for finance professionals is to "assign expected, worst case and best-case dates for receipts and payments". In Float, each open invoice and bill takes its expected date from Xero where one has been set, and falls back to the due date where it has not. Dates can then be changed in Float, singly or in a batch, though changes made in Float do not flow back to Xero. For Xero users, Float's Smart Expected Dates can also apply a customer's average days late, worked out from your own payment history, to new invoices and bills as they import.
Two consequences explain many gaps. A forecast that uses due dates for a slow-paying customer will show cash arriving earlier than it does. And an overdue invoice with no new expected date is, by default, assumed in Float to be paid today, which lifts tomorrow's opening position until the date is moved; the app marks those items with a warning triangle. How payment terms and late payment shape cash timing in practice is covered in our guide to payment terms and late payment.
The check: sort open invoices by due date and look at anything overdue. Each one should either have a realistic expected date or be excluded from the forecast.
4. Two refresh schedules, not one
There are two separate updates between your bank and your forecast. The bank sends statement lines to Xero through the feed, on a timetable set by the bank, which varies by bank and by feed. The forecast then reads Xero on its own timetable. Float imports from your accounting platform once a day at an hour you choose in company settings, with a sync button for when you have just finished reconciling.
Neither step is continuous, so the bank, Xero and the forecast can each be showing a slightly different moment. A transaction reconciled at ten in the morning will not reach a forecast that imported at seven until the next import or a manual sync.
The check: note when the forecast last imported, then run a manual sync after reconciling. If the gap closes, it was timing.
5. Cash that is not in the ledger yet
A forecast is meant to include money that has not moved yet and, often, has not been recorded anywhere in Xero either. Payroll for next month, a VAT or tax payment, a loan repayment, a planned equipment purchase or contracted work that has not been invoiced are all real cash movements with no invoice or bill behind them yet. ICAEW, ACCA and the Association of Corporate Treasurers all treat items like these as part of a complete forecast.
In Float these are entered as budgets: placeholders that invoices, bills and reconciled transactions fill as they arrive. Draft invoices and bills in Xero are not part of the ledger balances until approved; Float can import Xero drafts if you switch that on in company settings. Xero's own short-term projection also accepts amounts added by hand, so the difference here is between any forecast and the ledger, not between one tool and another.
The check: list the large items in the forecast that have no invoice or bill behind them. Each one should be a budget somebody is responsible for, and it explains part of the difference from the balance in Xero.
The five reasons at a glance
| Reason | Where the gap comes from | Quick check |
|---|---|---|
| Starting figure | Forecast reads the balance in Xero; Xero also holds the statement balance | Compare the forecast's opening balance with the balance in Xero |
| Clearing and reconciling | Bank and books record the same movement at different times | Count statement lines waiting to be reconciled |
| Expected dates | Cash placed on the expected date, falling back to the due date | Review overdue invoices and bills |
| Refresh timing | Bank feed and forecast import run on separate schedules | Run a manual sync after reconciling |
| Items outside the ledger | Budgets for payroll, tax, loans and planned spend | List large items with no invoice or bill behind them |
Why a forecast reads your books rather than the bank
Treasury guidance tends to start a short-term forecast from cleared bank balances and then adjust for timing differences. That is a sound starting point for a treasury team watching cash day to day. A forecast connected to the ledger takes a different route, and the reasoning is ours.
A bank line tells you that money moved. The reconciled ledger tells you what it was for: which invoice it settled, which supplier it paid, which account it belongs to. A forecast needs that second piece of information to place the next movement. If a customer has paid three of four invoices, the forecast needs to know which one is still open and when it is expected; a bank credit on its own does not say.
The cost of that route is currency. A ledger-based forecast is only as current as the last reconciliation, which is why reconciling daily or weekly matters more than the import schedule. What "real-time" does and does not mean for a forecast is covered in what real-time cash flow visibility means.
How to find which reason applies to your numbers
When the forecast and Xero disagree, work through these checks in order, comparing again after each one.
Step 1: Name the two figures you are comparing. Write down which Xero figure you are looking at (the statement balance, the balance in Xero, or a report) and the forecast's opening balance, for the same accounts on the same date.
Step 2: Reconcile and sync. Reconcile the outstanding statement lines in Xero, then run a manual sync in the forecast. Compare again before going further.
Step 3: Check which accounts are included. Confirm the forecast includes the same bank accounts and credit cards as the Xero figure. In Float, all accounts are included by default and each can be switched off.
Step 4: Review overdue and soon-due items. Give every overdue invoice and bill a realistic expected date or exclude it, and check the expected dates on the largest items due in the next few weeks.
Step 5: Separate budgets from ledger items. Filter out budgets and compare what remains with Xero. Whatever is left after this step is either a reconciliation item or something to raise with whoever supports your forecast.
How Float fits
Float is a cash flow forecasting tool for finance teams that keep their books in Xero or QuickBooks Online. Sage Intacct support is coming soon; you can join the waitlist.
Float connects to the accounting platform, not to the bank. It imports once a day at an hour you choose, with a manual sync, and the connection is one-way, so nothing done in Float changes your books. The opening balance is the balance in Xero or in QuickBooks of the accounts you include, and only reconciled transactions enter the forecast. Every open invoice and bill carries an expected date taken from the accounting platform or the due date, which you can change singly or in a batch. Smart Expected Dates, based on your own payment history, is available for Xero users only. Commitments outside the ledger go in as budgets that fill with actuals as they reconcile.
If you are setting Float up for the first time, our guide to setting up automated cash flow forecasting with Xero walks through the connection, and what Xero gives your cash flow forecast covers what comes across from the ledger and what the finance team adds.
Frequently asked questions
Why does my cash position look different in Xero vs reports?
Because Xero keeps two figures for each bank account, while reports are built from the ledger. The statement balance is what the bank feed says; the balance in Xero comes from transactions recorded in your books. Reports use the ledger, so a statement line that has been imported but not reconciled is not in them. Reconciling the outstanding lines usually brings the figures together.
Why is my cash flow forecast opening balance different from my bank balance?
A forecast connected to Xero usually starts from the balance in Xero rather than the bank's statement balance, and in Float only reconciled transactions enter the forecast. Any statement lines waiting to be reconciled, and any items your bank has not cleared yet, sit between the two. Reconcile, then run a sync, and compare the forecast with the balance in Xero rather than with the bank.
Does Xero have expected payment dates?
Yes. A sales invoice in Xero can carry an expected payment date and a bill a planned payment date, separate from the due date. Float takes the expected date from Xero where one is set and uses the due date where it is not. Dates changed in Float do not flow back to Xero, and a change made in Xero overwrites the Float date at the next import.
Should a cash flow forecast use due dates or expected dates?
Expected dates. A due date is what the contract says; an expected date is when the cash is likely to arrive, and ICAEW's guidance is to assign expected, worst-case and best-case dates for receipts and payments. Using due dates for customers who pay late shows cash arriving sooner than it will.
How often does Float update from Xero?
Float imports from Xero once a day, at an hour you set in company settings, and you can run a manual sync at any time. The bank feed into Xero runs on a separate schedule set by your bank. Neither is continuous, so the forecast is as current as the last reconciliation and the last import.
Does reconciling in Xero change my forecast?
Yes. In Float only reconciled transactions enter the forecast, so reconciling adds them, and the opening balance updates at the next import or manual sync. Float's guidance is to reconcile daily, or at least weekly, so the forecast's starting position stays close to the bank.
The quickest way to see how your own numbers line up is to connect your ledger. Start a 14-day free trial of Float and compare its opening balance with the balance in Xero for the accounts you include.







