And of course, we are limited by the anonymity set -- the number of parties in the transaction. How many Coinjoin transactions you cascade will affect how strong the privacy will be.
large numbers of people in a Coinjoin are actually also leaking information, as it's somewhat unlikely that a regular batched transaction would use dozens (or hundreds) of equal amounts in it's inputs. It's not impossible, but it's a massive arrow pointing at the transaction, saying "this is a probable coinjoin". Then you're in possession of 'coinjoin tainted' BTC, which brings attention in and of itself.
So it's actually much better to use small numbers of people, with input amounts that differ. These are indistinguishable from regular wallet transactions, as it's common to use 3 or 4 inputs of different amounts. This has the advantage of overt coinjoins that not only is the ownership blurred, but there is no obvious way of identifying that ownership was blurred in the first instance. It appears that one person made a transaction, so long as there's no extra information available other than what's on the blockchain.
The above technique has another big advantage: if you do this when you pay someone for something, they can use the transaction to consolidate their dusty inputs from other customer payments.