Accounting, Tax & Bookkeeping// definition

Flux analysis, and the thresholds that stop it being noise

In short

Flux analysis is the month-end comparison of each account against a prior period, a budget or a forecast, with a written explanation required for any movement past a threshold. That threshold has to be a pair — an absolute floor and a relative floor applied together — because either alone floods the review with one class of account and hides another.

Key takeaways

  • An absolute floor alone floods the queue with large accounts and hides small ones; a relative floor does exactly the reverse.
  • Apply the pair together, then add a hard ceiling flagging on absolute size alone — or a 4% move on the biggest account escapes.
  • Sign flips and accounts moving to or from zero need their own rules: the percentage change is meaningless or undefined.
  • A commentary is accepted only if it names a driver and attributes an amount, leaving a visible unexplained residual.
  • Last month's explanation does not carry forward. A recurring variance is re-asserted each period or it stops being a control.

Flux analysis is the comparison, at close, of each account's balance or movement against a chosen base — last month, the same month last year, budget, or a rolling average — with a written explanation required wherever the difference matters. It is a completeness control: not a hunt for errors, but a demand that every material movement have a named cause before the period is signed.

What decides whether it works is the threshold, and almost everyone implements it as one number. One number is always wrong, in one of 2 predictable directions.

Four comparison bases, and when each is honest

  • Prior month. Catches coding faults fastest, useless for anything seasonal — a landscaper's March always alarms beside February.
  • Same month last year. Handles seasonality, hides drift: a cost creeping up 4% a month arrives as one annual change with one explanation.
  • Budget or forecast. The only base testing a decision rather than a bookkeeping event; worthless if nobody revisited the budget after Q1.
  • Rolling average of the last 3 periods. The best default where there is no budget, absorbing one-off months without hiding a trend.

One threshold always fails, in the same two ways

An absolute-only threshold means every large account clears it every month, so the reviewer works a list of movements that are simply the business operating, while a small expense account tripling goes unseen. A relative-only threshold reverses it: small accounts flood on trivial swings, and the largest account moves a substantial sum without reaching the percentage.

So flag only when both floors are crossed, then add the rules the pair alone misses. Worked below against an absolute floor of 5,000, a relative floor of 5%, and a hard ceiling of 50,000.

AccountPrior to currentChangeChange %Outcome
Bank charges820 to 2,140+1,320+161%Not flagged — below the absolute floor
Cost of sales412,000 to 448,000+36,000+8.7%Flagged — it clears both floors
Revenue1,240,000 to 1,301,000+61,000+4.9%Flagged by the ceiling alone; the pair misses it
Subscriptions1,150 to 1,190+40+3.5%Not flagged by any rule, correctly
Consultancy0 to 18,400+18,400undefinedFlagged by the new-account rule; no ratio exists
Other income6,200 to -1,900-8,100sign flipFlagged by the sign rule, whatever the size
One rule set applied to six accounts, and which rule decides each

The third row justifies the whole arrangement. A 4.9% movement on the largest account outweighs everything else on the page combined, and the paired threshold suppresses it. The ceiling exists for that account.

A threshold that flags the same accounts every month is a subscription to a report nobody reads.

What a commentary must contain to count as explained

"Higher due to increased activity" explains nothing and is the modal answer. An accepted commentary needs 4 things; the third makes the control real.

  1. A named driver. Not a direction but a cause: 3 sites onboarded mid-month, a supplier price change effective on the 12th, an annual premium landing here.
  2. An amount attributed to that driver, so the explanation's arithmetic is visible rather than asserted.
  3. A residual — whatever the drivers miss, stated explicitly. Requiring drivers to cover 80% of the movement stops a plausible sentence standing in for an investigation.
  4. A recurrence flag: whether to expect this again next period, which is what makes the commentary usable by a forecast.

Residuals are where the interesting failures surface. Unexplained movements in income and expense of similar size, in one month, are usually a client transferring money between their own accounts — the detection rule is in transfers coded as income and as expense. A jump in fee expense with no matching sales movement usually means a settlement booked net, the gross-up problem in payouts that never match the sales behind them. A variance in an already-closed period points at duplicated data, as in the feed re-delivering transactions after a reconnect.

Who signs it, and what the signature asserts

The preparer writes the commentary; a second person accepts it. The reviewer is not re-checking arithmetic the system already did — they test the attribution, and may reject a commentary that is merely true. Both names and timestamps belong on the record, and nothing carries forward: a recurring variance is re-asserted each period, or the control becomes a subscription.

This is a close control, not a reporting pack. Advisory dashboards sit elsewhere; what flux owes the close is a defensible answer to why each material movement happened, before anyone relies on the figures — including whoever carries them onto a filing, where a wrong number produces a return that comes straight back rejected.

Implementing it is mostly threshold plumbing and a commentary store with versions and owners — the sort of thing we build under internal tools and ops, inside the reconciliation and close topic for accounting and tax practices.

Frequently asked questions

Short answers to the follow-ups this page tends to raise.

What thresholds should a flux analysis use?

A pair, applied together, plus 3 overrides. Flag when the absolute change clears a floor set from the client's own scale and the percentage clears a relative floor; then always flag above a hard ceiling regardless of percentage, on any sign change, and on any account moving to or from zero. Either floor alone floods the review and hides a whole class of account.

What makes a flux commentary acceptable rather than merely written?

It has to name a driver and attribute an amount to it, leaving a stated residual. "Higher due to increased activity" fails both tests. Requiring drivers to cover 80% of the movement, with the rest declared unexplained, is the single change that most improves commentary quality: it makes an incomplete explanation visible instead of persuasive.

Should flux analysis compare against the prior month or the prior year?

Prior month for coding faults, prior year for anything seasonal, and ideally both. Prior-month comparison surfaces a miscoded transaction within weeks but produces false alarms in a seasonal business. Prior-year comparison handles seasonality but hides gradual drift, because a cost creeping up each month arrives as one annual change with one tidy explanation.

  • flux analysis
  • close
  • variance
  • controls
// shipped work

The work behind this page

Builds from our portfolio that this page draws on.

Read next

Working on something in this space?

Tell us where you are in a sentence or two. We'll tell you honestly whether we're the right team, and what a sensible first slice of the work looks like.

Start the conversation