How to calculate Accounts Receivable Turnover
Accounts receivable turnover shows how many times a business collects its average receivables balance during a period.
Formula
AR turnover = net credit sales ÷ average accounts receivableSQL query
This example assumes: annual_financials(year int, net_credit_sales numeric, accounts_receivable numeric). It is written in PostgreSQL syntax; date functions differ slightly in MySQL, BigQuery and SQLite, and your column names will differ from these.
SELECT year,
net_credit_sales / NULLIF((accounts_receivable + LAG(accounts_receivable) OVER (ORDER BY year)) / 2, 0) AS ar_turnover,
365 * ((accounts_receivable + LAG(accounts_receivable) OVER (ORDER BY year)) / 2)
/ NULLIF(net_credit_sales, 0) AS average_collection_days
FROM annual_financials
ORDER BY year;Common mistakes that make Accounts Receivable Turnover wrong
- Cash sales should be excluded; including them overstates how fast customers pay.
- A year-end balance swollen by a late big invoice distorts the ratio; use the average.
- It is the inverse of days sales outstanding; make sure two reports are not quoting both as if they were different findings.
Ask for Accounts Receivable Turnover in plain English
Instead of writing the query yourself, you can type the question. SchemaChat turns it into SQL against your connected database or uploaded file, runs it, and shows the SQL and the figures it used so you can check the answer before you share it. It does not replace your judgement about the definition: check that the query matches the formula your business uses.
- What is our accounts receivable turnover for each year?
- How many days on average do customers take to pay?