K-11
Cash-to-Cash Cycle Time
How many days is cash locked up between paying suppliers and collecting from customers — and are DIO, DSO, and DPO on consistent bases before you subtract them?
There is a reference build of this metric: the Inventory Health & Working Capital dashboard in the showcase runs this definition over frozen, simulated data — not a live client system.
Definitions and source tables below are current to the date above — verify against current SAP, Oracle, Microsoft, Infor, and Databricks documentation before you build.
What cash-to-cash measures
Cash-to-cash is the one supply chain metric the finance organization already tracks: how many days cash is tied up between paying a supplier and collecting from a customer. It is three ratios subtracted — days of inventory outstanding plus days sales outstanding minus days payable outstanding — which makes it unusually easy to compute and unusually easy to compute wrongly.
Each of the three components carries its own basis switches, and the subtraction is only meaningful when those bases are settled. The classical convention strikes inventory and payables against cost of goods and receivables against revenue, which means the three sets of days are not strictly comparable units being added together. That is a known compromise, not a mistake — but it has to be stated, because the alternative convention of putting all three on revenue produces a different number and claims a comparability it does not have.
It is also the metric with the least grain available to it. Receivables and payables do not carry product: an invoice is owed by a customer, not by a product line. So a product-level cash-to-cash figure does not exist without allocating receivables to products, which manufactures a number rather than measuring one. The inventory leg has product grain; the other two do not; and the honest presentation says so out loud rather than hiding the seam behind a filter.
Also answers to C2C · Cash Conversion Cycle · CCC · DIO + DSO − DPO
The decision switches
Three switches, and the third one is a constraint rather than a preference — two of the components simply do not have the grain the third one does.
| Switch | Settings | Practice default |
|---|---|---|
| Component bases | Inventory and payables on COGS, receivables on revenue · All three on revenue | The classical convention, stated on the chart so nobody has to reverse-engineer it. |
| Balance basis | Average balances · Period-end snapshot | Average of period ends, over the same window for all three components. |
| Scope | Company or legal entity · Product or site | Entity level; if a product cut is demanded, show product-level inventory days beside entity receivables and payables and label the seam — never allocate receivables to products to force it. |
Component bases
- dependsInventory and payables on COGS, receivables on revenue — the classical convention — the days are not strictly comparable, and that is acknowledged
- raises the scoreAll three on revenue — buys a comparability it cannot keep, and inflates the inventory leg
Practice default The classical convention, stated on the chart so nobody has to reverse-engineer it.
Balance basis
- dependsAverage balances — reflects what was actually held and owed through the window
- dependsPeriod-end snapshot — moves with window dressing at every one of the three legs
Practice default Average of period ends, over the same window for all three components.
Scope
- dependsCompany or legal entity — the only grain all three components genuinely share
- dependsProduct or site — a construction — inventory has product grain, receivables and payables do not
Practice default Entity level; if a product cut is demanded, show product-level inventory days beside entity receivables and payables and label the seam — never allocate receivables to products to force it.
Formula & grain
C2C days = DIO + DSO − DPO
- Components
- DIO — inventory balance over COGS per day; DSO — receivables balance over revenue per day; DPO — payables balance over COGS per day
- Grain
- Legal entity or company code, per period
- Note
- A negative cash-to-cash means suppliers are financing the cycle — a payment-terms outcome, not automatically an operations achievement.
Common pitfalls
- Mixed bases treated as interchangeable days — Days struck against cost and days struck against revenue are different units being added together. The classical convention accepts that on purpose; a chart that does not say which convention it used leaves its audience unable to tell.
- Product-level cash-to-cash — Receivables have no product grain, so any product cut requires allocating them — and the allocation, not the business, then drives the answer. Present product-level inventory days beside entity-level receivables and payables instead.
- Averaging monthly cash-to-cash — A mean of twelve monthly figures is not the annual figure. Recompute each component from summed flows and averaged balances over the full window.
- A DIO that disagrees with your days of supply — If the inventory leg here is computed differently from the days of supply on the operations dashboard, the two will contradict each other in front of the finance organization. Build one shared computation and let both surfaces read it.
Source tables — SAP
Source tables — JD Edwards
Source tables — Dynamics 365
On-hand with item prices gives inventory value; customer and vendor transactions give the open receivable and payable balances. Every one of them is company-partitioned, and cash-to-cash is a per-company number, so the partition is the grain.
Source tables — Infor M3
Source tables — Oracle EBS
Payment schedules carry the aging truth on the receivables side — the amount still due and when it was due — which is what the days figure needs, rather than the invoice header alone. Sum the on-hand detail before valuing it.
Source tables — Oracle Fusion
On-hand valued at perpetual-average cost gives the inventory leg; payment schedules and payables invoices give the other two. Keep the valuation consistent with whatever the COGS figure in the denominator is struck at.
Store the components, not the ratio
Every switch above is a different way of reading the same underlying facts, so the components — quantities, dates, values, flags — are what belongs in the gold layer, never the finished percentage. Bronze keeps the source tables as extracted, silver resolves the encodings once, and gold carries a component-level fact that each variant of Cash-to-Cash Cycle Time reads as a SELECT — the pattern worked through in full in the OTIF entry's landing pattern.