Route every lead the moment it arrives. One lookup returns the line type after porting, whether a carrier deactivated the number recently, and the time zone, so mobiles get a text-first cadence, landlines get a call, and dead numbers never reach a rep.
Built from fields in the lookup response. The litigator check costs 1 extra credit.
1B+requests served by our validation network
~32%of numbers we look up are landline or VoIP
~7%of landlines we check can take a text
Where lead routing wastes rep time
Lead validation isn't a fraud problem. It's a routing problem: given what the lookup just returned, which channel, which rep and which urgency tier should this lead get?
“Reps keep texting landlines.”
About 32% of the numbers we look up are landline or VoIP, and most landlines can't take a text. nanpType and dipCarrierType give you the channel before the lead is assigned.
Source: CheckThatPhone lookup data
nanpTypedipCarrierType
“A rep spent the morning dialing dead numbers.”
deactivationDate flags a carrier deactivation in the last 45 days, and reason carries the carrier id and date. Drop those before assignment.
deactivationDatereason
“A 9 a.m. Eastern lead went to a Pacific rep at 6 a.m.”
Round-robin within a time zone, not across it. timezone comes from the lead's IP when you pass one, otherwise from the area code.
timezonetzOffsetgeoSource
“Which of these leads are VoIP?”
dipCarrierSubType "IPES" marks an IP-enabled (VoIP) line, from a live carrier dip. It can still be a real business line, so treat it as a routing input, not a reject.
Every inbound lead (form submit, demo request, ad-platform lead) reaches your lead-routing service. Call the API there, attach the fields to the lead record and route in one pass. Speed-to-lead is the game, so don't wait for a nightly job.
Step 2
Score into a tier
Fast laneNormalCall-back queueDead
Fast lane: an active mobile, clean, with a rep on shift in that time zone. Normal: anything else reachable. Call-back queue: landlines and VoIP. Dead: deactivated or flagged, no rep contact. Tune the tiers from your own conversion data.
Step 3
Batch-check outbound lists
For purchased or exported lists, upload the CSV before it reaches the dialer: drop deactivated numbers and litigators, tag landlines so the cadence is right, and split by time zone so each rep gets a list for their working hours.
Routing rules, field by field
If the response shows
Field
Do this
Mobile, active
nanpType = mobileaction = send
Text-first cadence, then call. Queue normally.
Landline
nanpTypedipCarrierType
Call first. Ignore action: "unsubscribe", which only says it can't take a text. The landline SMS check (+1 credit) finds the ones that can.
VoIP
dipCarrierSubType = IPES
Call-back queue or email first, per your playbook.
Deactivated by the carrier recently
deactivationDatereason
Drop before assignment. Re-check if the lead submits again.
Blacklisted, or a known TCPA litigator
blackListlitigator
Keep it out of the rep queue. litigator needs litigatorFilter: true (+1 credit).
Time zone
timezonetzOffsetgeoSource
Assign to a rep on shift in that zone. From the IP if you pass one, otherwise the area code.
Carrier and porting
dipCarrierdipPorted
Attach to the lead record for reporting.
A mobile lead, routed
A demo request submitted with the visitor's IP. It is an active mobile on a wireless carrier, so it goes text-first, to a rep on Mountain time: with an ip passed, location and time zone come from the IP (geoSource: "ip"), not the area code. ipResult only says the IP was valid.
Calling hours for telephone solicitations: 8 a.m. to 9 p.m., local time at the called party's location · 47 CFR 64.1200(c)(1)
Your own do-not-call list, honored within 10 business days · 47 CFR 64.1200(d)(3)
Fit and intent: a reachable mobile tells you the channel is live, not that the person matches your ICP or is in-market
Not legal advice.
Coverage and limits
No subscriber names, company or owner details: this is not enrichment.
deactivationDate: data refreshed daily, with a 1 to 7 day lag, and entries expire after 45 days. It is not a reassigned-number check.
Location and time zone come from the IP when you pass one, otherwise from the area code, which is where the number was issued, not necessarily where the lead is.
US and Canadian numbers.
Sales lead validation: common questions
How do we use this to decide between SMS and a phone call?
Branch on nanpType and dipCarrierType. A mobile can take a text, so text-first works. A landline usually can't, so call it, unless the landline SMS check returns smsEligible: "true". VoIP shows up as dipCarrierSubType "IPES".
Is there a way to skip dead leads before they hit our SDR queue?
Yes. Drop leads with a deactivationDate, with blackList: "true", or, with the litigator scrub on, with litigator: "true". Don't gate on deliverable alone if your reps call: it is "false" for every landline, because it is a verdict for text lists.
Can we use this on inbound demo-request leads or only outbound lists?
Both. For inbound, call it when the form is submitted, before round-robin assignment: you only get one shot at a demo request. For outbound, upload the list as a CSV before it reaches the dialer.
Is this lead enrichment?
No. Phone validation isn't a substitute for firmographic enrichment or intent data: a reachable mobile tells you the channel is live, not that the person matches your ICP. Run the cheap check first, then spend on enrichment.
Which time zone does it use?
If you pass the lead's IP, timezone comes from the IP; otherwise it is the area code's zone, which is where the number was issued, not necessarily where the lead lives now.