Phone validation · Trueguard vs Vonage Number Insight
Comparison
Vonage Number Insight API migration: Vonage vs Trueguard.
Every Vonage figure comes from Vonage's developer docs and pricing page, read 2 November 2026. The Identity Insights pricing page carries no date.
20,000 checks
$49.99/mo
$0.0025 per extra check. 100 checks a month free, no credit card.
No credit card required.
Vonage sunsets Number Insight on 4 February 2027.
“Effective February 4, 2027, Vonage will sunset Vonage Number Insights. ... we encourage you to migrate to our enhanced offering: Vonage Identity Insights API.” Number Insight API reference, read 2 November 2026.
The notice covers the Number Insight API. Vonage's pages do not say what a call to the /ni/ endpoints returns after that date.
Identity Insights has been generally available since 20 January 2026.
Three ways to replace Number Insight.
Identity Insights
Trueguard
Both
Number Insight field map: Basic, Standard and Advanced.
Each Number Insight field, its Identity Insights equivalent per Vonage's transition guide, and the Trueguard field.
Basic Insight fields | Trueguard | Identity Insights |
|---|---|---|
| international_format_number | format.e164 Vonage's examples show digits without +. Trueguard returns E.164 with +. | Format: number_international |
| national_format_number | format.national | Format: number_national |
| country_code | location.countryCode | Format: country_code_iso2 The guide's example shows country_code and the getting-started example shows country_code_iso2. |
| country_code_iso3 | Not returned | Format: country_code_iso3 |
| country_name | location.countryName | Format: country_name |
| country_prefix | location.callingCode | Format: country_prefix |
| status, status_message | HTTP status and an error body: statusCode, timestamp, message | status {code, message} per insight An HTTP 200 can hold failed insights. |
Standard Insight fields | Trueguard | Identity Insights |
|---|---|---|
| original_carrier.name | line.originalCarrier The consumer brand of the number's original range holder. | Original Carrier insight: name |
| original_carrier.network_code | line.mcc and line.mnc Mobile numbers only. | Original Carrier insight: network_code |
| original_carrier.network_type, current_carrier.network_type | line.type and line.voipType mobile = mobile, landline = landline, landline_premium = premiumRate, landline_tollfree = tollFree, virtual = voip, pager = pager, unknown = unknown. | network_type on each carrier insight |
| current_carrier.name | line.currentCarrier US numbers only, null elsewhere. | Current Carrier insight: name |
| current_carrier.network_code | No equivalent | Current Carrier insight: network_code |
| ported | line.isPorted From the US porting database, US numbers only. | Not provided Vonage says networks calculate it inconsistently and suggests comparing the two carriers, which misses round-trip ports. |
| caller_identity, caller_name (cnam=true, US) | Not returned | Not mapped in the transition guide |
| request_price, refund_price, remaining_balance | Not returned A monthly plan has no per-request charge. | Not mapped in the transition guide |
Advanced Insight fields | Trueguard | Identity Insights |
|---|---|---|
| valid_number | validity.isValid, validity.isPossible and validity.reason A numbering plan check, not a network check. | Not mapped in the transition guide Format returns is_format_valid, which is a format check. |
| reachable | Not returned No HLR or live line test. | Reachability insight Developer Preview, Vonage Virtual Operator only. |
| roaming.* | Not returned | Roaming insight Developer Preview, Vonage Virtual Operator only. |
| lookup_outcome, lookup_outcome_message | Not returned One HTTP status per call. | Not mapped in the transition guide The status on each insight is the closest. |
| real_time_data | Not returned | Not mapped in the transition guide Deprecated in Number Insight, which returns inactive and off when requested. |
| Async callback | Synchronous only, median under 500 ms | Not mapped in the transition guide |
Sources: Number Insight API reference and Number Insights transition guide. Read 2 November 2026.
What Identity Insights drops from Number Insight.
Ported flag
Caller name
Roaming and reachability
Request-level outcome
Trueguard does not return roaming, reachability, caller name or SIM swap either. The next section says where Vonage is ahead.
Where Vonage is the better choice.
Stated plainly, because you will find it out anyway.
SIM swap and device swap
Subscriber match
Current carrier outside the US
Pay only for the insight you ask for
One account with SMS and Verify
Vonage Number Insight alternative: what Trueguard returns that Vonage does not.
Fixed and non-fixed VoIP
A porting flag for US numbers
Disposable now and before
SMS destination and range risk
Vonage Number Insight pricing vs Identity Insights vs Trueguard.
| Checks | Identity Insights format + original carrier | Identity Insights format + original + current carrier | Trueguard |
|---|---|---|---|
| 10,000 | $11.70 | $93.60 | $49.99 |
| 100,000 | $117 | $936 | $249.99 |
| 1,000,000 | $1,170 | $9,360 | $2,499.99 at list overage (Custom plan from 500,000) |
Vonage no longer publishes Number Insight prices per level. Its old Number Insight pricing URL now shows the Identity Insights table. Every Standard and Advanced response carries request_price in EUR, so a month of your own logs tells you what you pay today.
Vonage's transition guide tells you to request both carrier insights to keep Number Insight's carrier data. That is the middle column. If you only need the original carrier, Identity Insights costs less than Trueguard at every volume here.
Identity Insights is $0.00117 for Original Carrier and $0.00819 for Current Carrier, $0.00936 together, and Format is at no cost. Trueguard returns the current carrier for US numbers only, so outside the US the middle column buys a field Trueguard leaves null. Prices read 2 November 2026 from Vonage's Identity Insights pricing page, which carries no date. SIM Swap and Subscriber Match are priced per country.
Identity Insights vs Trueguard, feature by feature.
Pricing | Trueguard | Identity Insights |
|---|---|---|
| Free usage | 100 checks a month, every field | Format at no cost per request |
| Pricing model | $49.99 a month for 20,000, then $0.0025 per check | Pay per insight, per request, no monthly fee |
| Volume pricing | Custom plan from 500,000 a month | SIM Swap and Subscriber Match are priced per country |
Number data | Trueguard | Identity Insights |
|---|---|---|
| Validity and formats | Yes | Format insight |
| Line type | 15 types, VoIP split into fixed and nonFixed | network_type on each carrier insight The guide's example shows MOBILE. The full list of values is not on the pages read. |
| Original carrier | From the number's range holder | Original Carrier insight |
| Current carrier | US numbers only | Current Carrier insight |
| Porting | isPorted, US numbers only | Not provided Dropped in the transition guide. |
| MCC and MNC | Yes Mobile numbers only | network_code on each carrier insight |
| Region, city, time zones | Yes | offline_location, time_zones |
| Caller name (US) | No | Not mapped in the transition guide |
Network checks | Trueguard | Identity Insights |
|---|---|---|
| SIM swap | No | Yes, priced per country |
| Subscriber match | No | Yes, priced per country |
| Device swap | No | Listed in the API reference |
| Roaming and reachability | No HLR or live line test | Developer Preview, Virtual Operator only |
Risk signals | Trueguard | Identity Insights |
|---|---|---|
| Disposable number | isDisposable (last 30 days), previouslyDisposable (31 to 180 days) From Trueguard's own monitoring of public receive-SMS sites | Not listed |
| Range risk | Yes | Not listed |
| SMS destination risk | Country level | Not listed |
| STIR/SHAKEN, block age, FTC complaints | STIR/SHAKEN for US numbers, block age for US and Canada, complaints for +1 numbers | Not listed |
| Overall verdict | risk.status: safe, risky, invalid, unknown | A status per insight, no overall verdict listed |
Integration | Trueguard | Identity Insights |
|---|---|---|
| Request | POST JSON, X-API-KEY header | POST JSON, Bearer JWT, api-eu or api-us host |
| Errors | HTTP status | A status per insight An HTTP 200 can hold failed insights. |
| Access | API key from a free account | Vonage application with JWT Full access to operator data requires approval from the mobile operators. |
| Median response | Under 500 ms | No figure on the pages read |
| SMS sending | Does not sell SMS | Same account as Vonage SMS and Verify |
Migrating the code off Number Insight.
The same number, three ways.
Before: Number Insight Advanced, Node.js
import { Vonage } from "@vonage/server-sdk";
const vonage = new Vonage({ apiKey: VONAGE_API_KEY, apiSecret: VONAGE_API_SECRET });
const insight = await vonage.numberInsights.advancedLookup("14159929960");
console.log(insight);After: Identity Insights, Node.js
import { Auth } from "@vonage/auth";
import { IdentityInsights } from "@vonage/identity-insights";
const credentials = new Auth({ applicationId: VONAGE_APPLICATION_ID, privateKey: VONAGE_PRIVATE_KEY_PATH });
const client = new IdentityInsights(credentials, {});
const result = await client.getIdentityInsights({
phoneNumber: "14159929960",
purpose: "FraudPreventionAndDetection",
insights: { format: {}, originalCarrier: {}, currentCarrier: {} },
});
console.log(result);After: Trueguard, Node.js
const res = await fetch("https://api.trueguard.io/v2/phone/validation", {
method: "POST",
headers: {
"X-API-KEY": process.env.TRUEGUARD_KEY,
"Content-Type": "application/json"
},
body: JSON.stringify({ phone: "+14159929960" })
});
console.log(await res.json());Number Insight returns status 0 on success. Identity Insights can return HTTP 200 with failed insights, so check status.code on each one. Trueguard returns a non-2xx HTTP status with a message.
Keep Vonage SMS and Verify, put Trueguard in front of it.
Trueguard does not sell SMS, so it has no reason to keep you sending them.
Check the number
Filter
Send the rest through Vonage
Migration checklist before 4 February 2027.
Find every call
List what you read
Map the fields
Price today
Pick a path
Run both
Rewrite error handling
Cut over
Which one should you pick?
Choose Trueguard
You need validity, line type and carrier without network checks.
VoIP numbers matter and you want fixed and non-fixed told apart.
You used Number Insight's ported flag for US numbers.
Disposable and receive-SMS numbers are your problem.
Choose Identity Insights
You need SIM swap, device swap or subscriber match.
You need the current carrier outside the US.
You only need formatting and the original carrier, at $0.00117 a lookup.
You want lookups, SMS and Verify on one Vonage bill.
The three Trueguard plans.
No credit multipliers, and overage at the same rate as the plan.
Frequently asked questions
Something out of date? Tell us and we will correct it.
When does Vonage Number Insight stop working?
Vonage's API reference says: "Effective February 4, 2027, Vonage will sunset Vonage Number Insights." The transition guide gives only the month, February 2027. Vonage points users to Identity Insights. Both pages were read on 2 November 2026.
What happens to my Number Insight calls after 4 February 2027?
Vonage's pages say the API will be sunset and deprecated. They do not say what a call returns after that date. Plan for the /ni/ endpoints to stop returning data and move before then.
Is Identity Insights a drop-in replacement for Number Insight?
No. It has a different endpoint, JWT authentication and a status per insight, so an HTTP 200 can hold failed insights. The transition guide maps formatting and both carriers. It drops ported, moves roaming and reachability to Developer Preview insights that run on Vonage Virtual Operator only, and does not map caller name, valid_number or lookup_outcome.
How do I tell if a number is ported now that Identity Insights has no ported field?
Vonage suggests comparing original_carrier and current_carrier, and says this misses round-trip ports and ports between carriers that share network infrastructure. Trueguard returns line.isPorted from the US porting database for US numbers and null elsewhere.
Does Identity Insights still tell me if a number is VoIP?
Each carrier insight returns a network_type. The pages read do not list its values, so check the API reference. Trueguard returns line.type as voip and line.voipType as fixed or nonFixed. The example number +14159929960 is non-fixed VoIP, ported from Lumen to Twilio.
Is Identity Insights more expensive than Number Insight?
Vonage no longer publishes Number Insight prices, and the old pricing URL now shows Identity Insights. Each Number Insight Standard and Advanced response carries request_price in EUR, so your own logs show what you pay today. Identity Insights lists Format at no cost, Original Carrier at EUR 0.001 ($0.00117) and Current Carrier at EUR 0.007 ($0.00819). All three together are $0.00936 a lookup, or $936 per 100,000. The pricing page carries no date and was read on 2 November 2026.
What is a good Vonage Number Insight alternative?
Trueguard fits when you need validity, line type with the VoIP split, original carrier, US porting and current carrier, disposable history and SMS destination risk for $49.99 a month for 20,000 checks. Identity Insights fits when you need SIM swap, subscriber match, or a current carrier outside the US.
Can I keep Vonage for SMS and Verify and switch only the lookup?
Yes. Trueguard does not sell SMS. Check the number, drop invalid and disposable numbers, and send the rest through Vonage as you do today.
What do I need to change in my code to move off Number Insight?
The endpoint, the authentication, the request shape, the fields you read and the error handling. For Trueguard, send POST https://api.trueguard.io/v2/phone/validation with an X-API-KEY header and the body {"phone": "+14159929960"}. One synchronous call returns every field, so you can drop an Advanced async callback handler.
Does Trueguard return roaming, reachability or caller name?
No. Trueguard has no HLR or live line test, and it returns no roaming, no caller name and no SIM swap. A valid number means it matches the numbering plan of its country.
Test your Number Insight traffic before February.
100 checks a month free, no card. Send a sample of the numbers you look up today and compare the answers with your Number Insight logs.
Get your free API keyNo credit card required.

