Financial Analyst · Methodology

The accuracy score behind every forecast

The accuracy line is not a marketing number — it is your own track record. Every past forecast is scored against what your books later confirmed, and the line appears only when that record has earned it. This page explains how the score is computed, when we refuse to show one, and what we never claim.

Forecast accuracy x% (last N months, 3-month horizon) the monthly score, in the exact wording it reaches you in — x and N are your own months, and the line is withheld entirely until enough of them are scored
Forecast bias ±x% over the last N scored weeks the cash view's own line: every week the balance in your ledger is paired with the week the forecast promised, and the gap is kept

See the 13-week cash forecast in the sample →

The score

Scored against your own months, not a benchmark

There is no hand-picked demo data behind the badge. Each month's forecast is replayed exactly as it was made — using only what the model knew at the time — and compared with the actuals that followed, up to 3 months ahead. No hindsight, no retouching.

1

Freeze

Every monthly forecast is stored as a frozen snapshot: what the model believed, with the data it had that day. Snapshots are never edited after the fact.

2

Replay

When a new month closes, past snapshots are replayed against it: what did the forecasts made one, 3 and six months earlier say this month would look like — and what actually happened?

3

Score

The badge reports the 3-month view, and it appears only when forecast revenue landed within 15% of realized revenue — that is what “forecast accuracy 85%+” means. Miss the bar and the badge hides rather than bragging.

4

Direction of the miss

Beyond the size of a miss, we track its lean. If forecasts ran systematically high, the dashboard says so in plain words — “your revenue forecasts ran 4% optimistic over the last 9 months” — the sentence a rosy plan needs.

The honest no

When there is no score, we say so

A reliability figure computed from too little history is a made-up number. Below 6 scored months the badge does not appear at all — the dashboard shows “accuracy is still building” instead of a placeholder percentage.

  • Fewer than 6 backtested months → no percentage, ever. The score starts existing when the evidence does.

  • Months where the comparison base was zero are dropped, not guessed — a percent miss against zero is undefined, so that month is left out rather than given an invented denominator.

  • Every reported figure carries its sample size. You always read “over N months”, never a bare percentage with no history behind it.

The measured interval

How wide the miss usually runs

One score says how often forecasts landed; the interval says how far off they typically ran. From the same replayed history we take every realized-vs-forecast miss and read its 10th and 90th percentiles — the 80% band your own errors actually spanned. It is shown per metric and per horizon, next to the number it qualifies.

  • The band is measured, not modeled: it is the spread of your own past misses under the same walk-forward replay that scores the badge — no distributional assumptions, no borrowed benchmark.

  • A metric-and-horizon pair needs at least 8 scored past forecasts before an interval is shown. Below that the dashboard says “measuring” — tails read off a handful of points would be an invented range.

  • The middle of the band is your realized lean: when past forecasts ran systematically low or high, the band sits off-center around the forecast instead of pretending the errors were symmetric.

Independent review

Two models, one human escalation path

Your numbers are computed by deterministic code — never by a language model. The written analysis is drafted by one AI analyst and then challenged by a second, stronger Claude model acting as an adversarial reviewer, whose job is to attack the draft: every claim must match the cited figures.

  • The reviewer is adversarial by design: a separate, stronger Claude model with its own instructions to attack the draft. Where it and the analyst disagree, a person decides — never a third model.

  • When the two models disagree on anything material, nothing goes out — the item is routed to a human for a decision.

  • Arithmetic happens in code and is cited to source records; the models write sentences, they do not compute your numbers.

Trace to source

Every number opens to its origin

Each figure in a briefing, forecast or narrative links back to the records it was computed from — ledger lines, invoices, subscriptions — together with the worked calculation. A number that cannot cite its source is labeled an estimate, not dressed up as a fact.

Boundaries

What we never claim

  • Past reliability, not a promise

    The accuracy score summarizes the track record so far. It describes the past; it does not guarantee the next month.

  • Association, not cause

    When an outcome follows a decision, we report it as what happened over a period in which other things also changed — never as proof the decision caused it.

  • Ranges, not valuations

    Enterprise-value figures are shown as ranges under stated assumptions. They are planning aids — never a valuation, an appraisal or investment advice.

  • Read-only, always

    The Financial Analyst reads your books. It never posts entries, never closes a period, never moves money.

See the forecast that gets scored

The sample shows the 13-week cash forecast itself, with the same engine and the same honest gaps. The score is the one thing the sample cannot show: it only exists once your own weeks and months have been scored against your own books.