Each API is priced and billed on its own, so you only pay for the ones you use. Every plan includes the full API response, including the free one, and annual billing saves 10%. Pick a plan below by the data you need, then set your volume in the dashboard.
Abstract prices each API on its own meter, so email validation API pricing, phone validation API pricing and IP geolocation API pricing are separate lines on your bill and you only pay for the APIs you actually call. Every API has a permanently free tier with no credit card, and every plan returns the complete API response rather than a trimmed one.
Plans differ by the data each response carries, not by speed or support. Starter returns the core validation fields, Standard adds enrichment, and Professional adds the risk and reputation signals used for fraud scoring. Volume is a separate choice: you set requests per month inside your plan, and the cost per 1,000 requests falls as that volume rises. Annual billing is 10% cheaper than paying monthly for the same plan.
Rate limits are separate again. They cap requests per second rather than requests per month, so a burst of traffic is governed by the rate limit while your monthly quota governs total usage.
At each API's entry volume on Starter, billed annually. Free tier: 100 requests a month on email and phone, 1,000 on IP.
{
"email_address": "richard.hendricks@abstractapi.com",
"suggested_correction": null,
"email_deliverability": {
"status": "deliverable",
"status_detail": "valid_email",
"is_format_valid": true,
"is_smtp_valid": true,
"is_mx_valid": true,
"mx_records": [
"alt2.aspmx.l.google.com",
"aspmx.l.google.com",
"alt3.aspmx.l.google.com",
"alt4.aspmx.l.google.com",
"alt1.aspmx.l.google.com"
]
}
}
{
"email_address": "richard.hendricks@abstractapi.com",
"suggested_correction": null,
"email_deliverability": {
"status": "deliverable",
"status_detail": "valid_email",
"is_format_valid": true,
"is_smtp_valid": true,
"is_mx_valid": true,
"mx_records": [
"alt2.aspmx.l.google.com",
"aspmx.l.google.com",
"alt3.aspmx.l.google.com",
"alt4.aspmx.l.google.com",
"alt1.aspmx.l.google.com"
]
},
"email_sender": {
"first_name": "Richard",
"last_name": "Hendricks",
"email_provider_name": "Google",
"organization_name": "Abstract API",
"organization_type": "commercial"
},
"email_domain": {
"domain": "abstractapi.com",
"domain_age": 1871,
"is_live_site": true,
"registrar": "NameCheap, Inc.",
"registrar_url": "https://namecheap.com",
"date_registered": "2020-05-13",
"date_last_renewed": "2025-04-13",
"date_expires": "2026-05-13",
"is_risky_tld": false
}
}
{
"email_address": "richard.hendricks@abstractapi.com",
"suggested_correction": null,
"email_deliverability": {
"status": "deliverable",
"status_detail": "valid_email",
"is_format_valid": true,
"is_smtp_valid": true,
"is_mx_valid": true,
"mx_records": [
"alt2.aspmx.l.google.com",
"aspmx.l.google.com",
"alt3.aspmx.l.google.com",
"alt4.aspmx.l.google.com",
"alt1.aspmx.l.google.com"
]
},
"email_quality": {
"score": "0.80",
"is_free_email": false,
"is_username_suspicious": false,
"is_disposable": false,
"is_catchall": true,
"is_subaddress": false,
"is_role": false,
"is_dmarc_enforced": true,
"is_spf_strict": false,
"minimum_age": null
},
"email_sender": {
"first_name": "Richard",
"last_name": "Hendricks",
"email_provider_name": "Google",
"organization_name": "Abstract API",
"organization_type": "commercial"
},
"email_domain": {
"domain": "abstractapi.com",
"domain_age": 1871,
"is_live_site": true,
"registrar": "NameCheap, Inc.",
"registrar_url": "https://namecheap.com",
"date_registered": "2020-05-13",
"date_last_renewed": "2025-04-13",
"date_expires": "2026-05-13",
"is_risky_tld": false
},
"email_risk": {
"address_risk_status": "low",
"domain_risk_status": "medium"
},
"email_breaches": {
"total_breaches": 0,
"date_first_breached": null,
"date_last_breached": null,
"breached_domains": []
}
}
The cheapest plan at each provider that covers 5,000 email verifications a month. Abstract's price is billed annually, $19 paid monthly.
| 5,000 verifications / month | Abstract | Bouncer | Emailable | ZeroBounce |
|---|---|---|---|---|
| What you pay | $17 / month | $35 | $32.30 / month | Not sold at this volume |
| Cost per verification | $0.0034 | $0.0070 | $0.0065 | 10,000 credit minimum |
| Free tier, no credit card | 100 / month, recurring | 100 credits, one time | 250 credits, one time | 100 / month |
| Full response on every plan | Yes | Risk score on higher tiers | Yes | Yes |
100 requests a month, no credit card. The free plan returns the same full API response as the paid plans, so you can test the exact payload you will ship before you pay anything.
Starter is $17 a month billed annually and includes 5,000 requests a month, which works out to $3.40 per 1,000 requests. Cost per request falls as you raise the volume inside a plan.
The data each response carries. Starter returns deliverability. Standard adds sender and domain details. Professional adds quality score, risk and breach data. Pick the lowest plan that returns the field you actually read in your code.
Yes. Paid monthly, Starter is $19, Standard $35 and Professional $39. Annual billing is 10% cheaper for the same plan, and you can switch between the two from your dashboard.
{
"phone_number": "14159929960",
"phone_format": {
"international": "+14159929960",
"national": "(415) 992-9960"
},
"phone_carrier": {
"name": "T-Mobile",
"line_type": "Wireless",
"mcc": "310",
"mnc": "160"
},
"phone_location": {
"country_name": "United States",
"country_code": "US",
"country_prefix": "+1",
"region": "California",
"city": "San Francisco",
"timezone": "America/Los_Angeles"
},
"phone_validation": {
"is_valid": true,
"line_status": "active",
"is_voip": false
}
}{
"phone_number": "14159929960",
"phone_format": {
"international": "+14159929960",
"national": "(415) 992-9960"
},
"phone_carrier": {
"name": "T-Mobile",
"line_type": "Wireless",
"mcc": "310",
"mnc": "160"
},
"phone_location": {
"country_name": "United States",
"country_code": "US",
"country_prefix": "+1",
"region": "California",
"city": "San Francisco",
"timezone": "America/Los_Angeles"
},
"phone_validation": {
"is_valid": true,
"line_status": "active",
"is_voip": false,
"minimum_age": 1888
},
"phone_messaging": {
"sms_domain": "tmomail.net",
"sms_email": "14159929960@tmomail.net"
}
}{
"phone_number": "14159929960",
"phone_format": {
"international": "+14159929960",
"national": "(415) 992-9960"
},
"phone_carrier": {
"name": "T-Mobile",
"line_type": "Wireless",
"mcc": "310",
"mnc": "160"
},
"phone_location": {
"country_name": "United States",
"country_code": "US",
"country_prefix": "+1",
"region": "California",
"city": "San Francisco",
"timezone": "America/Los_Angeles"
},
"phone_messaging": {
"sms_domain": "tmomail.net",
"sms_email": "14159929960@tmomail.net"
},
"phone_validation": {
"is_valid": true,
"line_status": "active",
"is_voip": false,
"minimum_age": 1888
},
"phone_registration": {
"name": "Sergio Suarez",
"type": "consumer"
},
"phone_risk": {
"risk_level": "low",
"is_disposable": false,
"is_abuse_detected": false
},
"phone_breaches": {
"total_breaches": 1,
"date_first_breached": "2019-07-23",
"date_last_breached": "2019-07-23",
"breached_domains": [
{
"domain": "facebook.com",
"breach_date": "2019-07-23"
}
]
}
}Most phone APIs price validation cheaply and then charge again for the fraud signals you actually need at signup. This compares a response that carries validation, carrier and line type, and a fraud risk score together. Abstract's price is billed annually, $19 paid monthly.
| Validation, carrier and risk in one response | Abstract | Numverify | Twilio Lookup | IPQS |
|---|---|---|---|---|
| Validation, carrier and line type | Included | Included | $0.008 per lookup | Included |
| Fraud risk score | Included | Not offered | Priced separately | Included |
| Number registration data | Included | Not offered | Priced separately | Not published |
| One request, one price | Yes | Yes, without risk data | No, priced per data package | Yes |
| Cost per lookup for the full set | $0.0085 | Not available | $0.033 outside North America | $0.0198 |
100 requests a month, no credit card, at 3 requests a second. The free plan returns every field the paid plans return, so you can check the response shape before committing.
They cost $17 a month billed annually and differ by volume rather than price. Starter includes 5,000 requests a month, Standard 3,000 and Professional 2,000, because each step adds more data to every response. You are trading volume for depth at a fixed price.
Starter. It returns validation, location and carrier, which covers carrier lookup and line type checks. Standard adds messaging details, and Professional adds registration and risk signals for fraud scoring.
Yes. Every paid Phone plan is $19 a month paid monthly, against $17 billed annually. The included volume is the same either way.
{
"ip_address": "151.101.0.84",
"asn": {
"asn": 54113,
"name": "FASTLY",
"domain": "fastly.com",
"type": "commercial"
},
"location": {
"city": "San Francisco",
"city_geoname_id": 5391959,
"region": "California",
"region_iso_code": "CA",
"region_geoname_id": 5332921,
"postal_code": "94107",
"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": -99.0090672,
"latitude": 36.8184301
},
"timezone": {
"name": "America/Chicago",
"abbreviation": "CST",
"utc_offset": -6,
"local_time": "12:03:20",
"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_address": "151.101.0.84",
"asn": {
"asn": 54113,
"name": "FASTLY",
"domain": "fastly.com",
"type": "commercial"
},
"company": {
"name": "FASTLY",
"domain": "fastly.com",
"type": "commercial"
},
"location": {
"city": "San Francisco",
"city_geoname_id": 5391959,
"region": "California",
"region_iso_code": "CA",
"region_geoname_id": 5332921,
"postal_code": "94107",
"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": -99.0090672,
"latitude": 36.8184301
},
"timezone": {
"name": "America/Chicago",
"abbreviation": "CST",
"utc_offset": -6,
"local_time": "12:03:20",
"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_address": "151.101.0.84",
"security": {
"is_vpn": false,
"is_proxy": false,
"is_tor": false,
"is_hosting": false,
"is_relay": false,
"is_mobile": false,
"is_abuse": false
},
"asn": {
"asn": 54113,
"name": "FASTLY",
"domain": "fastly.com",
"type": "commercial"
},
"company": {
"name": "FASTLY",
"domain": "fastly.com",
"type": "commercial"
},
"domains": {
"domains": [
"pinterest.com",
]
},
"location": {
"city": "San Francisco",
"city_geoname_id": 5391959,
"region": "California",
"region_iso_code": "CA",
"region_geoname_id": 5332921,
"postal_code": "94107",
"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": -99.0090672,
"latitude": 36.8184301
},
"timezone": {
"name": "America/Chicago",
"abbreviation": "CST",
"utc_offset": -6,
"local_time": "12:03:20",
"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": "$"
}
}The cheapest plan at each provider that covers 200,000 IP lookups a month. None of the three sells a plan at exactly that volume, so this is the plan you would actually have to buy. Abstract's price is billed annually, $19 paid monthly.
| 200,000 requests / month | Abstract | ipgeolocation.io | ipstack | IPinfo |
|---|---|---|---|---|
| What you pay | $17 / month | $49 / month | $59.99 / month | $163 / month |
| Plan you have to buy | Starter, 200,000 | Plus, 500,000 | Professional, 500,000 | Max, 250,000 |
| Effective cost per 1,000 | $0.085 | $0.245 | $0.300 | $0.815 |
| Free tier, no credit card | 1,000 / month, full response | 1,000 / day | 100 / month | Country level only |
1,000 requests a month at 1 request a second, no credit card. The free plan returns the complete response, including the security and company fields that paid plans gate.
Starter is $17 a month billed annually and includes 200,000 requests a month, which works out to $0.085 per 1,000 requests. IP lookups usually sit on every request rather than at signup, which is why the entry volume is far higher than the other two APIs.
Starter returns ASN, location, timezone, flag and currency. Standard adds company information. Professional adds the security signals and domain data used for VPN, proxy and fraud detection.
10 requests a second on every paid plan, and 1 request a second on the free plan. Rate limits are separate from volume: they cap how fast you can call, not how much you can call in a month.