Sign in

Blog · Finance metrics and formulas · Finance and FP&A teams

Days payable outstanding (DPO): formula, worked example and what it shows

DPO is the average number of days a company takes to pay its suppliers. This page gives the formula with COGS or purchases, works it for four suppliers over one quarter against their terms, proves the company figure as a weighted average, prices paying early and late, and sets DPO beside DSO in the cash conversion cycle.

The short answerDays payable outstanding (DPO) is the average number of days a company takes to pay its suppliers. DPO = accounts payable / cost of goods sold x days in the period. With payables of 624,000 against quarterly COGS of 1,560,000 over 90 days, DPO is 36 days. A higher DPO keeps cash longer, but paying beyond terms damages supplier relationships.

Days payable outstanding (DPO) is the average number of days a company takes to pay its suppliers. Payables of $624,000 against quarterly cost of goods sold of $1,560,000 give a DPO of 36.0 days. The figure only means something next to the terms each supplier agreed: the same 36 days can hide one supplier paid late and another paid weeks early.

What DPO measures

DPO turns the accounts payable balance into time: how many days of purchases are still unpaid. It is the payables leg of working capital, the one part where the company holds someone else's cash. The CFA Institute's reading on financial analysis techniques lists it as "number of days of payables", one of the standard activity ratios.

A longer DPO keeps cash in the business. But every day past the agreed terms is borrowed from a supplier without asking, and suppliers notice: through credit holds, lost discounts and prices. That is why DPO sits among the KPIs for procurement teams as well as finance's.

The DPO formula

DPO = Accounts payable / Cost of goods sold × Days in period

More exact: DPO = Accounts payable / Purchases × Days in period, where Purchases = COGS + Closing inventory − Opening inventory

Cost of goods sold is the common denominator because it is on the income statement. Purchases is more exact, because payables arise from what you bought, not from what you sold. When inventory barely moves the two are close; when it moves a lot they are not. If closing inventory were $100,000 higher than opening in the example below, purchases would be $1,660,000 and DPO 624,000 / 1,660,000 × 90 = 33.8 days, not 36.0.

Use trade payables to suppliers of goods and services in cost of sales. Accrued expenses, payroll and taxes are not supplier invoices.

A worked example: four suppliers

One quarter, January 1 to March 31, 2026: 90 days. Column B is the cost of goods bought from each supplier in the quarter, column C the payables at March 31, and DPO in D2 is:

=C2/B2*90
Supplier Spend in COGS (USD) Closing payables (USD) DPO (days) Terms (days)
Packaging 360,000 180,000 45.0 45
Raw materials 600,000 240,000 36.0 30
Freight 240,000 40,000 15.0 30
Co-packer 360,000 164,000 41.0 60
Total 1,560,000 624,000 36.0

Company DPO divides the totals:

=SUM(C2:C5)/SUM(B2:B5)*90

624,000 / 1,560,000 × 90 = 36.0 days. These are the same quarter's figures as the days sales outstanding example, where credit sales were $2,400,000: cost of goods sold of $1,560,000 is a 35% gross margin.

For a real-company figure, Sysco's fiscal 2026 Form 10-K reports accounts payable of $6,640 million at June 27, 2026 and cost of sales of $68,914 million for the 52-week year. On year-end payables, DPO is 6,640 / 68,914 × 364 = 35.1 days.

The check

Company DPO is the COGS-weighted average of the supplier DPOs:

(360,000 × 45 + 600,000 × 36 + 240,000 × 15 + 360,000 × 41) / 1,560,000 = 56,160,000 / 1,560,000 = 36.0 days

In Excel, this cell must equal the company DPO:

=SUMPRODUCT(B2:B5,D2:D5)/SUM(B2:B5)

The simple average of the four DPOs is 34.3 days, which is wrong for the same reason an average of margins is wrong. Then tie the inputs: $624,000 must equal the AP aging report at March 31, which must equal trade payables in the general ledger, and $1,560,000 must equal cost of goods sold for the quarter.

Reading DPO against terms

Subtract each DPO from its terms. Packaging is paid exactly on 45 days. Raw materials is paid 6 days late. Freight is paid 15 days early and the co-packer 19 days early.

Cash held by paying on terms = (Terms − Actual days) / Days in period × Supplier spend

Supplier Terms − DPO (days) Cash from paying on terms (USD)
Packaging 0 0
Raw materials −6 −40,000
Freight 15 40,000
Co-packer 19 76,000
Net 76,000

Paying the co-packer on its 60-day terms would hold 19 / 90 × 360,000 = $76,000 more cash; freight on 30 days, $40,000. Bringing raw materials back to 30 days costs $40,000. Net, paying everyone exactly on terms holds $76,000 more than today, and DPO on terms would be 40.4 days. Payment terms compliance runs the same test on every invoice, not just the quarter-end balance.

Paying late is not free. The raw materials supplier may price the delay into the next contract, and if it is a single-source supplier, a credit hold stops production. Paying early is not always a loss either: on 2/10 net 30, paying on day 10 instead of day 30 earns 2% for 20 days, which is 2 / 98 × 365 / 20 = 37.2% a year. Few companies borrow that dearly, so take the discount.

DSO, DPO and the cash conversion cycle

DSO counts the days customers hold your cash; DPO counts the days you hold suppliers'. With inventory days they make the cash conversion cycle:

Cash conversion cycle = DSO + DIO − DPO

In this quarter, DSO is 45.9 days and DPO is 36.0, so the business funds 9.9 days of the receivables gap itself before it holds any inventory. Every day of DPO on terms, or DSO collected, shortens that. Inventory days come from the inventory turnover ratio: 365 divided by turnover.

Where it goes wrong

  • Revenue in the denominator. Sales are larger than COGS or purchases, so DPO comes out too low.
  • Non-trade payables. Accruals, payroll and tax in the payables balance inflate DPO.
  • A rising DPO from missed payments. Suppliers will price it in, or stop shipping.
  • Ignoring early-payment discounts. On 2/10 net 30 the discount is worth about 37% a year annualized, more than the cash held is usually worth.
  • A last-day payment run. A large payment run on the final day of the period cuts period-end payables and DPO; a run on the day after inflates them. Look at the month-end trend, not one date.

DPO by supplier, every month

One company DPO hides which suppliers are paid early and which are paid late. Covirage computes days to pay per supplier from your uploaded accounts payable ledger and compares it with each supplier's terms; the deterministic tools do every calculation, and the external AI model writes up who is paid early or late and never does the arithmetic. See Covirage for finance teams, and spend under management for how much spend is covered by agreed terms in the first place.

Questions people ask

Is a high DPO good or bad?

It depends why. A high DPO within agreed terms keeps cash in the business longer. A high DPO from paying late risks supply, credit limits and prices. Read it against the terms agreed with each supplier.

What is the difference between DSO and DPO?

DSO is how long customers take to pay you; DPO is how long you take to pay suppliers. A company with DSO of 46 and DPO of 36 funds ten days of the gap itself, before counting inventory.

Should DPO use COGS or purchases?

Purchases is more exact because payables arise from purchases, not from what was sold. COGS is the common shortcut because it appears on the income statement. When inventory changes a lot in the period, use purchases.

What is a good DPO?

One close to your agreed supplier terms. A DPO far below terms means cash is paid out earlier than needed; far above means suppliers are paid late. Industry norms differ, so compare with your own terms first.