A reader on an earlier post described a scraper that was pulling Amazon listings through a rotating residential proxy and getting prices back in three different currencies inside one run. The thread treated it as a data-cleaning problem — normalise the currency, move on. I think it was the earliest visible symptom of something that gets scrapers blocked a lot more quietly than any IP list does: the exit IP said one country, and everything else about the client said another.
Geo-targeting a proxy is one line. country-de in the username, done. But the target isn't looking at one signal. It's looking at half a dozen, and if the other five still say "US developer laptop," the German IP doesn't make you look German. It makes you look like a US developer laptop using a German proxy, which is a much more specific — and much more suspicious — thing to look like.
The signals that have to agree
Here's what a target can read, without any JavaScript trickery, from a single request that arrives via a German residential exit.
Accept-Language. Python's requests sends nothing. httpx sends nothing. Playwright sends en-US,en;q=0.9 by default. A real German Chrome sends de-DE,de;q=0.9,en-US;q=0.8,en;q=0.7. This header alone splits "German visitor" from "someone routing through Germany" on the first request, before any fingerprinting happens.






