Working Capital KPIs Finance Teams Use: DSO, DPO, DIO, Aging, Turns, and Service Metrics

Capítulo 10

Estimated reading time: 11 minutes

+ Exercise

1) Core working-capital KPIs: definitions, formulas, inputs, and data sources

Finance teams use a small set of KPIs to translate day-to-day execution (billing, collections, purchasing, production, fulfillment) into a measurable cash impact. The most common mistake is treating these KPIs as “truth” rather than as models built from accounting and operational data. Start by being explicit about (a) the formula, (b) the numerator/denominator inputs, and (c) the system-of-record feeding each input.

Days Sales Outstanding (DSO)

What it answers: How many days, on average, it takes to collect cash after a sale is recognized and invoiced (depending on your definition).

Common formulas (choose one and standardize):

  • Balance-sheet DSO: DSO = (Ending A/R ÷ Credit Sales) × Days
  • Average A/R DSO: DSO = (Average A/R ÷ Credit Sales) × Days
  • Best-practice variant: use Credit Sales (not total sales) and align “Days” to the same period as sales (e.g., 30 for a month, 90 for a quarter).

Inputs: Ending or average Accounts Receivable; credit sales (or net revenue if credit sales not available); days in period.

Typical data sources:

Continue in our app.
  • Listen to the audio with the screen off.
  • Earn a certificate upon completion.
  • Over 5000 courses for you to explore!
Or continue reading below...
Download App

Download the app

  • ERP General Ledger (A/R control account balance)
  • ERP A/R subledger (invoice-level detail, open items)
  • Billing/Order-to-cash system (invoice dates, due dates, dispute codes)
  • Revenue system (net revenue, credit sales, returns/allowances)

Days Payables Outstanding (DPO)

What it answers: How many days, on average, the company takes to pay suppliers (again, depending on definition).

Common formulas:

  • Balance-sheet DPO: DPO = (Ending A/P ÷ Purchases) × Days
  • COGS proxy (when purchases not available): DPO = (Ending A/P ÷ COGS) × Days (use with caution)

Inputs: Ending or average Accounts Payable; purchases (ideally: goods/services received and invoiced in period); days in period.

Typical data sources:

  • ERP General Ledger (A/P control account)
  • ERP A/P subledger (invoice date, due date, payment date, payment terms)
  • Procure-to-pay system (PO, goods receipt, invoice match status)
  • Spend analytics (supplier/category mix)

Days Inventory Outstanding (DIO)

What it answers: How many days of cost of sales are held in inventory (a proxy for how long cash is tied up in stock).

Common formulas:

  • DIO: DIO = (Ending Inventory ÷ COGS) × Days
  • Average inventory variant: DIO = (Average Inventory ÷ COGS) × Days

Inputs: Inventory valuation (ending or average); COGS for the period; days in period.

Typical data sources:

  • ERP inventory module (on-hand, valuation method, reserves)
  • Warehouse management system (WMS) (locations, movements)
  • Manufacturing execution / planning systems (WIP, BOM, routings)
  • ERP GL (COGS, inventory reserves/adjustments)

A/R aging and delinquency metrics

What they answer: Where receivables are concentrated by “age” and how much is past due (collection risk and cash timing).

Core outputs (typical):

  • Aging buckets: current, 1–30, 31–60, 61–90, 90+ (days past invoice date or due date—define which)
  • % Past Due: % Past Due = Past Due A/R ÷ Total A/R
  • 90+ Concentration: 90+ A/R ÷ Total A/R
  • Weighted average days past due (optional): Σ(Invoice Balance × Days Past Due) ÷ Total Past Due Balance

Inputs: Invoice date, due date, open balance, customer, dispute status, payment terms.

Typical data sources: A/R subledger open items; collections CRM notes; dispute/case management; cash application system.

Inventory turns (turnover)

What it answers: How many times inventory is “sold through” over a period (a speed metric; the inverse of DIO in many setups).

Common formulas:

  • Turns: Inventory Turns = COGS ÷ Average Inventory
  • Relationship to DIO (approx.): DIO ≈ Days ÷ Turns (only if definitions align)

Inputs: COGS; average inventory (often average of monthly ending balances).

Typical data sources: ERP GL (COGS); ERP inventory valuation; planning systems for SKU-level analysis.

Service and working-capital “bridge” metrics (financially relevant service KPIs)

Service metrics are not “nice-to-have” add-ons; they often explain why DIO or DSO moved. Common service metrics used alongside working capital include:

  • Fill rate (line fill, case fill, or order fill)
  • On-time delivery (OTD) and OTIF (on-time in-full)
  • Supplier lead time and lead-time variability
  • Forecast accuracy (e.g., MAPE) and bias

2) Common pitfalls and how to avoid misinterpretation

Working-capital KPIs are sensitive to timing, mix, and accounting policy. A disciplined team documents definitions and runs “reasonability checks” before escalating a KPI change.

Seasonality and period-length effects

  • Problem: Month-end spikes in sales or shipments inflate A/R and can push DSO up even if collections are healthy.
  • Fix: Use average balances (daily or at least monthly averages) and compare to a seasonally matched period (e.g., this December vs last December).
  • Check: Plot daily A/R and daily billings for the last 60–90 days to see if the change is a timing artifact.

One-time invoices, milestone billing, and project-based revenue

  • Problem: A single large invoice near period end increases A/R and DSO; it may be fully within terms and not a collection issue.
  • Fix: Report DSO with and without top-N invoices/customers; add a “large invoice watchlist” section in the dashboard.
  • Check: Recompute DSO excluding invoices above a threshold (e.g., >5% of monthly billings) and explain the delta.

Mix changes (customers, channels, products, geographies)

  • Problem: Shifting toward customers with longer terms (or slower payment behavior) raises DSO even if execution is unchanged; shifting toward slow-moving SKUs raises DIO even if planning is stable.
  • Fix: Segment KPIs: DSO by customer segment/channel; DIO by product family/SKU class (A/B/C), and by lifecycle (new, core, end-of-life).
  • Check: Build a “mix bridge”: what portion of the KPI change is due to volume shifts vs within-segment performance.

Revenue recognition and billing timing

  • Problem: If revenue is recognized before invoicing (or invoicing is delayed), DSO computed on revenue can look worse; conversely, heavy prebilling can make DSO look better while increasing deferred revenue (not captured in A/R).
  • Fix: Align the denominator to what drives A/R: use invoiced credit sales when possible. If using revenue, add a companion metric: Unbilled A/R or Contract assets (where applicable).
  • Check: Track “billings vs revenue” and “invoice cycle time” (order/ship to invoice) to interpret DSO movements.

Purchases vs COGS in DPO

  • Problem: Using COGS as a proxy for purchases can misstate DPO when inventory levels change materially (build or drawdown).
  • Fix: Prefer purchases/receipts (or “AP-relevant spend”) as the denominator. If you must use COGS, disclose the limitation and add an inventory change diagnostic.
  • Check: Compare COGS vs Purchases trend; large divergence signals DPO distortion.

Inventory valuation, reserves, and write-offs

  • Problem: Obsolescence reserves or write-downs reduce inventory value, mechanically improving DIO/turns while operationally things may be worse.
  • Fix: Report DIO both gross and net of reserves, and track reserve % as a separate KPI.
  • Check: Reconcile inventory movements: receipts, production, shipments, adjustments, write-offs.

3) Complementary operational KPIs that explain the financial KPIs

When a financial KPI moves, the fastest path to root cause is usually operational. Pair each working-capital KPI with 2–4 operational drivers that are measurable weekly (or daily) and actionable by the business.

Operational KPIs that explain DSO (receivables)

  • Invoice cycle time: order/ship date to invoice date (billing latency creates A/R aging later)
  • Dispute rate: # disputed invoices ÷ # invoices and disputed $ ÷ billed $
  • Dispute resolution time: average days to close a case
  • Cash application lag: payment received date to applied date (can distort aging and collections focus)
  • Collection effectiveness index (optional): a collections performance measure that adjusts for current billings (define carefully and keep consistent)

Operational KPIs that explain DPO (payables)

  • Invoice processing time: invoice received to approved
  • 3-way match rate: % invoices matched without exception
  • Exception backlog: count/$ of invoices on hold (price/quantity/receipt issues)
  • Payment run discipline: % payments made on scheduled run vs ad hoc
  • Supplier term compliance: % paid within agreed terms (early/late)

Operational KPIs that explain DIO/turns (inventory)

  • Fill rate / OTIF: service outcomes that often drive safety stock and expedite behavior
  • Supplier lead time and variability: average and standard deviation; variability drives buffers
  • Forecast accuracy and bias: accuracy by family and horizon; bias indicates systematic over/under planning
  • Backorder level: units/$ backordered (high backorders can coexist with high inventory due to wrong mix)
  • Slow-moving and obsolete (SLOB): $ and % of inventory above an age threshold; SKU count with no movement in X days

Practical step-by-step: map “financial KPI → operational driver”

  1. Pick the KPI movement (e.g., DIO up 8 days vs last month).
  2. Choose the most likely driver family: demand (forecast), supply (lead time), execution (fill rate), mix (SKU/customer).
  3. Pull 2–3 operational cuts: by product family, by DC/plant, by supplier, by customer segment.
  4. Quantify contribution: identify top contributors (e.g., top 20 SKUs added 60% of the inventory increase).
  5. Translate to actions: stop-buy, expedite, rebalance stock, adjust safety stock, fix master data, resolve disputes, etc.

4) Building a simple dashboard narrative: what moved, why, and what actions follow

A useful dashboard is not a wall of metrics; it is a repeatable story. A finance-led working-capital narrative typically has three layers: (1) headline KPIs, (2) diagnostic splits, (3) actions with owners and dates.

Step 1: Headline panel (the “what moved”)

MetricCurrentPriorΔComment trigger
DSO5248+4Explain if Δ > 2 days
DPO4144-3Explain if Δ > 2 days
DIO6760+7Explain if Δ > 3 days
% A/R past due28%24%+4ppExplain if +2pp
Inventory turns (annualized)5.46.1-0.7Explain if -0.3

Set “comment triggers” so the team knows when a variance requires root-cause detail.

Step 2: Diagnostic panel (the “why it moved”)

Example narrative for DSO +4 days:

  • Mix: Enterprise segment share rose from 35% to 45% of billings; enterprise pays ~10 days slower than SMB.
  • Execution: Disputed $ increased by $1.2M, concentrated in 3 customers due to pricing mismatches.
  • Timing: A $3.5M milestone invoice posted on the last day of the month (within terms), adding ~1.5 days to DSO mechanically.

Example narrative for DIO +7 days:

  • Service pressure: OTIF fell from 93% to 88% due to a supplier delay; planners increased safety stock on two families.
  • Mix: New product launch added $2.0M of build-ahead inventory; sell-through not yet started.
  • SLOB: No-movement SKUs >120 days increased by $0.6M; reserve not yet recorded (risk flagged).

Step 3: Action panel (the “what we will do next”)

IssueActionOwnerDueExpected KPI impact
Top 3 customer disputesCorrect price master data; reissue invoices; weekly customer callsAR Lead + Sales Ops2 weeks-1 to -2 DSO days
Milestone billing volatilityAdd “large invoice forecast” and separate DSO ex-large invoicesFP&A1 weekBetter interpretation
Supplier delay driving buffersDual-source critical component; renegotiate lead-time SLAProcurement6 weeks-2 to -4 DIO days (over quarter)
SLOB buildStop-buy list; markdown plan; disposition reviewSupply Chain + Finance4 weeks-1 to -3 DIO days + lower reserve risk

Make actions measurable: specify the mechanism (e.g., reduce disputes, reduce lead-time variability) and the expected direction of KPI change.

5) Setting targets that reflect business-model realities (not generic benchmarks)

Targets should be anchored in your operating model: customer terms, supplier structure, manufacturing/fulfillment design, and service promise. Generic benchmarks can be misleading because they mix different business models (subscription vs project, make-to-stock vs make-to-order, retail vs B2B).

Principles for credible targets

  • Start from “physics,” not aspiration: If standard customer terms are Net 45 and 60% of customers pay on due date, a DSO target of 25 is likely unrealistic without changing terms, billing timing, or customer mix.
  • Segment before you target: Set DSO targets by customer segment/channel; set DIO targets by product family and lifecycle; set DPO targets by supplier category and criticality.
  • Separate structural vs controllable components: Structural = contracted terms, network design, lead-time realities. Controllable = billing latency, dispute cycle time, approval workflow, forecast bias.
  • Use a range with guardrails: For example, DPO target range that preserves supplier health (avoid chronic late pay) while capturing agreed terms.

Practical step-by-step: build a target from internal baselines

  1. Define the KPI precisely (e.g., DSO based on invoiced credit sales; aging based on due date).
  2. Establish a clean baseline: last 12 months, seasonally adjusted view, and exclude one-time events (or tag them).
  3. Decompose the KPI into drivers you can influence:
    • DSO ≈ billing timing + dispute days + payment behavior + cash application lag
    • DIO ≈ cycle stock + safety stock + excess/obsolete + in-transit/WIP (as applicable)
    • DPO ≈ terms + approval time + match exceptions + payment run policy
  4. Quantify realistic improvements per driver (e.g., reduce invoice cycle time by 2 days; cut dispute resolution by 5 days; reduce lead-time variability by 20%).
  5. Translate driver improvements into KPI impact using a simple sensitivity model (even a spreadsheet):
    DSO impact (days) ≈ Δ(Invoice cycle time) + Δ(Dispute days weighted by dispute %) + Δ(Payment behavior)
  6. Validate with stakeholders (Sales, Operations, Procurement): confirm trade-offs (service levels, supplier relationships, customer experience).
  7. Set targets with time horizons: near-term (process fixes), mid-term (terms/mix), long-term (network redesign, supplier strategy).

Examples of target logic by business model

  • Project/milestone billing: Use DSO plus a companion metric for milestone schedule adherence; set targets on dispute rate and billing timeliness rather than only on DSO level.
  • High-growth with mix shifts: Set DSO targets by cohort (new vs mature customers) and track mix-adjusted DSO to avoid penalizing growth into new segments.
  • Service-critical spare parts: DIO targets must incorporate service promise; use dual targets: (a) service (fill rate/OTIF) and (b) cash (DIO) with an explicit trade-off corridor.
  • Long lead-time supply chains: Focus targets on lead-time variability and forecast bias; DIO improvement may lag until variability is reduced.

Now answer the exercise about the content:

A team notices DPO has changed after switching the denominator from Purchases to COGS. According to common pitfalls, what is the most appropriate interpretation and response?

You are right! Congratulations, now go to the next page

You missed! Try again.

Using COGS as a proxy for purchases can misstate DPO when inventory levels change. Prefer purchases/receipts as the denominator; if COGS must be used, disclose the limitation and check COGS vs purchases for divergence.

Next chapter

Operational Choices to Financial Outcomes: Scenario Analysis and Practical Controls

Arrow Right Icon
Free Ebook cover Working Capital 101: Receivables, Payables, and Inventory in Corporate Finance
91%

Working Capital 101: Receivables, Payables, and Inventory in Corporate Finance

New course

11 pages

Download the app to earn free Certification and listen to the courses in the background, even with the screen off.