Getting different responses from different countries? Check the same request three ways.

If an endpoint redirects, localizes, or behaves differently by country, compare the same request from your normal connection and from the countries you need to test. The goal is to change one variable, the network route, and see whether the response changes with it.

When this test is useful

Use this pattern when you are:

  • — debugging a geo-redirect that only some users see
  • — verifying localized language, currency, pricing, or availability
  • — reproducing a country-specific API or website bug
  • — checking whether a response difference is tied to request origin rather than application state

Keep the variables controlled

Before comparing results, keep everything except the route the same:

  • — same URL and HTTP method
  • — same request headers
  • — same cookies or authentication state
  • — same query parameters and request body
  • — same client and command options

If you change headers, cookies, user agent, and country at the same time, you cannot tell which change caused the response difference.

Quick comparison

This recorded example uses the same Google Store header request from a direct connection, the US, and Germany.

Direct

terminal
curl -sSI https://store.google.com/ | grep -i '^location:'

Recorded example: Location: https://store.google.com/?hl=lt

From the US

terminal
shellroute run US -- curl -sSI https://store.google.com/ | grep -i '^location:'

Recorded example: Location: https://store.google.com/?hl=en-US

From Germany

terminal
shellroute run DE -- curl -sSI https://store.google.com/ | grep -i '^location:'

Recorded example: Location: https://store.google.com/?hl=de

In this recorded comparison, the request stayed the same while the redirect target changed with the route.

What to compare

The Location header is useful for redirect debugging, but it is not the only signal. Depending on the bug, compare:

  • — HTTP status code
  • — redirect target
  • — selected response headers such as Location, Content-Language, cache headers, or application-specific headers
  • — response body or a body fingerprint when it is safe to capture one

For authenticated or sensitive endpoints, avoid logging credentials, private response bodies, session tokens, or other secrets just to make the comparison.

How to interpret the result

If the response changes by country: you have evidence that network origin is one input to the behavior you are seeing. That does not prove the root cause by itself, but it narrows the investigation toward geo-routing, localization, regional availability, CDN logic, or similar origin-dependent behavior.

If the response does not change: that result is useful too. It means this particular request did not reproduce a country-dependent difference at that moment. Check whether the behavior depends on another controlled input such as cookies, account state, headers, cache state, or a different endpoint before concluding geography is irrelevant.

Results above are one recorded example, not a guarantee that Google Store will always return the same locale values. Third-party behavior can change.

Want to try the same diagnostic with your own endpoint?

Install Shellroute and follow the Quickstart