Free IP Reputation Check: VPN, proxy, Tor and abuse in one report

Check any IP address against five risk signals at once: VPN, proxy, Tor, hosting or datacenter, and reported abuse history, plus the network operator and country behind it. One lookup, under 200ms, no signup required.
Enter an IP address to check its reputation
Need inspiration? Try
185.220.101.34
Check IP
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Learn more about the free IP Intelligence API
Checking
5
Results for
ip address
VPN:
-
Proxy:
-
Tor:
-
Hosting / Datacenter:
-
Abuse history:
-
Organization:
-
Country:
-
Get free credits, more data, and faster results

What is an IP reputation check?

An IP reputation check tells you how much to trust an IP address before you let it reach signup, login, or checkout. It answers two questions in one lookup: what kind of network is this address on, and has it been reported for malicious activity? The report covers five risk signals: VPN, proxy, Tor, hosting or datacenter, and abuse history. It also returns the network operator (ASN) and the country behind the address.

It is not a real-time threat detection system. It describes what an address is and what it has been reported for, drawing on aggregated public sources such as AbuseIPDB and Spamhaus alongside network ownership data. Think of it as a background check on an address, run in the milliseconds before you decide to trust it.

How an IP reputation check works

When you submit an IP address, the check runs three steps:

  1. Aggregated abuse-report lookup: The IP is cross-referenced against public abuse reports from sources like AbuseIPDB, Spamhaus, and similar reputation databases, with recent reports weighted more heavily than older ones.
  2. Hosting and proxy cross-reference: The check flags whether the IP runs in a datacenter or hosting range, and whether it appears in public open-proxy lists or shows behavioral signals of proxy or VPN use. Datacenter IPs almost never represent end users, which is itself a useful risk signal.
  3. Single-call response: The abuse signal returns alongside hosting, proxy, VPN, and country fields in one request. No multi-source orchestration, no separate calls per database

Network signals like VPN, proxy, Tor, and hosting come from address ownership and routing data, so they describe the address as it is now. The abuse signal is recency-weighted: an IP reported six months ago carries less weight than one reported last week, so the result reflects current risk rather than lifetime history. Most checks complete in under 200ms.

IP reputation check vs. abuse check vs. blacklist check

Three related lookups that answer different questions. Picking the right one saves you a wasted call.

IP reputation check (what this tool does) returns the whole picture in one call: the five risk flags, the network operator, and the country. Best when you need to decide whether to trust an inbound request, because the flags only mean much together. A datacenter IP with a clean record reads very differently from a Tor exit with reported abuse.

IP abuse check returns the abuse-history signal on its own, recency-weighted across public report sources. Use it when the only question is whether an address has been reported recently and you do not need the network context around it. Abstract's IP abuse check tool covers that narrower job.

IP blacklist check confirms membership in specific named blocklists (Spamhaus SBL, XBL, PBL; CBL; SORBS). It returns a yes or no per list, which is the standard input for email-deliverability decisions. Abstract does not offer that direction: MXToolbox or Spamhaus directly are the right tools for it. Use this page when you want a consolidated trust signal for a request, and a blacklist tool when you need named-list verification.

Use cases for an IP reputation check

Signup fraud screening: Score an address before the account exists. What matters is the pattern rather than any single flag. A datacenter or Tor IP carrying reported abuse is the shape of a bot farm, while a residential IP with a clean record is the shape of a customer.

Network and security debugging: Investigate suspicious traffic in your logs. Get the network type, operator, country, and abuse history for any IP in your incident timeline, without leaving your dashboard.

Automated risk gating: Set thresholds in your code. Step up verification when an address is a Tor exit or carries reported abuse, and let clean residential traffic through untouched. Decisions in milliseconds, no manual review queue.

Vendor and partner traffic vetting: Cross-check IPs from third-party services or partners before granting access to internal endpoints or sensitive data. A partner routing through anonymising infrastructure, or with reported abuse in their range, deserves a closer conversation.

Checking many IPs? Run the whole list through the bulk IP lookup

What each IP reputation flag means

An IP reputation check returns more than a single abuse flag. Alongside the abuse signal, each lookup returns the network type behind the address, so you can weigh risk in context. Here is what each flag means and how it affects reputation.

FlagWhat it meansWhy it matters
is_abuseThe IP appears in aggregated abuse and blocklist sources.Reported for spam, brute force, scanning, or fraud. The strongest negative signal.
is_vpnThe IP belongs to a known VPN service.Hides the real network. Common in evasion, though many real users use VPNs.
is_proxyThe IP is a known or anonymizing proxy.Often masks origin. Higher risk for abuse and scraping.
is_torThe IP is a Tor exit node.Strong anonymity. Rare for normal users, common in probing and abuse.
is_hostingThe IP runs in a hosting or datacenter range.Real users rarely browse from datacenters. Typical of bots and automation.
is_relayThe IP is a private relay such as iCloud Private Relay.A legitimate privacy feature. Low risk on its own.
is_mobileThe IP is on a mobile carrier network.Shared and dynamic. Usually lower risk, but shared across many users.

No single flag is a verdict. A datacenter IP on a high-value checkout, or a VPN paired with a reported abuse history, is worth a closer look, while a residential mobile IP with a clean record usually is not. See how IP reputation works, or score addresses in your own signup, login, and checkout flows with the IP Intelligence API.

See what the API returns

Every IP reputation check returns a structured JSON response. The same VPN, proxy, Tor, hosting and abuse signals the tool above shows are available through the API, from one request to millions per month.

Response parameters

ip_address

String
The IP address submitted for geolocation.

security.is_vpn

Boolean
Whether the IP address is being used from a VPN.

security.is_proxy

Boolean
Whether the IP address is being used from a Proxy.

security.is_tor

Boolean
Whether the IP address is part of the TOR network.

security.is_hosting

Boolean
Whether the IP address is an internet service hosting IP address.

security.is_relay

Boolean
Whether the IP address is being used as a relay server.

security.is_mobile

Boolean
Whether the IP address belongs to a mobile network.

security.is_abuse

Boolean
Whether the IP address has been flagged for abusive behavior.

asn.asn

Integer
The Autonomous System Number (ASN) associated with the IP address.

asn.name

String
The name of the organization or ISP associated with the ASN.

asn.domain

String
The domain associated with the ASN.

asn.type

String
The type of organization, such as ISP or hosting.

company.name

String
The name of the company associated with the IP address.

company.domain

String
The company's domain name.

company.type

String
The type of company, such as ISP or hosting.

domains.domains

Array
A list of domains associated with the IP address.

location.city

String
City's name.

location.city_geoname_id

Integer
City's geoname ID.

location.region

String
State or province in which the city is located.

location.region_iso_code

Integer
State or province's ISO 3166-2 code.

location.region_geoname_id

String
State or province's geoname ID.

location.postal_code

String
ZIP or postal code.

location.country

String
Country's name.

location.country_code

Integer
Country's ISO 3166-1 alpha-2 code.

location.country_geoname_id

Integer
Country's geoname ID.

location.is_country_eu

Boolean
True if the country is in the EU, false if it is not.

location.continent

String
Continent's name.

location.continent_code

String
2 letter continent code: AF, AS, EU, NA, OC, SA, AN.

location.continent_geoname_id

Integer
Continent's geoname ID.

location.longitude

Float
Decimal of the longitude.

location.latitude

Float
Decimal of the latitude.

timezone.name

String
Timezone's name from the IANA Time Zone Database.

timezone.abbreviation

String
Timezone's abbreviation, also from the IANA Time Zone Database.

timezone.utc_offset

Integer
The UTC offset for the timezone.

timezone.local_time

String
Current time in the local time zone.

timezone.is_dst

Boolean
True if the location is currently in Daylight Savings Time (DST).

flag.emoji

String
Country's flag as an emoji.

flag.unicode

String
Country's flag in unicode.

flag.png

String
Link to a hosted version of the country's flag in PNG format.

flag.svg

String
Link to a hosted version of the country's flag in SVG format.

currency.name

String
The currency's name.

currency.code

String
The currency's code in ISO 4217 format.

currency.symbol

String
The currency's symbol.

API Endpoint

curl --request GET \
  --url https://ip-intelligence.abstractapi.com/v1

API Response

{
"ip_address": "185.197.192.65",
"security": {
    "is_vpn": true,
    "is_proxy": true,
    "is_tor": false,
	"is_hosting": false,
	"is_relay": false,
	"is_mobile": false,
	"is_abuse": false,
},
"asn": {
    "asn": 136787,
    "name": "PacketHub S.A.",
    "domain": "packethub.tech",
    "type": "isp",
},
"company": {
    "name": "PacketHub S.A.",
    "domain": "packethub.tech",
    "type": "isp",
},
"domains": {
	"domains": []
},
"location": {
    "city": "Miami",
    "city_geoname_id": 4164138,
    "region": "Florida",
    "region_iso_code": "FL",
    "region_geoname_id": 4155751,
    "postal_code": "33197",
    "country": "United States",
    "country_code": "US",
    "country_geoname_id": 6252001,
    "is_country_eu": false,
    "continent": "North America",
    "continent_code": "NA",
    "continent_geoname_id": 6255149,
    "longitude": -80.1946,
    "latitude": 25.7689,
},
"timezone": {
    "name": "America/New_York",
    "abbreviation": "EST",
    "utc_offset": -5,
    "local_time": "12:07:51",
    "is_dst": false,
},
"flag": {
    "emoji": "🇺🇸",
    "unicode": "U+1F1FA U+1F1F8",
    "png": "https://static.abstractapi.com/country-flags/US_flag.png",
    "svg": "https://static.abstractapi.com/country-flags/US_flag.svg",
},
"currency": {
    "name": "US Dollar",
    "code": "USD",
    "symbol": "$"
}
}

IP reputation check FAQ

How does an IP reputation check work?

Each lookup combines two kinds of data. The network signals (VPN, proxy, Tor, hosting or datacenter) come from address ownership and routing data. The abuse signal is aggregated from public report sources such as AbuseIPDB and Spamhaus. You get both back as one report, with the network operator and country, in under 200ms.

Which signals does the check return?

Seven fields: whether the address is a VPN, a proxy, a Tor exit, or hosting and datacenter infrastructure; whether it has been reported for abuse; and the network operator (ASN) and country behind it. The five risk signals come back as plain true or false values, so they are easy to turn into rules.

How recent is the abuse data?

Recency is weighted in the signal. Reports from the last 30 to 90 days carry more weight than older ones. An IP that was reported a year ago and has been clean since is less likely to flag as abusive than one reported last week. The signal reflects current risk, not lifetime history.

An IP is flagged. Should I block it?

That depends on what is at stake, and on how many signals are set. One flag on its own is rarely enough, since plenty of real customers browse through a VPN. Several flags together, or reported abuse on a high-friction action like account creation or payment, is a good basis for extra verification or a block. For something low-risk like a marketing page view, let the request through.

How is this different from a blacklist check?

Blacklist checks confirm whether an IP appears on specific named blocklists (Spamhaus SBL, XBL, PBL, CBL, and others), typically used for email deliverability. An abuse check returns reputation across multiple aggregated sources and weights recency. They overlap but answer different questions: "is this IP on this specific list" versus "has this IP been reported for malicious activity recently."

Is the IP reputation check tool free?

Yes. The online tool is free with no signup required for individual lookups. For programmatic access, Abstract's IP Intelligence API offers a free tier with 1,000 requests per month. View pricing for higher-volume plans.

Can I check more than one IP at a time?

This tool checks one address at a time. For a list, Abstract's bulk IP lookup tool takes a batch and returns a CSV, and the IP Intelligence API handles it programmatically with 1,000 free requests a month.

Is a VPN or proxy IP always bad?

No. Plenty of legitimate people browse through a VPN or a corporate proxy, so blocking every one turns away real users. Treat a VPN or proxy flag as one input, weigh it alongside the abuse signal and how risky the action is, and prefer a challenge over an outright block.

Where IP reputation fits

A bad IP reputation is often the first sign of automated or abusive traffic.

Detect bots at signup and loginCut ad fraud and fake clicks
Need IP reputation data for more than 1,000 requests?
stars rating
4.8 from 1,863 votes
The same check the tool above runs, available as an API.
get free api key
No credit card required