Preview
Unauthenticated design preview. Every figure below is genuine output from a pipeline run against the synthetic DataRite dataset — DSO 61.33, CCC 38.43, closing cash £2,001,620 — including the two fields that correctly report NOT AVAILABLE. The paid sections are unlocked here so you can see them.
Run selected
Client: DataRite Consulting Ltd
1 run retained · newest first
Working capital
Diagnostic for 2026-08-28
Days sales outstanding
you collect in
Days payable outstanding
you pay in
Days inventory / WIP
held as work in progress
Cash conversion cycle
Anchor
Cash today
£2,001,619.91closing bank balance
Runway
NOT AVAILABLEthe business was cash generative over the statement period (net +41,976.94 per month); a runway figure only applies to a net cash outflow
First shortfall
NOT AVAILABLEset a minimum cash threshold to get this
Total receivables
£5,739,933.91open, after credit notes
Receivables distribution
Share of open AR by ageing band(click a bar to filter the risk table)
total = £5,739,933.91
Current
£3.50m
1-30
£1.66m
31-60
£578k
61-90
£0
90+
£0
Days past due
13-week direct forecast
Closing balance per week
| Week | Starting | Opening | Receipts | Payments | Closing | Confidence |
|---|---|---|---|---|---|---|
| W1 | 2026-08-31 | 2,001,620 | 926,121 | 909,203 | 2,018,538 | high |
| W2 | 2026-09-07 | 2,018,538 | 802,602 | 707,369 | 2,113,770 | high |
| W3 | 2026-09-14 | 2,113,770 | 502,385 | 463,563 | 2,152,592 | high |
| W4 | 2026-09-21 | 2,152,592 | 620,242 | 470,528 | 2,302,307 | high |
| W5 | 2026-09-28 | 2,302,307 | 945,781 | 658,670 | 2,589,418 | medium |
| W6 | 2026-10-05 | 2,589,418 | 430,976 | 572,761 | 2,447,634 | medium |
| W7 | 2026-10-12 | 2,447,634 | 614,836 | 59,787 | 3,002,683 | medium |
| W8 | 2026-10-19 | 3,002,683 | 349,570 | 143,267 | 3,208,987 | medium |
| W9 | 2026-10-26 | 3,208,987 | 135,149 | 417,087 | 2,927,048 | low |
| W10 | 2026-11-02 | 2,927,048 | 180,846 | 70,500 | 3,037,393 | low |
| W11 | 2026-11-09 | 3,037,393 | 231,426 | 14,016 | 3,254,803 | low |
| W12 | 2026-11-16 | 3,254,803 | 0 | 143,267 | 3,111,537 | low |
| W13 | 2026-11-23 | 3,111,537 | 0 | 417,087 | 2,694,449 | low |
Collection risk
Ranked by exposure, deterioration, concentration and broken pattern
| Score | Customer | Exposure | % of AR | Oldest | Exp. days | Recommended action |
|---|---|---|---|---|---|---|
| 63.9 | Marlowe Toolworks PLC | £769,075 | 13.4% | 1-30 | 80 | Chase this week: the account has broken its own payment pattern. Request a payment date in writing. |
| 42.7 | Harkness Industries & Sons Ltd | £577,958 | 10.1% | 31-60 | 78 | Standard dunning cycle; monitor at the next run. |
| 35.7 | Sedgewick Fabrication Group Ltd | £431,669 | 7.5% | 1-30 | 62 | Standard dunning cycle; monitor at the next run. |
| 29.2 | Quarrington Components PLC | £489,599 | 8.5% | Current | 66 | No action beyond the normal statement cycle. |
| 26.9 | Inglewood Fabrication Group Ltd | £32,083 | 0.6% | Current | 34 | No action beyond the normal statement cycle. |
| 25.3 | Ravensworth Industries & Sons Ltd | £65,468 | 1.1% | Current | 46 | No action beyond the normal statement cycle. |
| 24.6 | Rosthwaite Industries & Sons Ltd | £412,547 | 7.2% | Current | 60 | No action beyond the normal statement cycle. |
| 21.2 | Ulverston Systems Limited | £205,176 | 3.6% | Current | 65 | No action beyond the normal statement cycle. |
| 19.6 | Brightwater Engineering Limited | £329,115 | 5.7% | Current | 62 | No action beyond the normal statement cycle. |
| 18.3 | Stapleton Components PLC | £248,076 | 4.3% | Current | 59 | No action beyond the normal statement cycle. |
| 15.7 | Milbury Fabrication Group Ltd | £204,086 | 3.6% | Current | 66 | No action beyond the normal statement cycle. |
| 14.1 | Whitmore Castings & Sons Ltd | £177,100 | 3.1% | Current | 47 | No action beyond the normal statement cycle. |
CFO brief
What the numbers say, and what to do this week
# CFO Brief — DataRite Consulting Ltd **Prepared:** 28 August 2026 · **Currency:** GBP **Statement period:** 1 March 2025 – 27 August 2026 (545 days) **Forecast horizon:** week commencing 31 August 2026 → 29 November 2026 --- ## 1. Where the cash stands today Closing bank balance is **£2,001,620**. Over the statement period the business was **cash generative**, adding an average of **£41,977 a month**. That last point matters for how you read the rest of this brief: there is no burn rate, so **cash runway is NOT AVAILABLE** — a runway figure only means something against a net outflow. Reporting one here would be inventing a number. ### Working capital | Metric | Value | Formula and inputs | |---|---|---| | **DSO** | **61.3 days** | (avg AR 6,308,964 ÷ credit sales 37,545,856) × 365 | | **DPO** | **53.1 days** | (avg AP 3,389,276 ÷ COGS 23,278,431) × 365 | | **DIO** | **30.2 days** | (avg WIP 1,928,750 ÷ COGS 23,278,431) × 365 | | **CCC** | **38.4 days** | DSO 61.33 + DIO 30.24 − DPO 53.14 | Every figure above is recomputable from the inputs shown. Sources: AR/AP ageings and the financials summary in `/temp/input/`, all SHA-256 recorded in `temp/output/04_working_capital.json`. **Read on the cycle:** you collect in 61 days and pay in 53, so you are financing roughly **8 days of the operating cycle** yourself, plus 30 days of unbilled work in progress. The gap between DSO and DPO is the lever with the most cash behind it — every day taken off DSO releases about **£103,000** (£37.5m ÷ 365). --- ## 2. The 13-week picture Opening **£2,001,620** → closing **£2,694,449**. The low point is **week 1 at £2,018,538**; the balance rises from there. **No week closes below zero.** **The minimum-cash breach week is NOT AVAILABLE.** `min_cash_threshold` is still `null` in `/temp/resources/config.json`. CashLens will not assume a cash floor on your behalf. Set one number in that file and the next run reports the first breaching week automatically. ### Confidence - **Weeks 1–4** rest on invoices already issued with known due dates. - **Weeks 9–13** rest on behavioural projection. - **99.7% of projected receipts** come from customers whose own payment history is `HIGH` confidence (39 of 40 customers have six or more settled invoices). That is unusually strong; treat weeks 1–8 as reliable. ### A limitation you must read before acting on weeks 11–13 **Weeks 12 and 13 show zero receipts, and this is an artefact, not a forecast.** The AR ageing contains only invoices *already raised*. Work you will invoice in September and October is not in the file, so it cannot appear in the forecast. The same applies to payments: the AP ageing holds only bills already received. The practical effect is that **the tail of this forecast is light on both sides and the closing balance of £2.69m is not a reliable estimate of where you will actually be on 29 November.** Weeks 1–8 are sound. Beyond that, the forecast tells you what happens to *today's* book, not what happens to the business. To close that gap you would need a sales pipeline or billing forecast as a fourth input. --- ## 3. What changed since the last run **NOT AVAILABLE — this is the first run against this dataset.** No prior snapshot exists in `/temp/output/history/` to compare against. Every subsequent run diffs DSO, DPO, DIO, CCC, closing balance, total AR and high-risk count against its predecessor automatically. --- ## 4. The three actions that matter this week **1. Call Marlowe Toolworks about INV-10695 (£138,777).** Highest risk score on the book at 63.9, largest exposure at £769,075 (13.4% of total AR). This invoice fell due on 9 August and, critically, has now passed *its own customer's* median payment lag of 20 days — it should have been paid on 29 August. Marlowe pays late as a habit, but this is late even by Marlowe's standards, which is what makes it worth a call today rather than a statement. **2. Chase Harkness Industries (£577,958, 31–60 day bucket).** Second largest exposure, 10.1% of the book, and the slowest payer of any material account at a median **48 days beyond terms**. Nothing here has broken its pattern yet — this is simply a large, chronically slow balance. Ask for a dated commitment on the 31–60 day tranche. **3. Set the minimum cash threshold in `/temp/resources/config.json`.** Until it holds a number, the single most useful output of this forecast — the week you first breach your floor — cannot be produced. It is one line of config, and it makes every future run answer the question automatically. Together, actions 1 and 2 address **£1.35m, 23.5% of the receivables book**. --- ## 5. What this brief cannot tell you Stated plainly so nothing is inferred that the data does not support: - **Cash runway** — not applicable; the period was cash generative. - **The minimum-cash breach week** — no threshold configured. - **Change since last run** — first run, no baseline. - **Anything about revenue not yet invoiced** — outside the three inputs. ### Data quality notes The following were corrected before any figure above was calculated: - **6 duplicate rows** removed from the bank statement (double-posting artefacts). - **2 duplicate rows** removed from the AR ageing. The deduplicated AR total of £5,739,933.91 reconciles to the financials summary **exactly (variance £0.00)**. - **Three spellings of one customer** — "Northgate Precision Ltd", "Northgate Precision Limited" and "NORTHGATE PRECISION" — folded into a single account. Left unfolded, that customer's payment history would have been split three ways and its risk understated. - **One credit note (CN-10477, −£18,450)** treated as a negative open item that reduces AR. It is not counted as an overdue receivable. - **10 transactions have blank descriptions.** They are included in balances but excluded from recurring-pattern detection. - **Two date formats** (DD/MM/YYYY and YYYY-MM-DD) appear in the bank statement. Each is individually unambiguous and was parsed on its own shape; neither was guessed. - **Corporation tax was not projected forward** — it appears only once in the statement, below the three-occurrence threshold for establishing a pattern. It is identified but not forecast, so a payment may fall in the horizon that this forecast does not show. --- *Figures derive solely from the files in `/temp/input/`. Every metric has its formula and inputs recorded in the JSON envelopes in `/temp/output/`. Projections reflect observed payment behaviour and are estimates, not commitments. This brief recommends operational actions only.*
Not available
What this run could not tell you, and why
- cash_runway_weeks— the business was cash generative over the statement period (net +41,976.94 per month); a runway figure only applies to a net cash outflow
- minimum_cash_threshold_breach_week— min_cash_threshold is not set in /config/config.json; a cash floor is never assumed
These are absences, not zeroes. CashLens never substitutes a plausible figure for one it cannot derive from your files.
Also worth seeing
Visit /preview?locked=1 is not wired; to see the free-tier gate instead, change isPaid to false in src/app/preview/page.tsx — the forecast blurs behind an upgrade panel.