If you need to identify inconsistencies in your billing by comparing fee schedules across different providers, this query provides a clear side-by-side view. Practice owners and office managers can use this open dental fee schedule comparison query to ensure that your fee schedules are correctly assigned and that your providers are billing the intended amounts.
The Query
/* Set the Fee Schedule IDs you want to compare here */
SET @FeeSched1 = 1;
SET @FeeSched2 = 2;
SELECT
pc.ProcCode,
pc.Descript,
f1.Amount AS Fee_Sched_1,
f2.Amount AS Fee_Sched_2,
(f1.Amount - f2.Amount) AS Difference
FROM procedurecode pc
LEFT JOIN fee f1 ON pc.CodeNum = f1.CodeNum AND f1.FeeSched = @FeeSched1
LEFT JOIN fee f2 ON pc.CodeNum = f2.CodeNum AND f2.FeeSched = @FeeSched2
WHERE f1.Amount IS NOT NULL OR f2.Amount IS NOT NULL
ORDER BY pc.ProcCode;
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.
- Before clicking submit, look at the first two lines of the code. Change the numbers
1and2to match the Fee Schedule Numbers you wish to compare. You can find these numbers by going to Setup > Definitions > Fee Schedules. - Click Submit Query.
- The results will display in the grid below.
Understanding the Results
- ProcCode: The ADA procedure code (e.g., D0150).
- Descript: The description of the procedure as defined in your procedure code list.
- Fee_Sched_1: The dollar amount for this procedure in the first fee schedule you selected.
- Fee_Sched_2: The dollar amount for this procedure in the second fee schedule you selected.
- Difference: The mathematical difference between the two schedules. A positive number means the first schedule is higher; a negative number means the second schedule is higher.
How to Customize
If you want to focus only on procedures where there is a price discrepancy, you can add a filter to the end of the query.
Change the last line from ORDER BY pc.ProcCode; to:AND (f1.Amount - f2.Amount) <> 0 ORDER BY pc.ProcCode;
This will hide all procedures where the fees are identical, leaving you with a clean list of only the procedures that need your attention.
Variations
Compare by Procedure Category
If you only want to check fees for hygiene procedures, you can filter by the procedure category. Add this line before the ORDER BY clause:AND pc.ProcCat = (SELECT DefNum FROM definition WHERE ItemName = 'Hygiene')
(Note: Ensure the category name 'Hygiene' matches exactly what you have in Setup > Definitions > Proc Code Categories).
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.