Hazel CPU usage, best practices advice

I am assuming the best way to determine what Hazel is doing that causes high CPU usage would be the suggestions in other forum threads — highlight the hazelworker item in Activity Monitor, then Sample Processes.
I'm trying to wrap my head around the best way to set up rules. I suspect that my occasional high CPU might be due to poorly-configured Hazel rules and folders.
I saw Mr. Noodle suggest in other threads that if you want to monitor multiple subfolders in one folder, it's better to set up rules for the folder that contains them all, rather than add separate rule sets for each folder.
I used to do the latter.
I've set things up which I think is more ideal, where I have Hazel monitor just the main folder (say "Documents"), and use the "run rules on folder contents" actions only act upon specific folders within (using a rule such as "enclosing folder is named XYZ").
But then I got to thinking that maybe Hazel will need to scan ALL the folders/items in Documents to determine if anything in them has changed. What is the preferred approach here?
Also, are there any generally good practices for rules as far as minimizing Hazel CPU usage? I try to use rules such as "Date Last Modified is after Date Last Matched", but also wondered if that was forcing Hazel to scan every single file in all the subfolders to determine this.
I'm trying to wrap my head around the best way to set up rules. I suspect that my occasional high CPU might be due to poorly-configured Hazel rules and folders.
I saw Mr. Noodle suggest in other threads that if you want to monitor multiple subfolders in one folder, it's better to set up rules for the folder that contains them all, rather than add separate rule sets for each folder.
I used to do the latter.
I've set things up which I think is more ideal, where I have Hazel monitor just the main folder (say "Documents"), and use the "run rules on folder contents" actions only act upon specific folders within (using a rule such as "enclosing folder is named XYZ").
But then I got to thinking that maybe Hazel will need to scan ALL the folders/items in Documents to determine if anything in them has changed. What is the preferred approach here?
Also, are there any generally good practices for rules as far as minimizing Hazel CPU usage? I try to use rules such as "Date Last Modified is after Date Last Matched", but also wondered if that was forcing Hazel to scan every single file in all the subfolders to determine this.