RPT 209 · Practitioner · Finance track · 11 min read
DSO & DPO
The paired metrics measuring how fast a contractor collects from customers and how long it takes to pay vendors - together defining the cash conversion cycle that determines how much of its own money it must finance.
Definition — what it is
Days sales outstanding (DSO) measures the average number of days it takes a contractor to collect a receivable after billing; days payable outstanding (DPO) measures the average number of days it takes to pay a vendor after being invoiced. Read together, and combined with how long cash is tied up in unbilled work, they define the cash conversion cycle - the length of time the contractor's own cash is committed to work before it is recovered. They are efficiency and cash-timing metrics, not profitability metrics: a company can be profitable and still have a punishing cash cycle because it collects slowly and pays quickly. In construction they are distorted by retainage and pay-when-paid terms, so a rigorous DSO is usually computed both with and without retainage to separate collection performance from contractual withholding.
Also known as: Days Sales Outstanding, Days Payable Outstanding, Cash Conversion Cycle, Working Capital Days
Why it matters — what it protects
DSO and DPO together determine how much of its own cash a contractor must tie up to run its business, which is often the real constraint on how much work it can carry. If it collects in 60 days and pays in 30, it is financing a 30-day gap on every dollar of work, and that gap multiplied across the whole revenue base is working capital that could otherwise fund more jobs. The two metrics are the clearest expression of whether the company is financing its customers or managing its cash cycle deliberately.
DSO is one of the earliest and most sensitive indicators of collection trouble and customer credit risk. A DSO creeping up month over month means cash is arriving slower than it used to, which will strain the cash forecast before anything else shows it, and a spike concentrated in one owner is a warning about that relationship specifically. Because DSO responds quickly to changes in payment behavior, it is a leading indicator that a lagging cash balance can only confirm after the fact.
DPO is a lever, but a two-edged one, and the metrics have to be read against each other rather than in isolation. Extending DPO conserves cash and shortens the conversion cycle, but pushed too far it damages vendor relationships and signals distress, so the goal is not simply a high DPO but a balanced cycle. Reading DPO alone invites the mistake of stretching payables to flatter a cash metric while quietly eroding the supplier base the company depends on.
These metrics are how lenders, sureties, and management benchmark working-capital efficiency and compare a contractor to itself over time and to its peers. A cash conversion cycle that is lengthening signals deteriorating working-capital management even when profit is steady, and it is exactly the kind of trend an underwriter reads as risk. Improving the cycle - collecting a few days faster, timing payments to the due date, billing sooner - often frees more usable cash than any financing arrangement, which is why the metrics belong in front of management, not buried in the accounting.
Lifecycle — how it moves
Definition and formula agreement
The company fixes exactly how DSO and DPO are computed - which balances, which period, and crucially whether retainage is included. Without an agreed definition, the metric means different things in different meetings and cannot be trended honestly.
Data assembly
Receivables, payables, revenue, and cost of revenue are pulled for the period from the aging reports and the income statement. The metrics inherit any error in the underlying agings, so clean, reconciled agings are a prerequisite.
Retainage adjustment
DSO is computed both with and without retainage, because retainage is contractually withheld and inflates DSO in a way that says nothing about collection performance. Reporting only the retainage-inclusive number hides the real collection efficiency.
Calculation
DSO is receivables divided by revenue times days in the period; DPO is payables divided by cost of revenue times days. The cash conversion cycle combines DSO, days of unbilled work, and DPO into a single days figure.
Segmentation
The metrics are broken down by customer, project, and vendor so a company-level number resolves into which relationships drive it. A blended DSO can look fine while one large owner is quietly stretching to 90 days.
Trend and benchmark analysis
The metrics are trended over time and compared to prior periods and peers. The trend matters more than the level: a rising DSO or lengthening cycle is a warning regardless of whether the absolute number looks acceptable.
Action
Deteriorating metrics drive targeted action - accelerating collections on a slow owner, timing payments to the due date, billing faster, or renegotiating terms. The metrics are only worth computing if they change behavior.
Feedback to forecast
The measured DSO and DPO, by customer and vendor, calibrate the collection and disbursement lags in the cash flow forecast. Metrics that never feed the forecast leave it running on contract terms rather than reality.
Anatomy — the data it carries
- DSO (with retainage)
- Average days to collect all receivables including retainage. Reflects total cash tied up but conflates collection performance with contractual withholding.
- DSO (excluding retainage)
- Average days to collect progress billings only. The true read on collection efficiency, freed of retainage distortion.
- DPO
- Average days to pay vendors and subcontractors. The payables-timing metric, read against DSO for the cycle balance.
- Days of unbilled work
- How long costs sit before they are billed. The often-overlooked third component that lengthens the cash cycle.
- Cash conversion cycle
- DSO plus days of unbilled work minus DPO. The single figure for how long the contractor's own cash is committed.
- Revenue basis
- The revenue used in the DSO denominator, and the period. The choice of trailing versus annualized revenue changes the number materially.
- Cost-of-revenue basis
- The cost figure in the DPO denominator. Must be consistent period to period for the trend to be honest.
- Customer-level DSO
- Collection days by owner. Where a healthy blended DSO can hide a single slow payer.
- Vendor-level DPO
- Payment days by vendor. Reveals whether the company is stretching specific suppliers.
- Retainage days
- The portion of DSO attributable to retainage. Isolates the slow, contractual asset from ordinary collections.
- Trend series
- The metrics over successive periods. The trend is what signals deterioration; a single period says little.
- Peer / target benchmark
- The comparison the metric is judged against. Turns a raw number into a verdict on efficiency.
Failure modes — how it breaks
Retainage inflating DSO unnoticed
DSO is reported with retainage included and read as a collection problem, when the elevated number is really just contractual withholding that is not due yet. Management chases a collection issue that does not exist while the actual progress-billing DSO, computed without retainage, is fine.
Reading DPO in isolation
A high DPO is celebrated as good cash management without noticing it comes from stretching vendors past terms. The metric flatters the cash cycle while the supplier relationships erode and trade credit tightens, and the damage is invisible until a key vendor demands deposits.
Ignoring the unbilled-work days
The cash cycle is computed from DSO and DPO alone, omitting the days costs sit before billing. A contractor with slow billing has a much longer real cash cycle than DSO and DPO suggest, and the omission understates how much cash the business actually ties up.
Blended metric hiding a slow payer
The company-level DSO looks acceptable, so nobody segments it, and one large owner quietly stretching to 90 days is masked by faster payers. The concentration risk and the collection opportunity are both invisible until that owner's slowness finally moves the blended number.
Inconsistent formula across periods
The revenue or cost basis, or the treatment of retainage, changes between periods, so the trend is not comparing like with like. An apparent improvement or deterioration is really just a definitional change, and decisions get made on an artifact.
Metrics that never change behavior
DSO and DPO are computed and reported but never drive a collection push, a billing acceleration, or a payment-timing change. The metrics become a ritual, and the cash they could free by improving the cycle stays tied up.
Metrics — how it is measured
DSO excluding retainage
Days to collect progress billings. The core collection-efficiency measure, freed of contractual withholding.
DSO including retainage
Days to collect all receivables. Reflects total cash tied up; read alongside the ex-retainage figure, not instead of it.
DPO
Days to pay vendors. The payables-timing measure, meaningful only against DSO and the vendor relationships behind it.
Cash conversion cycle
DSO plus unbilled days minus DPO. The headline working-capital-efficiency figure and the one to trend.
DSO trend
Direction and rate of change in DSO. A rising trend is the earliest sign collections are slipping.
Customer DSO dispersion
Spread of collection days across owners. High dispersion means a slow payer is hiding behind a healthy average.
Working capital freed per day improved
Cash released for each day the cash cycle shortens. Translates the metrics into the working capital at stake.
The AI shift — what actually changes
Conversational
DSO and DPO stop being numbers reported once a quarter and become something you can question live. You ask what is driving the DSO increase, how much of it is retainage versus genuine slow collection, which owner is stretching payment, and how many days the cash cycle would shorten if a specific collection or billing change were made - with the agings and revenue cited so the answer is grounded.
Generative
The analysis that should accompany the metrics is drafted from the data: a working-capital commentary explaining how the cash cycle moved and why, a customer-level collection narrative separating retainage from real slowness, and a working-capital improvement plan quantifying the cash each proposed change would free - written for management to act on rather than to compute.
Orchestrated
The metrics stop being a standalone calculation. DSO and DPO are computed consistently from the reconciled agings each period with retainage split out, segmented by customer and vendor, trended against targets, and fed back into the cash forecast's collection and disbursement lags so the forecast reflects measured behavior rather than contract terms.
Autonomous
The routine motion runs continuously: DSO and DPO recomputed on a fixed, consistent formula as the agings update, retainage separated automatically, the cash conversion cycle tracked against target, deterioration and slow-payer concentration flagged early, and the measured lags pushed into the cash forecast - while humans decide every collection push, payment-timing change, and terms renegotiation.
Prompts — put it to work
Tool-agnostic and copy-ready. Adapt the specifics — thresholds, contract windows, cost codes — to your own project before you run them.
Conversational — Working-capital review where the cash cycle is lengthening and nobody is sure why.
Analyze our working-capital efficiency. Compute DSO both including and excluding retainage, DPO, days of unbilled work, and the cash conversion cycle, using a consistent formula and telling me exactly which balances and revenue basis you used. Our cash cycle has lengthened over the last two quarters - decompose the change and tell me how much is slower collection, how much is retainage building up, how much is slower billing, and how much is a change in how we pay vendors. Segment DSO by customer and flag any owner stretching well beyond terms, and segment DPO to show whether we are stretching any vendor past terms. Then tell me the two or three changes that would most shorten the cycle and how much working capital each would free.
What good output looks like: A decomposed cash-cycle analysis separating collection, retainage, billing, and payment effects, segmented to the responsible relationships, with the working capital at stake quantified.
Follow-ups:
- How much of our DSO increase is really just retainage that has not released, not a collection problem?
- If we billed a week faster on our three largest jobs, how many days does the cycle shorten?
- Which owner's slow payment is doing the most damage, and are they also a concentration in our backlog?
Generative — You need the working-capital commentary and improvement plan for management.
Draft the working-capital commentary and improvement plan for this quarter's management review. Using DSO with and without retainage, DPO, unbilled days, and the cash conversion cycle, explain how the cycle moved and what drove it, distinguishing genuine collection slippage from retainage buildup and slow billing. Present a prioritized improvement plan: which collection efforts, billing accelerations, and payment-timing changes to make, with the working capital each would free and the relationship risk of any DPO extension called out honestly. Keep it measured and specific, in the register management expects, and do not recommend stretching vendors in a way that would signal distress.
What good output looks like: A grounded commentary and prioritized improvement plan with working capital quantified per action and DPO relationship risk called out honestly.
Follow-ups:
- Add a paragraph benchmarking our cash cycle against where it was a year ago.
- Quantify the total working capital we would free if we hit the ex-retainage DSO target.
- Rewrite the DPO section to make clear which vendors we will not stretch under any circumstances.
Orchestrated — You want DSO/DPO computed consistently and fed into the cash forecast.
Wire DSO and DPO into our reporting on a fixed formula. Compute both DSO figures - with and without retainage - DPO, unbilled days, and the cash conversion cycle from the reconciled AR and AP agings and the income statement, documenting the exact basis so every period is comparable. Segment DSO by customer and DPO by vendor. Feed each customer's measured collection lag and each vendor's measured payment behavior into the cash forecast's timing assumptions, replacing the contract-term assumptions. Trend all metrics against our targets and flag any deterioration. Cite the agings and revenue basis for each figure and flag any period where the formula could not be applied consistently.
What good output looks like: Consistently computed, segmented DSO and DPO with the measured lags feeding the cash forecast and metrics trended against target, sources cited and any inconsistency flagged.
Follow-ups:
- Show me how replacing contract-term assumptions with measured lags changes the cash forecast's low point.
- Which customers' measured collection lags differ most from their contract terms?
- Trend our cash conversion cycle over the last eight quarters and flag the inflection points.
Autonomous — Standing policy for continuous working-capital-metric monitoring.
Monitor DSO, DPO, and the cash conversion cycle continuously under these rules. Recompute all metrics on our fixed, documented formula as the reconciled agings update, always splitting DSO into with- and without-retainage figures. Segment DSO by customer and DPO by vendor, and flag early any deterioration in the cash cycle, any customer whose collection lag is stretching beyond a defined tolerance, and any concentration where one slow payer is masked by the blend. Feed the measured collection and payment lags into the cash forecast. Never launch a collection escalation, never change a vendor payment schedule, and never propose a terms renegotiation without my approval, and route every deterioration and slow-payer flag to me with the working capital at stake.
What good output looks like: Continuously computed, segmented working-capital metrics feeding the cash forecast with early deterioration flags, where every collection and payment action stays with a person.
Follow-ups:
- Show me every metric that deteriorated and every slow payer flagged this period.
- Which improvement actions would free the most working capital, ranked?
- Draft the collection-priority list for the slow payers for my approval.
Get the full Construction AI Prompt Catalog — every prompt in the library in one document.
Maturity — locate yourself honestly
Level 0 - Not measured
Cash timing is felt but not measured. There is no DSO or DPO, no cash conversion cycle, and no way to tell whether working-capital efficiency is improving or decaying.
Level 1 - Computed
DSO and DPO are calculated periodically, but often with retainage lumped into DSO, on an inconsistent basis, and without the unbilled-days component of the cycle.
Level 2 - Split and segmented
DSO is split with and without retainage, the full cash conversion cycle is computed on a consistent formula, and the metrics are segmented by customer and vendor and trended.
Level 3 - Assisted
The metrics are computed consistently from reconciled agings, decomposed into their drivers, benchmarked and trended, and fed into the cash forecast, with improvement plans drafted for review.
Level 4 - Operated
The metrics are recomputed continuously inside guardrails - consistent formula, retainage split, segmentation, trending, and forecast feedback - while humans own every collection push, payment-timing change, and terms decision.
Common questions
Why compute DSO both with and without retainage?
Because retainage is contractually withheld and not a collection failure, so including it in DSO conflates two very different things. Retainage sits in receivables for months by design, often not releasing until well after closeout, and a DSO that includes it will look alarmingly high even when the contractor collects its progress billings promptly. Computing DSO without retainage isolates true collection efficiency - how fast ordinary billings are paid - while the with-retainage figure shows total cash tied up. Reporting only one number hides half the story, which is why disciplined contractors carry both and read them together.
What is the cash conversion cycle and why does it matter more than DSO or DPO alone?
The cash conversion cycle is DSO plus the days costs sit unbilled minus DPO, and it measures how many days the contractor's own cash is committed to work before it is recovered. It matters more than either metric alone because the individual numbers can mislead: a company can have a good DSO but a long cycle because it bills slowly, or a flattering cycle only because it stretches vendors dangerously. The cycle captures the net effect of collecting, billing, and paying together, and it translates directly into working capital - every day the cycle shortens frees cash that would otherwise fund the gap between paying for work and getting paid for it.
Is a higher DPO always good?
No, and reading DPO in isolation is a common trap. Extending DPO toward the due date is legitimate cash management and shortens the cash conversion cycle, but pushing it past terms damages vendor relationships, can tighten or revoke trade credit, and shows up externally as a distress signal that sureties and suppliers watch for. The goal is a balanced cycle, not a maximized DPO: pay vendors deliberately at the due date to conserve cash without harming the relationships the business depends on. A high DPO built on chronic lateness flatters the metric while quietly eroding the supplier base, which is why DPO is only meaningful when read against DSO and the health of the vendor relationships behind it.