Budget P&L & forecast

Flowtly Editorial Team22 minUpdated

Every budget in Flowtly includes a P&L view that brings together income, expenses, and balance in one place. This article explains how to open that view and what each figure means.

Opening the P&L view

  1. Navigate to Budgets in the main menu.
  2. Click the tile of the budget you want to analyse.
  3. Select the Budget Summary tab (it is the default tab when you open a budget).

The view is split into a headline KPI section at the top and a chart below, followed by the breakdown table.

Headline KPIs

The top of the P&L view shows three headline figures for the current period:

Figure What it shows
Income Total revenue attached to this budget in the current period (e.g. paid client invoices linked to the budget).
Expense Total costs charged to this budget in the current period.
Balance Income minus Expense. A positive balance means the budget is in surplus; a negative balance means it is over-spending.

Awaiting vs received: Within both income and expense, Flowtly distinguishes amounts that have already been received or paid from those that are still planned or awaiting settlement. This lets you separate confirmed cash flow from expected cash flow at a glance. Awaiting amounts appear with a lighter visual treatment so you always know what is confirmed versus pending.

Contracts with an incomplete billing cadence: A budget planned from contracts takes each contract's plan from its recurring billing: the start date, the interval and the amount. When a contract is missing any of the three, its plan can only count the payment-schedule lines already stored on it, and months without a stored line may be missing from the plan. The Budget Summary then shows a warning above the headline figures, Some contracts have an incomplete billing cadence, with the number of contracts affected. The warning does not name the contracts. It is not shown when every contract's cadence is complete.

Recurring lines from leases

In organisations that use the property-management features, a budget planned from contracts shows a Recurring lines card on the Budget Summary tab. It lists each recurring charge derived from the price lines of the leases in the budget, such as a service charge per m².

Each line shows the kind of charge and what it covers, the rate times the area or number of spaces with the months it runs, the lease it comes from, the amount per month, the plan for the year, the actual cost and the deviation from plan to date. The plan is the lease rate times the area or number of spaces in force times the months the lease runs. The actual cost is the incoming invoices linked to that one line through the lease's project or tags, and the deviation compares it with the plan to date, not with the whole year. A line over plan to date is flagged in words as well as in colour.

  • not attributable means the line's invoices cannot be linked to it alone. It is not zero, and it is shown differently from a real zero.
  • no area measured yet means the lease has no measured area, so the line has no plan; its actual cost is still shown. Record the area with an amendment, see Contract amendments.
  • The Total (lines with a plan) row adds up only the lines that have a plan, and its actual cost and deviation only the lines that are compared.
  • A footnote gives the date the plan is counted to, the amount on lines with no plan, and the amount that could not be attributed to a single line.

Planned, actual and deviation are in the budget's currency; a line's amount per month names its own currency when it differs. When the budget has no such lines yet, the card says so and explains that they come from the service-charge prices on the leases. On a budget not planned from contracts, the card is not shown.

P&L by tags and cost groups

Below the headline figures, the breakdown table lists every tag and cost group that has been applied to transactions inside this budget. Each row shows:

  • Tag / cost group name — the label used when the transaction was categorised.
  • Allocated amount — the slice of a shared cost that belongs to this budget specifically. When a transaction is shared across several projects or budgets, only the portion allocated here is counted.

This view is particularly useful when overhead costs (payroll taxes, office rent, software licences) are split across multiple budgets. You can verify your budget is carrying the right share and spot anomalies without leaving the P&L view.

Tag and cost-group rows are assigned to months on the same basis as the headline figures and the timeseries chart below (see Which month a cost counts in). Because all three agree, a tag's monthly amounts reconcile with the cost totals they sit under, and a paid cost is never counted once under its tag in one month and again as untagged in another.

Budgets filtered by tags. When a budget is limited to a set of tags, each cost appears under the filter tag that brought it into the budget, one row per tag. A document line carrying several of the budget's tags is split between them, never counted twice, and tags outside the budget's filter get nothing. In the by-project section, each document is placed on its project exactly as in the budget summary.

Filtering by a tag group's own tag. When a budget is filtered by a tag that has the same name as its tag group (for example the tag Operating costs in the tag group Operating costs), the budget counts every tag of that group, not only that one. A cost tagged only Administration from that group is included, so you do not need to tag a document twice. The cost appears on its own row, Administration, and the budget summary includes it too. Upper and lower case and spaces in the name do not matter. Any other filter tag counts only itself. When a document carries the group's tag on the document as a whole and a tag of that group on some of its lines, only those lines count, just as when the same tag is on both the document and a line.

When the budget's display currency differs from your organisation's currency, the by-project income and expense panels of a tag-filtered budget show their amounts in that display currency, like the headline figures above them. Each document is converted at its own date: an invoice at its sale date, a cost document at its related month, or at its creation date when it has none. A budget shown in your organisation's currency needs no conversion.

Single-project budgets. When a budget covers exactly one project, costs that no document places on a project are shown under that project, as they are in the summary's By project table, rather than under No project.

A plan taken from a sibling budget. When a contract-planned budget includes the hand-entered plan of a project held on another budget in the same budget group, that plan appears in the P&L under the tag the other budget is filtered by, not under Untagged. If the other budget is filtered by several tags, the plan is split between them in the same proportion as the project's actual costs on those tags; if none of its actual costs carry any of them yet, it stays under Untagged.

The P&L tab shows the same figures as the Budget Summary, split by tag and by project. For every period, total income, total cost by tag and total cost by project each equal the summary's income and expense for that period — income includes bank inflows and unpaid invoices, not only invoice rows, and costs include unpaid cost documents. A document carrying several tags at the same level is split between them rather than counted in full under each, so the rows always add up to the total, and a drill-down always adds up to the cell you opened. Foreign-currency amounts are converted into the budget currency exactly as on the summary; if a rate is missing, the P&L leaves those figures out instead of adding foreign amounts as if they were in the budget currency. The plan rows come from the budget's own plan — contract payment schedules or the planned amounts you painted per period — so they match the plan shown on the summary.

Reading the table

  • Over plan. An actual cost that is higher than its plan for the period is shown in red, with a small upward-trend mark in front of the amount. Hover over the mark to see Over plan. The mark is there because a negative amount is also red, for a different reason, so the colour alone would not tell you which one you are looking at. A period with no planned figure is never marked.

  • Incomplete months. On a budget that nets tenant recoveries against utility costs, a month can hold the recovery already invoiced to tenants while the provider's own invoice is not yet loaded. The recovery then outweighs the cost booked for that month, and the net figure would look like a negative cost. Instead of turning red, the figure keeps its normal colour and carries an orange mark; hover over it to see Recoveries booked, provider invoices not yet loaded. Such a month is never marked as over plan. A tag group and the total carry the mark for a month when any row under them does, and a year column that includes such a month says so. On the Budget Summary, these months are left out of the plan-versus-actual comparison, plan and actual alike, and the headline names them: Incomplete months, left out of the plan comparison.

  • Where a plan comes from. Every planned amount in Costs by tag is a button — under a tag, under a tag group and under the total. Click one and a panel opens on the plan: the planned amount comes first and is marked, with the actual cost for the same period beside it and the share of the plan it has used. Below that, Where this plan comes from explains the figure:

    • for a tag or the total, the plan lines behind it — contract payment-schedule lines and manually entered plan amounts — and those lines add up to the amount you clicked. On a quarter or year column they are the lines of every month in it;
    • for a tag group, the plan of each of its tags, which together make up the group's plan. Click a tag to see its own plan lines.

    A period marked no plan opens the same panel, which says that nothing was planned for that period. Any cost in that period is spending without a plan, so it is not marked as over plan. Where a figure has an actual-cost breakdown, a Plan / Executed switch at the top takes you to it.

    If the plan lines cannot add up to the amount, the panel says so instead of listing lines that explain a different number. This happens when a manually entered plan has no tags to split it by, or when part of a tag's plan was taken from a sibling budget. On a month column, the panel then offers the whole plan for that month instead.

    The total's plan is the budget's whole plan, including any plan that was not entered under a tag, just as the actual total includes untagged costs.

    With a tag group selected, the Untagged row carries the part of the plan that is not entered under any of that group's tags: plan with no tag at all, and plan tagged only in another group. A tag planned only in another group therefore has no row of its own in this group's table, because its plan is already inside Untagged. So the group's rows always add up to the total plan. The planned amount on the Untagged row is a figure, not a button: it opens no panel.

  • Category names appear once. A tag's short label is shown beside its name only when it adds something. If the name already contains the label, for example 01 Technical maintenance with the label Technical maintenance, only the name is shown.

  • Whole numbers. Switch on Whole numbers above the table to show amounts rounded to the unit, without decimals. The setting only changes how the figures are displayed: totals are still calculated from the exact amounts, so a rounded total can differ by one from the sum of its rounded rows. Cost-per-m² lines keep their decimals. Flowtly remembers the setting in your browser, so it does not change the view for anyone else.

Filtering and sorting

Use the column headers to sort rows by name or amount. If your organisation uses many tags, the search field above the table lets you filter by keyword.

Opening the transaction behind a person's cost

On the P&L by Person tab, selecting a person opens a panel that lists their direct-cost lines. A line that came from a bank transaction carries a wallet icon, Open settling transaction, which opens that transaction's own page. A line that came from an invoice or another document carries none: there is no single transaction behind it to open.

Every such line offers the icon. Pressing it fetches that one transaction and then opens it, so the icon is greyed out for the moment that takes, and the transaction opens in the same tab rather than a new one.

The icon appears only where your permissions admit the transaction's own page, which is open to fewer people than the panel is. Where they do not, the line still shows its label and amount — only the way through to the transaction is missing.

Awaiting vs received in detail

The chart area contains a toggle that switches between two perspectives:

  • Received / paid — only confirmed transactions (invoices marked paid, bank transactions already settled).
  • Awaiting — transactions that are booked but not yet settled (approved invoices pending payment, planned costs not yet due).

Switching between the two lets you stress-test the budget: if awaiting amounts were all to fall due at once, would the balance still be healthy?

This split describes settlement status only. It does not change which month an amount belongs to — a cost sits in the month its document relates to both before and after it is paid, and settling it moves it from awaiting to received without moving it between months.

On a budget that covers projects, an unpaid sales invoice counts as awaiting income when its line is on one of the budget's projects. A line with no project counts toward the project of the contract the invoice was raised under, so an invoice issued without projects on its lines still appears on that contract's project. A line that names a project keeps it, whatever the contract says.

The same rule applies when the budget's income is filtered by tags: a tagged sales-invoice line with no project counts toward its contract's project, paid or not. A tagged line that reaches none of the budget's projects — no project of its own, no project split, and no contract on one of the budget's projects — is left out of income. When that leaves income empty, the P&L says so: the note explaining the empty income section gives how many tagged lines were left out and why. Setting the line's project, or raising the invoice under a contract on one of the budget's projects, brings it in; re-tagging does not.

Timeseries chart

The bar chart shows one bar per calendar month. Each bar represents the actual income or expense figures recorded for that month.

Which month a cost counts in

A cost is counted in the month its document relates to — the Related month recorded on the transaction attachment. This applies whether or not the document has been paid, so a cost stays in the same month when it is settled.

Two qualifications apply:

  • No related month on the document. Flowtly falls back to the payment date and counts the cost in the month the payment was recorded.
  • A related period spanning several months. The amount is prorated across that period rather than placed in a single month.

Because attribution follows the document rather than the bank, clearing a backlog of older invoices in one month does not pull a year of cost into that month. Each document stays in the month it relates to, so the shape of the chart reflects when the work or supply happened rather than when the account was settled. A month can therefore carry cost even though no payment left the account in it, and a month of heavy settlement can show little cost of its own.

Monthly attribution changes only how a total is distributed, never the total itself. Period totals, the balance, and consumption measured against the planned budget count the same money regardless of when it was paid.

Income follows the equivalent rule: an invoice is recognised in its sale month rather than the month the client's payment arrived.

Plan and actual for the same month can differ

The monthly chart shows two figures for each month — what was planned and what actually happened — and the two are counted by different dates, deliberately:

Figure Counted by
Plan the date on the contract's payment schedule line; for a manually entered plan, the period you declared
Actual the document's related month, as described above

A plan figure and an actual figure for the same calendar month are therefore allowed to disagree, and a difference between them is not by itself a mistake. A large invoice can sit in June because June is its related month, while June's plan comes from a schedule line dated in June for something else entirely. Both are correct answers to two different questions.

What has changed is that the view now says which question it answered. Click a monthly bar, a row in the by-project breakdown or the forecast tile, and a panel opens that names the basis before it lists anything, then lists the individual lines behind the figure you clicked. Those lines add up to that figure — and if they ever do not, the panel tells you, rather than leaving you to add them up yourself.

Two cases the panel states outright instead of showing an empty list:

  • A figure that cannot be itemised. A contract holdback, or a lump sum booked to a period rather than to a dated line, has no lines to show, and the panel explains that instead of showing nothing. The forecast is the same kind of figure: it is a projection, not a sum of documents.
  • A document shared with other projects. The panel shows this budget's share as a percentage together with both amounts — the part counted here and the document's full value — because a document allocated entirely to this budget and a document that was never split are the same number but different facts.

A contractor who also logs time is counted once

When a budget includes employee costs, a person's logged time is already a cost of the project it was logged on. If the same person also invoices that work — a contractor whose invoice is allocated to them — the budget would otherwise count the work twice: once as logged time and once as the invoice.

So an invoice allocated to a person is left out of the budget's cost on a project where that person's logged time is costed, but only up to the cost of that logged time. The logged time stays; the part of the invoice that duplicates it does not, and any amount above it stays as cost. An invoice of 100,000 beside 1 hour of costed time at 100 therefore lowers project cost by 100, not by 100,000. The Expense figure, the P&L by tags, the by-project breakdown, the monthly panel and the list of activity rows all leave out the same part, so they still agree with each other.

  • Only on the project where the time was logged. Time logged on another project does not cover an invoice here.
  • Only for people whose time is costed. A subcontractor paid a lump sum who logs no time keeps the invoice as the cost.
  • Only for work. A car, equipment or benefit cost allocated to the person is not what their logged time costs, and it stays.
  • Only when the budget includes employee costs. Without them the invoice is the only record of the work, and it is counted.
  • Shared across a person's invoices. The logged time is handed out to the person's invoices on the project in date order, using the invoice's related month, or its creation date when it has none, and then in the order the invoices were created. Each invoice takes what remains of the logged time, so two invoices of 50,000 beside 50,000 of costed time leave out 50,000 in total, not 100,000. Invoices without a date come last.
  • In proportion. If only part of an invoice is allocated to the person, only that part is left out.
  • Over the budget's whole period. The invoice is compared with the person's logged time across the budget's dates (or the selected range, for a budget without dates), so the covered part stays left out in a month in which the person happened to log nothing. An invoice dated before the budget's period can still use up logged time first, so an invoice inside the period may keep more of its cost than you expect.

The invoice and the logged time rarely match exactly, and they are not expected to: a contractor may invoice work not yet logged, or log work not yet invoiced. The difference is information about which of the two figures to check, not an error in either direction.

How a derived figure is calculated

Some tiles on the Budget Summary show a figure that is calculated rather than added up: the Spend vs initial budget gauge and the projected tiles for spend, income and result. Each of them carries a small ? button next to its label. Click it to see how that figure is calculated, in three parts: what the figure is, what it is computed from — with the tile's own amounts and dates — and what it does not include.

Spend vs initial budget. The actual costs of the selected period divided by the whole initial budget of the linked projects. The initial budget has no dates, so on a multi-year project a low percentage does not mean little has been spent: costs from before the selected period are not counted. To see consumption since the project started, choose a Custom range beginning at its start. To judge the pace of spending, use Spend vs plan instead.

Projected spend, income and result. The actual figures of the completed months, plus the trend of those months extended to the end of the period shown. The range under the figure is the interval the result will fall within with 80% probability if that trend holds. When the budget's plan comes from contracts and their payment schedules run to the end of the period shown, projected spend and income stop at what those schedules still have to pay: if the trend would go past it, the figure and its range are lowered to it. In every other case — a manually entered plan, or a contract whose schedule stops before the end of the period or has no schedule at all — the forecast follows the trend only. The plan never raises a forecast, so a large payment planned for later does not move it up.

Refreshing figures

Budget figures are cached for performance. In most cases the cache updates automatically when new transactions arrive. If you need to force an immediate recalculation — for example, after bulk-importing transactions — click the Refresh icon in the top-right corner of the Budget Summary tab. This clears the cache for this budget and recomputes all figures from scratch.

Example use cases

  • A project manager opens a client project budget mid-quarter to check whether the balance is still positive after recent invoices were paid.
  • A finance controller uses the by-tags breakdown to verify that office rent is allocated at the correct 40% share to this department budget rather than counted in full.
  • An accountant settles a year of outstanding supplier invoices in a single payment run, then checks the monthly chart and finds each invoice still counted in the month it relates to instead of a single spike in the payment month.
  • A controller comparing spend month by month sets the related month on every incoming document so that costs line up with the periods they belong to, regardless of when the supplier is actually paid.

Related terms