Product · Geolocation Intelligence

Declared vs. physical IP geolocation built on routing reality

Standard registration-only databases report the country where a block was registered years ago. ipscope separates declared registration country from physical BGP and RTT-triangulated location across 35.3M+ routed IPv4 and IPv6 prefixes.

Routed prefixes35.3M+Unified IPv4 & IPv6 LPM tree
Country precision99.8%Verified against active BGP & RTT
Geofeed validationRFC 8805RPKI & origin-ASN corroborated
Lookup latency< 1 µsLocal MMDB or sub-ms edge API
geo_country family

Three country fields on every lookup: effective, declared, and physical

Cloud operators and cross-border ISPs frequently lease IPv4/IPv6 ranges registered in one jurisdiction and announce them from a completely different continent. Every ipscope response exposes both the declared paperwork country and the physical routing country.

  • country_code: Effective ISO 3166-1 alpha-2 country code for localization, tax, and compliance.
  • declared_country_code: Country recorded in network allocation records or RFC 8805 geofeed.
  • physical_country_code: Country where active BGP announcements and multi-vantage RTT probes place the router.
  • is_virtual_location: Boolean flag set to true whenever declared and physical countries diverge.
{
  "ip": "198.51.100.7",
  "matched_network": "198.51.100.0/24",
  "geo": {
    "country_code": "DE",
    "declared_country_code": "US",
    "physical_country_code": "DE",
    "is_virtual_location": true,
    "location_type": "virtual",
    "confidence": 0.96
  }
}
geo_city family

City, subdivision, coordinates, timezone, and calibrated accuracy radius

When geo_city is licensed on your API plan or custom database SKU, lookups include first-level administrative subdivisions, city names, postal codes, WGS84 coordinates, IANA timezones, and a realistic accuracy radius in kilometers.

  • Honest accuracy_radius_km: 5 to 25 km for fixed FTTH/cable broadband, 50 to 250 km for cellular CGNAT pools.
  • IANA timezone identifier (such as America/New_York or Europe/Berlin) for zero-friction scheduling.
  • Reverse DNS IATA/UNLOCODE router PoP hints cross-checked against speed-of-light RTT constraints.
{
  "geo": {
    "country_code": "US",
    "subdivision": "Virginia",
    "city": "Ashburn",
    "postal_code": "20147",
    "latitude": 39.0438,
    "longitude": -77.4874,
    "accuracy_radius_km": 10,
    "timezone": "America/New_York",
    "confidence": 0.94
  }
}

Geolocation field catalog

Fields returned in the geo object across the REST API and downloadable MMDB/CSV/Parquet databases.

FieldTypeFamilyDescription
geo.country_codestring | nullgeo_countryEffective ISO 3166-1 alpha-2 country code.
geo.declared_country_codestring | nullgeo_countryCountry registered in network allocation records or operator geofeed.
geo.physical_country_codestring | nullgeo_countryCountry verified by BGP routing and RTT triangulation.
geo.is_virtual_locationbooleangeo_countryTrue when declared_country_code differs from physical_country_code.
geo.location_typestringgeo_countryResolution mode: physical, declared, virtual, anycast, or unknown.
geo.subdivisionstring | nullgeo_cityFirst-level state, province, or region name.
geo.citystring | nullgeo_cityResolved city name.
geo.accuracy_radius_kminteger | nullgeo_cityEstimated radius in kilometers around the city centroid.
geo.timezonestring | nullgeo_cityIANA time zone identifier.

Start with 30K free lookups a month.

No card, no trial clock. Upgrade when your traffic does, or download the database when you would rather keep it in-house.