In theory, any private IP range could be in use by any private network, so I doubt you'll find a best practice, or anything that's going to be universally applicable if you're hard-coding the address. The best practice would be to make it configurable and allow the client network to assign the device a private address (via DHCP, for example).
If that's not an option, I find that hardly anyone uses the upper half of the 172.16.0.0/12
, so that's what I use. (I think I'm running on 172.25.0.0/16
, to be precise.) I've yet to have an address collision on it, and I VPN into a lot of private networks.
If you have to use an IPv4 private address, I think that's the best you'll be able to do, with the 10.0.0.0/8
block being widely used and the 192.168.0.0/16
block being the default for almost everything, the only one left would be 172.16.0.0/12
. Of course, this block is often used for VPNs, to avoid address collisions, because of the widespread use of the other private network blocks, so use the upper addresses, since (in my experience) they're the least utilized subnets in that block.