Use backtracking when:
You need to find all solutions or count valid configurations
Choices at each step depend on previous choices
You can detect invalid partial solutions early
The search space is finite but too large to enumerate naively
Backtracking shines when constraints let you prune large branches. If you can't prune, consider DP or other approaches instead.