It's not as easy as you think.
Chainalysis uses clusterisation method to combine blockchain addresses into groups (usually cluster = group = crypto service), gives clusters some AML-risk score (in %), and then calculates risk score of any address by finding it's connections with those clusters.
Another good example is:
https://en.bitcoin.it/wiki/PayJoin... I did one, and watched chainalysis (i think best in the business), create wrong assumptions about literally thousands of transactions, all because of a single payjoin
Other crypto AML companies use the same clusterisation method to find address' connection with known owners. There are several problems with these companies:
1. They collect data for further clusterisation.
2. They ask for KYC.
3. They ask for monthly or yearly prepayment (by bank transfer)
4. They are B2B only.
All these problems we tried to solve in AMLBot, so you can check any address anonymously.
Here is an example:

To get such result you can use
Telegram or any email at
web.amlbot.comHere is our main page at
bitcointalk.Would be glad to answer all your question.