How to Evaluate Phone Intelligence APIs for Fraud Risk (Before You Send an OTP)

The moment a user taps “send code,” you’ve already made a decision. You’ve decided that the phone number is worth spending money on, worth trusting as a second security measure, and worth treating as a real person’s route to their account. Most teams make that decision blind. 

That’s a problem. A One-Time Password/Passcode (OTP) is an inefficient fraud control method on its own. It confirms that someone can receive a message at the number, but it doesn’t confirm that:

  1. The number belongs to the person claiming it.
  2. The number is a stable line rather than a disposable one.
  3. It hasn’t been recycled to a new subscriber since it was last associated with the account. 

Risk teams usually learn the above after the risky or bot-driven signups clear verification, or the account recovery flow gets hijacked. The most useful checkpoint sits earlier in the workflow by screening the number before the passcode ever leaves your system.

Fraud Risk Markers for OTP

Plenty of vendors now sell some version of that pre-send bot risk assessment check, but they’re not all equivalent. Here’s what actually matters when you’re evaluating them:

1. How Granular Is Their Line Type?

Line type is the first signal most teams reach for, and the one most often used incorrectly. Knowing a mobile number from a non-fixed VoIP number is a genuinely useful datapoint. Non-fixed VoIPs are cheap, provisionable in bulk, and disproportionately represented in bot-driven signup abuse. Fixed VoIP, by contrast, is often just an office or business phone system.

Treating VoIP as a synonym for fraud is a mistake. Lots of legitimate people use VoIP as their primary number, and blanket blocking these numbers will cost you real customers. The best phone number verification APIs for fraud prevention will give you the granularity to distinguish fixed- from non-fixed VoIP, as well as context like carrier, prefix, and portability history to make a balanced decision. 

2. Is the Number Active, or Just Valid?

A phone number can pass format validation (match a valid North American Numbering Plan Area and Central Office Exchange (NPA-NXX) combination) and still be completely unreachable. Sending an OTP to a disconnected number burns messaging spend and will never lead to a conversion. 

Ask whether the vendor offers any activity-level insights. This matters for the fraud use case as well as teams running outbound programs, appointment reminders, or reengagement campaigns. For example, our Phone Activity Score (0-100) indicates whether a number is connected and actively used, not just that it’s syntactically valid. For a pre-OTP check, the distinction is sending a passcode with confidence versus sending one to a phone number nobody has answered in months. 

3. What Is Their Score Telling You?

Reputable providers will return a score. Fewer get granular on what it’s actually telling you. Before you build logic around it, ask these three questions:

  1. What is it predicting? A score trained on “Will this message deliver?” measures something different than the one trained on “Does this number belong to the identity provided?” Both are legitimate, but only one helps with account takeover.
  2. How fresh is it? A score calculated in real-time against current identity data (like our Identity Score) behaves very differently than one refreshed on a monthly basis. 
  3. What happens when the data is lacking? A provider should distinguish between “we found risk” and “we couldn’t find enough to say.” Collapsing both into a low numerical score pushes you towards blocking legitimate users with light digital footprints.

Identity Scores, returned in Decision Signals API, is designed as a real-time measure of how strongly a set of contact details holds together. The score is returned alongside the signals that produced it rather than in place of them. You can see exactly what contributes to the composite score or act on the score alone. 

4. Does the Identity Actually Line Up?

Line type and activity will tell you about the phone, but they tell you nothing about whether the person behind it is who they claim to be. Identity linkage is what helps determine if the phone number, name, and address provided actually match.

These matches catch the risk that contactability alone never will: a real, active, deliverable mobile number with no genuine connection to the identity attached to it. Trestle’s Decision Signals API is purpose-built for this. It verifies and cross-checks that the name, phone number, and addresses belong together and returns an Identity Score informed by the supporting signals. 

5. Is It Fast Enough to Run Inline?

A pre-OTP check runs inline. If it adds one second to your sign-up flow, that’s reason enough to remove it no matter how good the data is. Ask for p95 and p99 response times rather than averages, and ask what happens on timeout. Then, test it under your own concurrency rather than the vendor’s. 

6. Can You Test It Before You Commit?

Don’t evaluate on documentation alone. Pull a few thousand records from your own traffic (ideally with known outcomes that include fraud, confirmed good users, and some ambiguous records) and run them through each prospective phone verification vendor. Measure how each one scores your known-bad set, how many known-good users each would have blocked, and how much of your sample returns insufficient data.

We built Decision Signals API to hold up under testing, which is why we return the signals behind every result instead of asking you to trust our aggregated score alone. Fraud screening before an OTP means more than just adding another vendor to the stack, you must optimize the single decision of “send” or “don’t send” with better information than you had before.

Learn more about Decision Signals API or check out Trestle’s API documentation.

Frequently Asked Questions

How do you compare phone intelligence APIs for line type and fraud risk before sending an OTP?

Evaluate them on six core things: 

  1. How granular their line type data is.
  2. Whether they report activity insights instead of just valid formatting.
  3. What their score actually predicts.
  4. Whether the identity is consistent.
  5. If it’s fast enough to run inline.
  6. If they allow you to test before you commit.

Can you check whether a mobile number is active before sending an OTP?

Yes. Phone Activity Score uses carrier signals, line type metadata, and Trestle’s own proprietary network to determine a number’s amount of activity before you send. This is different from format validation, which only confirms the number is structured correctly. 

What should you look for in a phone verification API for fraud prevention?

Look for signals you can act on. A single aggregated score isn’t enough; you need visibility into the underlying attributes so you can tune the thresholds to your flow and explain a decision after the fact. Also, confirm how the provider handles data that’s lacking, single grouping “no data found” into “high risk” can block legitimate users. 

Which contact verification APIs return a confidence score and reason codes? 

Decision Signals API returns an Identity Score along with the signals that produced it, so you can act on the composite score or write logic against the individual attributes. When evaluating any vendor, ask whether the reason codes distinguish between meaningfully different findings, such as a non-fixed VoIP number vs. a name mismatch. 

Should you block all VoIP numbers to prevent fraud?

No. Non-fixed VoIP numbers are overrepresented in bot-driven signup abuse, but millions of legitimate people use VoIP as a primary number. The best approach is to distinguish fixed- from non-fixed VoIP and weigh line type alongside activity signals and identity linkage, rather than treating it as a standalone verdict. 

Will a pre-OTP check slow down signup?

It shouldn’t, but you have to verify it. Ask for p95 and p99 response times rather than averages, and test it under your own concurrency conditions. Also, confirm what happens on timeout.