Target by group or Target by property

I wanted to ask question to see if there is best practice when it comes to Fixlets/Task being targeted to Group or using custom property.
We have been using our BigFix environmnet for few years and obviously you create actions, fixlets, groups, properties etc, while we try to do some housekeeping it’s not always easy to maintain especially with different groups using the infrastructure. We have maintenance scripts/tasks in place to automate some cleanup.

Question I have is around BigFix Groups vs. BigFix Property especially when using for targetting PC’s
We have currently almost 500 Groups in our environment, Iv’e created small script to see how many of these groups are actually being used as target for actions/baselines/etc. we have over 400 groups not being used for any action. Some of these groups are being used to assign role(s) - limit what certain groups can see but bottom line is we like to create groups for one-off tasks and then are not really good in doing the clean-up, we might think in old school way by creating groups and adding devices to these groups (ex. Active Directory) and other solutions where groups are way to go. I’ve seen that some of these groups could be easily replicated using “Filters” in the console.

When we setup the BigFix environment we did look at BigFix properties for targeting but only briefly.

Question? is there advantage and/or best practice for BigFix Groups vs. BigFix Property to be used for targeting, I know both need to be evaluated but is one better than the other (=quicker)

If we pursue properties, we would create few global properties that would read BigFix Setting and have sites populate that setting with values.

Ex. Global Property: Patch_Deployment_Windows Patch_Deployment_Linux …
value: Wave 1 | Wave 2 | Wave 3 | …
Just to like to see what other people are doing when it comes to groups vs. properties.

Thx!