If you are struggling to keep your hygiene schedule full, you need a reliable way to identify patients who have fallen through the cracks. This open dental overdue recall query allows you to instantly pull a list of active patients who are past their due date for a hygiene visit, helping your front desk team prioritize their outreach efforts.
The Query
Copy and paste the following code into your User Query window. This query looks for active patients whose recall date is earlier than the date you specify.
/* Set the date to find patients overdue as of this date */
SET @AsOfDate = '2026-03-27';
SELECT
p.LName,
p.FName,
p.HmPhone,
p.WirelessPhone,
p.Email,
r.DateDue,
DATEDIFF(@AsOfDate, r.DateDue) AS DaysOverdue
FROM patient p
INNER JOIN recall r ON p.PatNum = r.PatNum
WHERE p.PatStatus = 0
AND r.DateDue < @AsOfDate
AND r.DateDue > '2000-01-01'
ORDER BY r.DateDue ASC;
How to Run This Query
- In Open Dental, go to Reports in the Main Menu.
- Click User Query.
- Paste the query provided above into the large text box.
- Click Submit Query.
- The results will display in the grid below.
Understanding the Results
- LName/FName: The patient's last and first name.
- HmPhone/WirelessPhone: Contact numbers to help your team reach out quickly.
- Email: Useful if your office prefers email communication for recall reminders.
- DateDue: The date the patient was officially due for their hygiene appointment according to the Recall module.
- DaysOverdue: A calculated column showing exactly how many days have passed since the patient's due date, helping you prioritize who to call first.
How to Customize
You can easily adjust this query to fit your specific needs:
- Change the Date: To see who was overdue as of a different date, change the line
SET @AsOfDate = '2026-03-27';to your desired date inYYYY-MM-DDformat. - Filter by Provider: If you want to see overdue patients for a specific hygienist, add this line before the
ORDER BYclause:AND p.PriProv = 1(replace1with the actualProvNumof the provider). - Filter by Clinic: If you have multiple locations, add
AND p.ClinicNum = 1(replace1with your specificClinicNum) to theWHEREclause.
Variations
Only Patients Overdue by More Than 90 Days
If you want to focus on long-term overdue patients, add a HAVING clause to the end of the query:
...
ORDER BY r.DateDue ASC
HAVING DaysOverdue > 90;
Include Only Patients with Insurance
To prioritize patients who have active insurance benefits, add an INNER JOIN to the patplan table:
SELECT p.LName, p.FName, p.HmPhone, r.DateDue
FROM patient p
INNER JOIN recall r ON p.PatNum = r.PatNum
INNER JOIN patplan pp ON p.PatNum = pp.PatNum
WHERE p.PatStatus = 0 AND r.DateDue < @AsOfDate
GROUP BY p.PatNum;
Skip the Query — Use DentalCanvas Instead
Don't want to write SQL? DentalCanvas connects to your Open Dental database and shows you this data automatically in a visual dashboard — no queries required.
This article is provided by opendentalsupport.com, an independent community resource. We are not affiliated with Open Dental Software, Inc.