Plain-language questions
Ask for return rate 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 · E-commerce
Return rate is the number of orders with a return divided by the total number of orders, as a percentage. You can also calculate it by value: returned revenue divided by total revenue. Returns cost shipping, handling and sometimes write-offs, so return rate has a direct effect on your margin.
Orders with a return ÷ total orders × 100%
Of the 1,280 orders Acme Groothandel ships in September, 96 are (partly) returned. Return rate is 96 ÷ 1,280 × 100% = 7.5%. By value, €12,000 comes back on €192,000 of revenue: €12,000 ÷ €192,000 × 100% = 6.25%.
Fictitious figures for Acme Groothandel, a sample wholesaler.
A higher return rate means more cost and less net revenue; a rise for one product or category often points to an issue with product information, quality or sizing. Compare it by category, by channel and with the same period last year, because returns are seasonal. If you record return reasons, look at those alongside the numbers.
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.
SELECT date_trunc('month', o.order_date) AS month,
COUNT(DISTINCT o.order_id) AS orders,
COUNT(DISTINCT r.order_id) AS orders_with_return,
ROUND(100.0 * COUNT(DISTINCT r.order_id)
/ NULLIF(COUNT(DISTINCT o.order_id), 0), 1) AS return_rate_pct
FROM orders o
LEFT JOIN returns r ON r.order_id = o.order_id
WHERE o.status <> 'cancelled'
AND o.order_date < current_date - interval '30 days'
GROUP BY 1
ORDER BY 1;Return Rate (orders) =
DIVIDE(DISTINCTCOUNT(Returns[order_id]), DISTINCTCOUNT(Orders[order_id]))
Return Rate (value) =
DIVIDE(SUM(Returns[amount]), SUM(Orders[total_amount]))In ENABLE
Ask for return rate 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
Divide the number of orders with a return by the total number of orders in the same period and multiply by 100%. With 2,000 orders and 150 returned orders, return rate is 7.5%. Wait until the return window for those orders has closed, otherwise the figure comes out too low.
Both are useful, but they answer different questions. By order count you see the workload for the warehouse and customer service; by value you see the impact on revenue and margin. State in the KPI definition which variant you are showing.
Return rate counts orders that are physically sent back, while refund rate measures the money you pay back. They diverge when you refund without a return, for example for a damaged delivery, or when a return is exchanged rather than refunded.
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.