Find unused fields in Dynamics 365
After a few years in production almost every solution carries dead weight: fields that sit on no form, scripts nobody loads any more and workflows from the days before Power Automate. It slows down every update, because nobody can say for sure what is still needed.
For consultants planning a clean-up, administrators looking after a grown solution, IT managers planning the budget and partners taking over maintenance.
What is checked
Fields on no form
Custom fields that appear on no form in the solution, and columns marked as deprecated. These are candidates, not a deletion list.
Orphaned components
Web resources no form or ribbon loads, choice lists no field uses and connection references no flow uses.
Outdated JavaScript
"Xrm.Page", jQuery in form scripts, forgotten "console.log" calls and unusually large unminified files.
Classic workflows
Workflows Microsoft wants moved to Power Automate, drafts that were never activated and real-time workflows without filtering.
Form and view performance
Forms with a very high control count on the first tab, and views with many joins or no filter at all.
Duplicates
Views with an identical query, roles with identical privileges and duplicate detection rules with the same criteria.
Switched off but still shipped
Deactivated forms, hidden buttons, inactive dataflows and apps that are not activated but still part of the solution.
Sample findings
This is how findings appear in the report: component, rule, severity and the note behind it.
Custom field not referenced on any form of this entity included in the solution. Use outside of forms (workflows, Power Automate, reports) and on further forms not included in the solution has NOT been checked.
Classic workflow (legacy). Microsoft recommends migrating to Power Automate.
56 controls in the (assumed) default tab. Performance risk, verify on the form.
How it works
Frequently asked questions
Is a field on no form really unused?
Not necessarily. Rule FLD-004 checks the forms in the solution; whether a flow, a report or an integration reads the field is not covered there. The report says so for every hit.
Are standard fields reported too?
No. Only fields with your own prefix are reported. A solution rarely contains every form of a standard table, so standard fields would almost always be false alarms.
Can I delete the fields it finds straight away?
Better not. First check whether the field holds data and whether anything outside the solution uses it. The report gives you the list of candidates; the decision is made in the environment.
What does the check cost?
The key figures are free after the upload. You then decide whether you want the full report; the packages are shown on the results page.