A few ideas:
- Taproot addresses that are no LN related
- Segwit/legacy -> Taproot transactions (since Taproot usage is low and it's likely for a spending to be from a segwit address
- Taproot addresses with more than dust amounts
- Taproot addresses funded from this week on, before there was no Silent payment implementation, therefore no need to count them
I guess that the classical heuristics of "different script outputs" are crucial: most of the users spend from segwit addresses...a transaction with a bunch of segwit inputs and all segwit outputs but one taproot is likely to be a silent payment (or a channel funding btw).
If you'r able to isolate channel fundings from other "to taproot" payments then the esitmate would be kind of reasonable