Sometimes it's based on the TTL of packets. TTL for hotspot clients will be one less than TTL for directly using data on the phone, since the phone is acting as a router, which adds an extra hop.
I think running a HTTP proxy or VPN server on the phone would mask it (since the connections would then be made by the phone directly), but I've never tried.