It's a mixture of private and public. For instance anybody can create an infinite number of wallets and cycle transactions through those wallets infinitely, subject to time and/or transfer fees. And wallets are the only stored identifier - it doesn't lead to e.g. an IP or whatever, and even if it did - those could also be endlessly proxied. On top of this there are 'tumblers' that do this as a service.
So while it's completely traceable in theory, in practice it's vaguely akin to trying to track money by the serial numbers in that you can probably figure out a few points in a dollar's lifetime, but tracing it point by point to a specific entity is generally not realistic. Of course most criminals are stupid and doing something like using CoinBase hosted crypto to try to do something illicit is as good as leaving your license and phone number at the scene of a crime.