Ip Geolocation Lookup - Bulk IP Location, ISP & ASN avatar

Ip Geolocation Lookup - Bulk IP Location, ISP & ASN

Pricing

Pay per usage

Go to Apify Store
Ip Geolocation Lookup - Bulk IP Location, ISP & ASN

Ip Geolocation Lookup - Bulk IP Location, ISP & ASN

Resolve IP addresses in bulk with accurate geolocation data including country, region, city, coordinates, and timezone. Optionally enrich results with ISP, ASN, and organization data. Ideal for analytics, fraud review, and traffic enrichment.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Apizy

Apizy

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

IP Geolocation Lookup

Lookup IP addresses in bulk to get country, region, city, latitude, longitude, timezone, and optional network enrichment such as ISP, ASN, and organization. Supports both IPv4 and IPv6. No coding needed. Get results via Dataset, Key-value store OUTPUT, or API.

Why Use IP Geolocation Lookup?

  • Bulk lookup: Process dozens to thousands of IP addresses in one run.
  • IPv4 and IPv6 support: Validate and resolve both major IP versions.
  • Location data: Get country, region, city, coordinates, and timezone.
  • Optional network enrichment: Add ISP, ASN, and organization only when needed.
  • Apify platform: Schedule runs, API access, monitoring, integrations.
  • Export ready: JSON/CSV download, perfect for analytics, fraud checks, and network enrichment workflows.

Features

  • Bulk IP lookup.
  • IPv4 and IPv6 validation.
  • Country, region, city, latitude, longitude, and timezone lookup.
  • Optional ISP, ASN, and organization enrichment.
  • Invalid IP detection with consistent null fallback fields.
  • Structured output for pipelines, dashboards, and API automation.

Understanding includeNetwork

includeNetwork is a boolean trigger that controls whether the Actor also fetches network enrichment fields in addition to location data.

When includeNetwork is false

The Actor returns only:

  • input
  • isValid
  • ipVersion
  • location

This is the best option when you only need geolocation and want faster, simpler output.

When includeNetwork is true

The Actor also adds:

  • network.isp
  • network.organization
  • network.asn

This is useful when you want to know which provider or network owns the IP address.

Why includeNetwork is optional

Network enrichment is not always needed. Many use cases only care about geolocation such as country, city, and timezone. Making includeNetwork optional keeps the Actor lighter and avoids unnecessary processing when ISP/ASN data is not required.

Input Options

Click the input tab for the full schema.

FieldTypeDescriptionDefault
ipsArrayList of IPv4 or IPv6 addresses to lookup in bulk.
includeNetworkBooleanInclude ISP, ASN, and organization data in the output.false

Notes:

  • ips is the only required field.
  • The Actor validates each item to determine whether it is a valid IPv4 or IPv6 address.
  • If an IP is invalid, isValid returns false, and location returns null.
  • If includeNetwork is disabled, the network field is not included in the output.
  • If includeNetwork is enabled but lookup fails, network returns null.

Example: Geolocation only

{
"ips": ["8.8.8.8", "1.1.1.1", "2001:4860:4860::8888", "999.999.999.999"]
}

Output:

[
{
"input": "8.8.8.8",
"isValid": true,
"ipVersion": "IPv4",
"location": {
"country": "United States",
"countryCode": "US",
"region": "Virginia",
"city": "Ashburn",
"latitude": 39.03,
"longitude": -77.5,
"timezone": "America/New_York"
}
},
{
"input": "1.1.1.1",
"isValid": true,
"ipVersion": "IPv4",
"location": {
"country": "Australia",
"countryCode": "AU",
"region": "Queensland",
"city": "South Brisbane",
"latitude": -27.4766,
"longitude": 153.0166,
"timezone": "Australia/Brisbane"
}
},
{
"input": "2001:4860:4860::8888",
"isValid": true,
"ipVersion": "IPv6",
"location": {
"country": "Canada",
"countryCode": "CA",
"region": "Quebec",
"city": "Montreal",
"latitude": 45.5019,
"longitude": -73.5674,
"timezone": "America/Toronto"
}
},
{
"input": "999.999.999.999",
"isValid": false,
"ipVersion": null,
"location": null
}
]

Example: Geolocation + network enrichment (includeNetwork: true)

{
"ips": ["8.8.8.8", "1.1.1.1", "2001:4860:4860::8888", "999.999.999.999"],
"includeNetwork": true
}

Output:

[
{
"input": "8.8.8.8",
"isValid": true,
"ipVersion": "IPv4",
"location": {
"country": "United States",
"countryCode": "US",
"region": "Virginia",
"city": "Ashburn",
"latitude": 39.03,
"longitude": -77.5,
"timezone": "America/New_York"
},
"network": {
"isp": "Google LLC",
"organization": "Google Public DNS",
"asn": "AS15169 Google LLC"
}
},
{
"input": "1.1.1.1",
"isValid": true,
"ipVersion": "IPv4",
"location": {
"country": "Australia",
"countryCode": "AU",
"region": "Queensland",
"city": "South Brisbane",
"latitude": -27.4766,
"longitude": 153.0166,
"timezone": "Australia/Brisbane"
},
"network": {
"isp": "Cloudflare, Inc",
"organization": "APNIC and Cloudflare DNS Resolver project",
"asn": "AS13335 Cloudflare, Inc."
}
},
{
"input": "2001:4860:4860::8888",
"isValid": true,
"ipVersion": "IPv6",
"location": {
"country": "Canada",
"countryCode": "CA",
"region": "Quebec",
"city": "Montreal",
"latitude": 45.5019,
"longitude": -73.5674,
"timezone": "America/Toronto"
},
"network": {
"isp": "Google LLC",
"organization": "Google LLC",
"asn": "AS15169 Google LLC"
}
},
{
"input": "999.999.999.999",
"isValid": false,
"ipVersion": null,
"location": null,
"network": null
}
]

Example: Single IPv4 lookup

{
"ips": ["8.8.8.8"]
}

Output:

[
{
"input": "8.8.8.8",
"isValid": true,
"ipVersion": "IPv4",
"location": {
"country": "United States",
"countryCode": "US",
"region": "Virginia",
"city": "Ashburn",
"latitude": 39.03,
"longitude": -77.5,
"timezone": "America/New_York"
}
}
]

Example: Single IPv6 lookup

{
"ips": ["2001:4860:4860::8888"],
"includeNetwork": true
}

Output:

[
{
"input": "2001:4860:4860::8888",
"isValid": true,
"ipVersion": "IPv6",
"location": {
"country": "Canada",
"countryCode": "CA",
"region": "Quebec",
"city": "Montreal",
"latitude": 45.5019,
"longitude": -73.5674,
"timezone": "America/Toronto"
},
"network": {
"isp": "Google LLC",
"organization": "Google LLC",
"asn": "AS15169 Google LLC"
}
}
]

Example: Invalid IP input

{
"ips": ["999.999.999.999", "invalid-ip"],
"includeNetwork": true
}

Output:

[
{
"input": "999.999.999.999",
"isValid": false,
"ipVersion": null,
"location": null,
"network": null
},
{
"input": "invalid-ip",
"isValid": false,
"ipVersion": null,
"location": null,
"network": null
}
]

Output Data

Results saved to default Dataset (export JSON/CSV) and Key-value store OUTPUT.

Output Fields

FieldTypeDescriptionExample
inputStringOriginal IP address input"8.8.8.8"
isValidBooleanWhether the input is a valid and successfully resolved IP addresstrue
ipVersionString|nullDetected IP version: IPv4, IPv6, or null if invalid"IPv4"
location.countryString|nullResolved country name"United States"
location.countryCodeString|nullISO 2-letter country code"US"
location.regionString|nullRegion or state name"Virginia"
location.cityString|nullResolved city"Ashburn"
location.latitudeNumber|nullLatitude coordinate39.03
location.longitudeNumber|nullLongitude coordinate-77.5
location.timezoneString|nullIANA timezone name"America/New_York"
network.ispString|nullInternet service provider. Present only if includeNetwork: true"Google LLC"
network.organizationString|nullOrganization or network owner. Present only if includeNetwork: true"Google Public DNS"
network.asnString|nullASN / autonomous system information. Present only if includeNetwork: true"AS15169 Google LLC"

IP Version Values

ValueDescription
IPv4Valid IPv4 address
IPv6Valid IPv6 address
nullInvalid input or lookup failed

How to Use IP Geolocation Lookup

  1. Prepare your IPs — collect IPv4 and/or IPv6 addresses.
  2. Add them to ips — provide one or many addresses in an array.
  3. Enable includeNetwork if needed — use this only when you also want ISP, ASN, and organization data.
  4. Run Actor — results appear in Dataset and key-value store OUTPUT.
  5. Export — download as JSON or CSV, or fetch via API.
  6. Schedule / API — automate recurring IP enrichment workflows.

💡 Quick test: Run now with 8.8.8.8 and 1.1.1.1 to validate your setup in seconds.

Pricing

  • Free trial: ~$5 credits covers extensive testing.
  • Pay-per-run: Low compute usage for standard bulk lookups.
  • Scales well for analytics, enrichment, and validation workflows.

Tips

  • Use bulk input to process multiple IPs in a single run efficiently.
  • Enable includeNetwork only when needed to keep output lighter and easier to consume.
  • Use ipVersion to separate IPv4 and IPv6 traffic in analytics.
  • Check isValid first before relying on any location or network field.
  • Export Dataset as CSV for BI tools, spreadsheets, or reporting dashboards.
  • Use API access to plug this Actor into fraud checks, log enrichment, and traffic analysis flows.

FAQ

Is IP Geolocation Lookup free?

Free trial covers extensive testing. Production usage is pay-per-compute and typically low cost for normal bulk lookup workloads.

Does it support both IPv4 and IPv6?

Yes. The Actor validates and processes both IPv4 and IPv6 addresses.

What happens if an IP is invalid?

isValid returns false, ipVersion returns null, and location returns null. If includeNetwork is enabled, network also returns null.

Do I need includeNetwork for geolocation?

No. Geolocation works without it. includeNetwork is only needed when you want ISP, ASN, and organization enrichment.

What does ASN mean?

ASN stands for Autonomous System Number. It identifies the network or routing domain associated with an IP address.

Can I use this for bulk analytics or fraud checks?

Yes. This Actor is well suited for log enrichment, traffic analysis, geo-targeting, suspicious IP review, and network-based segmentation.


Feedback? Create issue — open to suggestions!