It doesn’t seem to be random, it seems to be configured entirely based on the country of your internet connection.
When I’m in the UK, on mobile, home wifi, any free wifi or even a VPN set to the UK, there’s no Cloudfare challenge.
If I use my Australian mobile on roaming data in the UK (or anywhere) I get the verify you’re a human Cloudflare challenge. If I switch back to UK-based wifi or turn on my UK VPN, I’m no longer interrupted by Cloudflare.
When I’m travelling and using my UK mobile data on roaming, there’s no Cloudflare challenge. As soon as I connect to a local wifi outside the UK I get the verify you’re a human challenge. If I use my Australian VPN in the UK I get the Cloudflare challenge.