Score Modes
Project score is always 0-100. The score is computed from three penalty buckets:
- Rule variety penalty (unique rules hit)
- File spread penalty (only in
filesmode) - Finding volume penalty (total diagnostic count)
Formula
score = max(0, round(100 - rulePenalty - filesPenalty - findingsPenalty))
Where:
rulePenalty = (unique_error_rules 1.5) + (unique_warning_rules 0.75)filesPenalty = round((affectedFiles / totalFilesScanned) * 40)infilesmode, else0findingsPenalty = min(15, floor(totalFindings / 7))
Labels
Greatfor score>= 75Needs workfor score>= 50and< 75Criticalfor score< 50
Modes
- Files mode: default, penalizes how broadly issues are spread across files.
- Unique-rules mode: ignores file spread, focuses on rule diversity + finding volume.
Configuration
In .dbt-doctor:
score_mode=files
or:
score_mode=unique-rules
CLI override:
npx dbt-doctor@latest --score-mode files