Plain-language questions
Ask for cash conversion cycle (CCC) per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.
KPI · Finance
The cash conversion cycle (CCC) is the number of days cash is tied up in stock and receivables before it comes back as customer payments, minus the days you take to pay suppliers. It combines days inventory outstanding, days sales outstanding and days payable outstanding in one figure. The shorter the cycle, the less working capital you need to grow.
Days inventory outstanding (DIO) + days sales outstanding (DSO) − days payable outstanding (DPO)
At the end of 2025 Acme Groothandel held €1,400,000 of stock against cost of goods sold of €8,400,000: 1,400,000 ÷ 8,400,000 × 365 = 60.8 days of inventory. DSO was 45.6 days and DPO 36.5 days. The cash conversion cycle is 60.8 + 45.6 − 36.5 = 69.9 days.
Fictitious figures for Acme Groothandel, a sample wholesaler.
A shorter cash conversion cycle means cash comes back faster and growth needs less funding. A longer cycle points to slower-moving stock, customers paying later or paying suppliers sooner; check which of the three components is changing. Compare the cycle with previous periods and, within the same sector, with similar businesses.
SQL & DAX
Two examples on a fictitious data warehouse for Acme Groothandel: a PostgreSQL query and a measure for a Power BI model. Adjust table and column names to your own model.
WITH pl AS (
SELECT SUM(amount) FILTER (WHERE account_group = 'revenue') AS revenue,
SUM(amount) FILTER (WHERE account_group = 'cogs') AS cogs
FROM gl_entries
WHERE entry_date > current_date - interval '365 days'
), bal AS (
SELECT (SELECT SUM(value) FROM stock_levels
WHERE snapshot_date = (SELECT MAX(snapshot_date) FROM stock_levels)) AS inventory,
(SELECT SUM(open_amount) FROM invoices WHERE open_amount > 0) AS receivables,
(SELECT SUM(amount) FROM purchase_invoices WHERE paid_date IS NULL) AS payables
)
SELECT ROUND(bal.inventory / NULLIF(pl.cogs, 0) * 365, 1) AS dio,
ROUND(bal.receivables / NULLIF(pl.revenue, 0) * 365, 1) AS dso,
ROUND(bal.payables / NULLIF(pl.cogs, 0) * 365, 1) AS dpo,
ROUND((bal.inventory / NULLIF(pl.cogs, 0) + bal.receivables / NULLIF(pl.revenue, 0)
- bal.payables / NULLIF(pl.cogs, 0)) * 365, 1) AS ccc_days
FROM pl, bal;CCC (days) =
VAR Cogs365 = CALCULATE(SUM(GL[Amount]), GL[AccountGroup] = "cogs", DATESINPERIOD('Date'[Date], MAX('Date'[Date]), -365, DAY))
VAR Revenue365 = CALCULATE(SUM(GL[Amount]), GL[AccountGroup] = "revenue", DATESINPERIOD('Date'[Date], MAX('Date'[Date]), -365, DAY))
VAR Inventory = CALCULATE(SUM(Stock[Value]), LASTDATE(Stock[SnapshotDate]))
VAR Receivables = CALCULATE(SUM(Invoices[OpenAmount]), Invoices[OpenAmount] > 0)
VAR Payables = CALCULATE(SUM(PurchaseInvoices[Amount]), ISBLANK(PurchaseInvoices[PaidDate]))
RETURN (DIVIDE(Inventory, Cogs365) + DIVIDE(Receivables, Revenue365) - DIVIDE(Payables, Cogs365)) * 365In ENABLE
Ask for cash conversion cycle (CCC) per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.
Define the KPI as a measure in your Power BI model and show it in the portal, with "Last refreshed" next to it. Access profiles and optional row-level security decide who sees which figures.
Add the KPI as a tile to a custom dashboard, compared with last year. The Dashboard Builder is a pilot and can be switched on per client.
With the built-in Targets app you set a target for the KPI per month, so you see actuals and target side by side.
FAQ
Add days inventory outstanding and days sales outstanding, then subtract days payable outstanding. With 60.8 inventory days, 45.6 receivable days and 36.5 payable days, the cash conversion cycle is 69.9 days. Calculate all three over the same period.
Yes, if customers pay before you pay your suppliers, the cycle is negative. This happens mostly in businesses that are paid upfront and hold little stock. In effect, suppliers are financing the business.
Working capital is an amount in euros at a point in time, the cash conversion cycle is a number of days. The cycle shows how quickly cash moves through the business; working capital shows how much cash is tied up in it right now.
In an online demo we show how ENABLE makes your data securely available and how you build on it: describing an app in the AI Builder, plain-language questions, dashboards and APIs. And how we set it up and manage it for you.