13-Week Cash Flow Forecasting — Case Study

Why the Forecast, and Understanding the Business First

Before opening a single spreadsheet, there's one question that decides how the entire model gets built: what problem is this forecast actually solving? Get that wrong, and the result can be a technically correct spreadsheet that still gives the wrong answer.

By Andris Škutāns Incoming Cash Flow Forecasting Part 1 of 5

"I want a cash flow forecast" can mean several different things. A lender wants to see one before renewing a credit line. An owner has been caught off guard by the bank balance once too often and wants a warning system. Growth has gotten fast enough that nobody's sure if there's enough cash to fund it. Each of those is a different job, and each changes what the model needs to emphasize — a forecast built to satisfy a bank covenant looks different from one built to give an owner a Monday-morning "what do I need to chase this week" list.

The question before the spreadsheet

Before building anything, the real question is which of three jobs the forecast needs to do: prove liquidity to a lender, give early warning of a shortfall, or check whether growth is outrunning available cash. Each one changes what gets emphasized in the model — a lender-facing forecast leans on documented commitments; an early-warning forecast leans on weekly granularity and variance tracking.

In this case, the answer was the early-warning version: the owner wanted enough lead time to act before a shortfall, not a report that confirmed one after it had already happened. That single distinction shaped a lot of what came later in the model — in particular, the weekly (not monthly) granularity and the emphasis on tracing forecast-vs-actual gaps, covered later in this series.

Getting acquainted with the business

Next, before touching any numbers: how does this company actually make money?

This business sells specialized technical equipment to customers across many countries. That single fact already told me a lot before I'd opened a single invoice:

What a generic template assumes
Steady
Regular monthly billing, predictable terms, one currency, one country — the shape most off-the-shelf forecast templates are built around.
What this business actually does
Irregular
Deal-by-deal international equipment sales, advance payments mixed with credit terms, multiple currencies, cross-border payment delays.

Multi-currency exposure, in particular, is the kind of thing worth confirming early rather than discovering three weeks into building the model. B2B equipment sales also tend to mix advance payments with credit terms — sometimes within the same customer relationship, which matters when a single customer's payment behavior doesn't fit one clean assumption.

I also noted each customer's industry. This isn't just paperwork — different industries order in different ways. A trading company might order at random times, with no pattern at all. A construction customer might order more in one season than another. A government or infrastructure customer might follow a buying cycle set by budgets, not by the calendar.

Why check this? Because it tells me whether a pattern is real or just chance. Say a customer ordered every few months for the past year. If their industry naturally runs on a cycle, that pattern is real, and I can expect it to continue. If their industry doesn't work that way, the same pattern might just be luck — three orders that happened to land a few months apart, with no real cause behind it. A forecast shouldn't be built on luck.

Here's what that mapping looked like once every customer with at least €5,000 in transactions over the trailing 12 months was sorted — no revenue figures yet, just a count of who these customers are. Smaller, occasional buyers below that line weren't part of this pass.

Industry categoryCustomersShare
Aerospace & Advanced Manufacturing3273%
Trading & Distribution614%
Electronics & Component Manufacturing37%
Other37%

44 customers in total, spread across 20 countries. Nearly three-quarters sitting in one broad category is itself a finding — it means most of this business's ordering behavior is going to be shaped by however that one sector tends to buy, not by "customers" as a generic average. That's a structural fact about the business, learned before a single dollar has been counted.

The same 44 customers also showed a clear pattern in how, and how often, they pay:

How they payCustomersShare
Pay in advance (prepayment)3784%
Pay on credit terms716%
Ordering patternCustomersShare
One payment only, so far614%
Every 2–3 months1636%
Every 4–6 months1739%
Irregular, no clear pattern12%
Other49%

Most of these customers pay before the equipment ships, and most order every few months rather than on a fixed monthly cycle. That's exactly the kind of behavior a generic forecasting template — built around steady monthly billing — would get wrong from the start.

One more useful cut on the same 44 customers: how recently each one actually paid.

Last paymentCustomersShare
Within the last month1841%
1–3 months ago1227%
4–6 months ago716%
Over 6 months ago, or no payment on record716%

I also pay attention to:

What this phase produces

There are no forecast numbers yet. That's the point of this step. It builds the framework I'll use to make sense of the numbers (to interpret the numbers) once they arrive.

"A spreadsheet can be built correctly and still give the wrong answer, if it's built on assumptions that don't match this business."

Skipping this step is the most common way a forecast ends up technically sound but practically useless — the formulas work, the totals tie out, and the model still doesn't reflect how this specific business actually moves cash. The next part covers where the real data work starts, and where the first genuine surprises showed up.

This is Part 1 of a 5-part case study. Part 2 — processing incoming money from customers — I plan to publish soon.

Why do I need all the information?

Not every expected receipt has the same probability of arriving on time. Two invoices with the same value may have completely different collection risk depending on the customer. Additional customer information helps estimate that risk and identify which assumptions deserve management attention.

Country

A customer's country can influence payment behaviour and collection risk. Payment cultures differ from one country to the next, and international transfers can take longer to clear than domestic ones. Political instability, sanctions, currency controls, or banking disruptions can delay payments outright, and legal collection procedures vary significantly between jurisdictions.

Country should not determine whether a payment is included in the forecast, but it can help explain why certain receipts deserve closer monitoring.

Industry

Industries often have predictable payment characteristics. Construction companies frequently pay after project milestones; retail businesses may experience strong seasonal cash flows; government organisations often have long but predictable approval processes; manufacturers may delay purchases during economic slowdowns.

Knowing the customer's industry helps management understand which payments are likely to follow established business cycles and which are more uncertain.

How often money is received

Historical payment frequency provides valuable context, but it should not replace information about known future business. It helps answer one question: how predictable is this customer?

Customer typePattern
RecurringRegular purchases with relatively predictable cash inflows.
OccasionalPurchases periodically, but irregularly.
One-timeNo evidence of future business.

This distinction lets management separate stable recurring revenue from unpredictable one-off transactions.

Reliance on large one-off payments

Many businesses unknowingly depend on a small number of large transactions. If several significant receipts depend on contracts that have not yet been signed, or on customers that buy only occasionally, the forecast may appear healthy while carrying substantial risk.

Reviewing payment frequency this way answers a few practical questions: how much of the forecast depends on customers who rarely buy, how much depends on contracts that have not yet been secured, and what percentage of expected cash receipts comes from unpredictable business. The greater the dependence on infrequent large deals, the greater the need for management attention and contingency planning.

Last payment date

The date of the last payment provides a simple indication of current customer activity.

ProbabilityBasis
HighPaid within the last 1–2 months, or several recent payments.
MediumPayments typically occur every 3–4 months.
LowOnly one payment in the last 5–9 months, or no recent payment history.

This does not predict payment by itself, but it helps prioritise collection efforts and management review.

Payment terms

Payment terms reveal when cash should normally be received. Prepayment significantly reduces collection risk because cash is received before goods or services are delivered. Net 30, Net 60 and similar terms introduce credit risk and timing uncertainty. If a customer consistently ignores agreed payment terms, management may decide to require deposits or full prepayment, reduce credit limits, pause deliveries until overdue invoices are settled, or renegotiate contract terms.

Historical days sales outstanding (DSO)

DSO measures how long customers typically take to pay invoices. For businesses receiving mostly advance payments, DSO may provide limited forecasting value, because many receipts occur before invoices become due. For customers buying on credit, however, DSO remains useful because it identifies payment discipline — helping management decide which customers require closer collection monitoring, which deserve different payment terms, and where sales should negotiate deposits or milestone payments.

Relationship strength

The quality of the commercial relationship often influences future cash receipts more than accounting data alone.

Strong relationship
Positive signal
Greater likelihood of repeat business, better communication, higher willingness to resolve payment issues, and greater acceptance of deposits or revised payment arrangements.
Weak relationship
Risk signal
Poor communication, pricing disputes, service dissatisfaction, higher risk of losing future business, and higher probability of delayed payments.

This information rarely exists in accounting software. It is typically gathered from sales representatives, account managers, operations or delivery teams, and management's own experience. A simple scoring system — Strong, Good, Neutral, Weak, Poor — is usually sufficient, with supporting notes capturing context such as the key decision maker, previous disputes, price sensitivity, how quickly payments are usually approved, or a recent change in ownership.

Seasonality and known payment patterns

Many customers follow predictable annual or monthly patterns — retail customers placing large orders before holidays, construction companies slowing during winter, agricultural businesses paying after harvest, schools purchasing before the academic year, or manufacturers reducing activity during annual shutdowns. Understanding these patterns helps management distinguish between expected seasonal changes and genuine business problems.

Known payment patterns can improve forecast quality further — for example, a customer that always pays on the final day of the month, pays only after board approval, normally splits large invoices into several payments, or always delays payment by roughly a week. These behavioural patterns often produce more realistic cash forecasts than relying only on contractual due dates.


Frequently asked questions
What if a client can't clearly say why they want a forecast — they just say "we need one"?+
That's common, and it's worth pushing on rather than defaulting to a generic build. Usually a few follow-up questions surface the real driver — a recent scare with the bank balance, a lender conversation, a hire or investment they're unsure they can afford. The answer to "what recently made you think about this" is often more revealing than "why do you want a forecast," which tends to get a vague answer.
Does matching customers to industries matter for a business with only a small number of customers? +
It matters more, not less. With only a few customers, each one individually can move the whole forecast, so understanding whether a given customer's ordering pattern is seasonal, cyclical, or genuinely random has an outsized effect on how much confidence to put in any single week's number.
How do you learn how a company actually makes money if the owner doesn't have time to walk through it in detail?+
The general ledger and twelve months of invoices answer most of it directly — who paid, how often, under what terms — without needing a long interview. The owner conversation is still useful, but mainly to confirm what the data already suggests and to catch anything unusual the ledger wouldn't show, like a large customer relationship that's changing or a new sales channel that hasn't generated enough history yet.
Why only customers with at least €5,000 in the past 12 months? What happens to the smaller ones?+
Below that line, individual customers stop being worth tracking one by one — there are too many of them, and each one moves the forecast too little to justify the effort. They don't disappear from the forecast entirely; they get handled differently, as a group rather than by name. A later part of this series covers how.
84% of these customers pay in advance — doesn't that mean payment risk is low?+
It lowers one specific risk: money owed and not yet collected. It does nothing for a different risk sitting in the same data — how dependent the business is on the same handful of customers continuing to reorder. Low collection risk and low concentration risk aren't the same thing, and this business has one without the other.
Isn't having 73% of customers in one industry risky?+
Less than it looks, and not for the reason one may expect. Industries rarely disappear cleanly, and plenty of successful businesses build real advantages by specializing in one sector. The actual risk is correlated timing — if something hits that sector broadly (a funding freeze, a regulatory shift, a downturn specific to that niche), many customers can soften in the same window rather than independently. That's a slower, less frequent risk than the one already sitting in this data: the top 5 customers alone make up 77.5% of revenue. One of those relationships pausing moves the whole forecast immediately, with no sector-wide event required. Being spread across 44 customers and 20 countries within that one industry genuinely helps against the industry-level risk — it just doesn't do anything for the customer-level one.