EnableYourData.com

KPI · Logistics

Return processing time: formula and example.

Return processing time is the time between a return arriving at the warehouse and it being completed: inspected, restocked or written off, and credited. Customers are waiting for their money or replacement during that time. Meanwhile the returned stock sits idle until it is processed.

Return processing time formula

Sum of (time completed − time received) across completed returns ÷ number of completed returns

Worked example

In May 2026 Acme Groothandel completed 400 returns. Together they took 14,400 hours from receipt to completion. The average return processing time is 14,400 ÷ 400 = 36 hours, or 1.5 days.

Fictitious figures for Acme Groothandel, a sample wholesaler.

How to read this KPI

A shorter processing time means customers get their money or replacement sooner and reusable stock is back on sale sooner. Returns often get the lowest priority in busy periods, which is exactly when most of them arrive. Compare by month and return reason, and against the timeframe you promise customers or that applies by law.

Pitfalls with return processing time

  • Starting the clock at registration rather than physical receipt, so waiting time disappears.
  • Measuring credit and restocking as one step when they sit with different teams.
  • Leaving returns that are still open out of the average, when they have been waiting longest.

SQL & DAX

Calculating return processing time in SQL and 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.

SQL · PostgreSQL
SELECT date_trunc('month', received_at) AS month,
       COUNT(*) AS returns_processed,
       ROUND(AVG(EXTRACT(epoch FROM processed_at - received_at) / 86400)::numeric, 2) AS avg_processing_days,
       COUNT(*) FILTER (WHERE processed_at - received_at > interval '3 days') AS over_3_days,
       SUM(amount) AS return_value
FROM returns
WHERE processed_at IS NOT NULL
GROUP BY 1
ORDER BY 1;
DAX · Power BI
Processed Returns = CALCULATE(COUNTROWS(Returns), NOT ISBLANK(Returns[ProcessedAt]))
Return Processing Time (days) = DIVIDE(SUMX(FILTER(Returns, NOT ISBLANK(Returns[ProcessedAt])), DATEDIFF(Returns[ReceivedAt], Returns[ProcessedAt], HOUR)) / 24, [Processed Returns])

In ENABLE

Tracking this KPI in ENABLE

Plain-language questions

Ask for return processing time 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.

Read more →

In your Power BI dashboard

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.

Read more →

Custom dashboards (pilot)

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.

Read more →

Monthly targets

With the built-in Targets app you set a target for the KPI per month, so you see actuals and target side by side.

Read more →

FAQ

Frequently asked questions

How do you calculate return processing time?

For each return, subtract the time it was received from the time it was fully completed. Take the average across all returns completed in the period. Also track how many returns exceed your own target.

How quickly do you have to refund a return?

For distance sales to consumers in the EU, the refund is due within 14 days of the customer withdrawing, although you may wait until you have the goods back or proof they were sent. For business customers, your terms and conditions apply. Check the rules that apply to your situation.

What is the difference between return processing time and return rate?

Return rate measures how many orders or items come back. Return processing time measures how quickly you deal with them. The first says something about your products and expectations, the second about your warehouse and admin process.

Use AI on your own data. Securely, and without the headache.

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.