Comparison

CheckThatPhone vs Trestle: US and Canadian validation at $30 per 10,000, not $150

CheckThatPhone is a Trestle alternative for US and Canadian numbers. 10,000 validations a month cost $150 at Trestle's $0.015 a query (10,000 × $0.015) and $30 on our 10K plan. With a litigator check on every number it's $200 at Trestle (+$0.005 a query) against $60 for 20,000 credits with us. Trestle's price includes a phone activity score and a prepaid flag we don't return, and it covers 200+ countries. One CheckThatPhone lookup also includes the ported flag and routing number, a send-or-not verdict for texts, state and city, the time zone and location from your visitor's IP in the same call, which a Trestle Phone Validation request doesn't (what each includes).

Trestle also publishes a 99.95% uptime SLA and its rate limits, and sells identity data such as owner names. CheckThatPhone adds porting data, deliverability, landline-SMS lookups and free state DNC and complainer checks, which Trestle says it doesn't offer. Self-serve Trestle accounts pay from a wallet limited to $750 a month, and Trestle suggests Enterprise pricing above 18K queries a month.

As of October 9, 2026, read from Trestle's own pricing, product, documentation and knowledge-base pages. Each Trestle fact links to the page it came from. A few were read later, on October 10, 2026, and are dated where they appear. Prices change, so check the source before you commit budget. CheckThatPhone is our product. How we compare vendors.

At a glance

 CheckThatPhoneTrestle
Coverage US and Canada (NANP) only 200+ countries and territories product page countries FAQ
Price $5 a month for 1,000 lookups up to $450 for 500,000; overage $0.005 down to $0.0009 per lookup $0.015 per query, pay as you go; Enterprise custom pricing for "Usage above 18K queries per month" pricing product page
Self-serve limits Monthly plans; the 500K plan keeps working past 500,000 at $0.0009 per lookup Wallet top-ups of up to $250 at a time and $750 a month source
Free usage 500 lookups a month, hard-capped; card on file, verified with a $0 check 25 queries per product within 14 days, no credit card trial FAQ product page
Carrier Current carrier from a live carrier dip (dipCarrier, dipOcn) Carrier name, "refreshed within 15 minutes of any change" source
Line type Mobile or landline, plus carrier sub-type (IPES = VoIP) Landline, Mobile, FixedVOIP, NonFixedVOIP, Premium, TollFree, Voicemail, Other source
Ported flag and routing number dipPorted and dipLrn on every lookup No porting or routing-number field in the documented response source
Activity or reachability action, deliverable and deactivationDate (carrier deactivations in the last 45 days) activity_score, 0 to 100: 100 "means consistent activity in the last 12 months", and 0 "a disconnected number or no activity has been seen in the past year" source
How the score is built No score From "data points from publicly available records, carriers, and metadata attributes" source
Prepaid Not offered is_prepaid: "True if the phone is associated with a prepaid account." source
Location and time zone State, city, metro, timezone and tzOffset Country code and name in the documented response; no city or time zone field source
TCPA litigator Add-on, +1 credit, refreshed daily; returns litigator_type and litigator_name Add-on, +$0.005 a query, "refreshed daily"; returns a phone.is_litigator_risk flag pricing litigator page docs
State DNC and complainer checks Free add-on: 38 states plus DC, refreshed weekly (no federal DNC) "Trestle does not offer Do Not Call (DNC) checks"; its Spam Check is "a caller-reputation and risk signal, not a DNC check" DNC FAQ spam check page
Text-enabled landlines Add-on, +1 credit on landlines only Not listed on its pricing page source
Failed lookups Not charged (credits_used: 0) Every 200 response is billed, including no-match and 200-with-error responses; 4XX and 5XX are not billing FAQ wallet FAQ
List upload CSV upload in the dashboard, up to 1,000,000 rows, deduplicated Batch files of up to 10,000 records; self-serve results within six hours source
Request POST /v1/lookup, JSON body, bearer API key GET https://api.trestleiq.com/3.0/phone_intel?phone=… with an x-api-key header source

Field mapping: Trestle to CheckThatPhone

Trestle's documented Phone Validation response fields and where each one lands in a CheckThatPhone response. Every field is described in our API reference.

Trestle fieldCheckThatPhone fieldNotes
phone_number source subscriber  
is_valid source dip / dipCarrierType An invalid number shows as "invalid".
carrier source dipCarrier, dipOcn  
line_type source nanpType, dipCarrierType, dipCarrierSubType VoIP shows as IPES; we have no fixed vs non-fixed VoIP split.
activity_score source No equivalent Closest signals: action, deliverable and deactivationDate, which are a different method.
is_prepaid source No equivalent  
country_code, country_name source geoCountry  
add_ons.litigator_checks["phone.is_litigator_risk"] source litigator, litigator_type, litigator_name With litigatorFilter: true; a match also sets action to "unsubscribe".
error, warnings source error, reason A failed lookup returns credits_used: 0.

Cost at different volumes

Lookups each month at list prices, monthly billing. Trestle columns use its pay-as-you-go prices: $0.015 a query, +$0.005 with the Litigator Check. Its self-serve wallet is limited to $750 a month (wallet FAQ), so figures above that are marked Enterprise and show the list-price arithmetic, not a quote; Trestle offers custom pricing for "Usage above 18K queries per month". CheckThatPhone columns are our cheapest plan for the volume, including overage; the litigator scrub uses 2 credits a number.

Lookups a month Trestle Phone Validation CheckThatPhone Trestle + Litigator Check CheckThatPhone + litigator scrub
1,000 $15 $5 (1K plan) $20 $10 (1K plan)
10,000 $150 $30 (10K plan) $200 $60 (10K plan)
18,000 $270 $54 (10K plan) $360 $100 (100K plan)
50,000 $750 $100 (100K plan) Enterprise (list $1,000) $100 (100K plan)
100,000 Enterprise (list $1,500) $100 (100K plan) Enterprise (list $2,000) $200 (100K plan)
250,000 Enterprise (list $3,750) $250 (100K plan) Enterprise (list $5,000) $450 (500K plan)

The two are not identical lookups. Trestle's $0.015 includes its activity score and prepaid flag; ours includes the ported flag, routing number, deliverability fields, location and time zone. Compare them on your own numbers.

What one request includes

A lower price per request only compares like with like when the requests return the same data. One CheckThatPhone lookup also includes the ported flag and routing number, a send-or-not verdict for texts, state and city, the time zone and location from your visitor's IP in the same call, which a request to Trestle (Phone Validation) doesn't.

One request includes CheckThatPhone TrestlePhone Validation
Current carrier Included: Yes, live carrier dip Included: Yes source
Mobile, landline or VoIP Included: Yes, VoIP as IPES Included: Yes, fixed and non-fixed VoIP source
Ported flag and routing number Included: Yes Not included: No source
Recently disconnected Included: Yes, last 45 days Partly: Activity score (0 = disconnected or inactive a year) docs activity score FAQ
Can it take a text Included: Yes: action and reason Not included: No source
State and city Included: Yes, from the area code or the IP Not included: Country only source
Time zone Included: Yes Not included: No source
IP geolocation in the same call Included: Yes: pass ip Not included: No source

included included with a limit a separately priced package or API not in the documented request or response

Every documented field, by name

The response fields that describe the number, from each side's own reference. Not listed: copies of the number you sent, format variants, ids, status, error and price fields; on our side also deliverable, doNotSms and tzOffset, which restate other fields. The Litigator Check add-on (+$0.005) adds one more field. source read October 10, 2026

CheckThatPhone 18 fields

  • action
  • reason
  • deactivationDate
  • blackList
  • smsEligible
  • nanpType
  • nanpCarrier
  • dipLrn
  • dipPorted
  • dipOcn
  • dipCarrier
  • dipCarrierType
  • dipCarrierSubType
  • geoCountry
  • geoState
  • geoCity
  • geoMetro
  • timezone

Trestle 7 fields

  • is_valid
  • activity_score
  • country_code
  • country_name
  • line_type
  • carrier
  • is_prepaid

Litigator check vs litigator scrub

 CheckThatPhoneTrestle
Price +1 credit per lookup when enabled +$0.005 a query, "with volume discounts available" pricing litigator FAQ
Data refresh Refreshed daily "Litigation data refreshed daily from federal and state court filings" source
Scope Suspected TCPA litigators in our litigator database "TCPA, CFPB, FDCPA, and FCRA" source
Associated numbers Not published "also flags associated numbers, not just the ones already on record" source
Response litigator, plus litigator_type (litigator, plaintiff or agitator) and litigator_name when on record; action becomes "unsubscribe" phone.is_litigator_risk (true, false or null) source
Free check of a list Within the Free plan's 500 monthly lookups (2 credits a number with the scrub) "Upload up to 10,000 records free. No signup required." source

Operational terms

Commitments, limits and support, from each side's own published pages. Where a page doesn't state a term, the table says so.

 CheckThatPhoneTrestle
Minimum commitment None: a Free plan, or monthly plans from $5 that you can cancel any time from the billing page pricing terms None on self-serve: no monthly fee, pay as you go from a prepaid wallet (first load $10 to $100) product page wallet guide
Free tier or trial 500 lookups a month, hard-capped; card on file, verified with a $0 check and never charged source "25 queries per product that can be run within 14 days", no credit card trial FAQ product page
Past the plan allowance $0.005 down to $0.0009 per lookup on paid plans, on the next invoice; the Free plan stops at 500 source No plan allowance: queries are paid from the wallet, which takes up to $250 at a time and $750 a month source
Failed or invalid lookups Not charged: a failed lookup returns credits_used: 0, and a malformed number returns HTTP 400 pricing docs Billed on every 200 response, "regardless of whether or not the request found a match", including 200 responses with an error; 4XX and 5XX responses are not billed billing FAQ wallet FAQ
API access Every plan, Free included: POST /v1/lookup with a bearer API key, plus CSV upload in the dashboard docs bulk GET /3.0/phone_intel with an x-api-key header; batch files of up to 10,000 records docs batch FAQ
Rate limit Not a fixed published number: each account's limit grows with its billing history source 10 queries per second self-serve; 32 on Enterprise ("custom options available") source
Uptime SLA No contractual uptime SLA in our standard terms; enterprise agreements on request source Published: a "Monthly Uptime Percentage" of "at least 99.95%", with service credits source
Support Email (hello@checkthatphone.com) and the contact form source Self-serve: a monitored support email. Enterprise: "24/7 support through our service tiers" and dedicated technical account management SLA FAQ pricing
Unused credits Not published Its pages disagree: the Wallet FAQ says funds "do not expire", while its terms (last updated September 30, 2026) say wallet funds "will automatically expire after one year if not used" wallet FAQ terms
High volume The 500K plan keeps working past 500,000 at $0.0009 per lookup; a quote form for higher volume source Enterprise custom pricing for "Usage above 18K queries per month" (its litigator page says above 10K) product page litigator page

Not published means it isn't stated on the Trestle pages listed under Sources when we read them. It doesn't mean Trestle doesn't offer it. Our column follows the same rule, using only our own pricing, docs, terms and contact pages.

Which one to choose

Choose Trestle if…

  • Your numbers are outside the US and Canada. Trestle covers 200+ countries and territories; we cover two. product page countries FAQ
  • You want an activity score. activity_score runs from 0 to 100, where 0 "means a disconnected number or no activity has been seen in the past year". We have no equivalent score. source
  • You need prepaid detection or finer line types: is_prepaid, and eight line types including fixed and non-fixed VoIP. source
  • You want a wider litigator check: it tracks "TCPA, CFPB, FDCPA, and FCRA" litigation and "also flags associated numbers". litigator page litigator FAQ
  • You need identity data: its Reverse Phone API ($0.07 a query) returns owner names and current addresses, and a Spam Check add-on flags high-risk calling activity. pricing spam check page
  • You want a published SLA and rate limit: 99.95% monthly uptime with service credits, and 10 queries per second self-serve. SLA pricing
  • You want no monthly fee, or to test first with its no-card trial or a free litigator assessment of up to 10,000 records. product page trial FAQ litigator page

Choose CheckThatPhone if…

  • You want more in one call: the ported flag and routing number, a send-or-not verdict for texts, state and city, the time zone and location from your visitor's IP in the same call come with every lookup (compare).
  • Price is the deciding factor. 10,000 lookups a month cost $30 on our 10K plan, against $150 at $0.015 a query. Trestle's price includes its activity score, which we don't have.
  • You need porting data: dipPorted, the routing number (dipLrn) and dipOcn on every lookup. See the LRN lookup API.
  • You need DNC screening: the free state DNC and complainer checks cover 38 states plus DC (not the National DNC Registry).
  • You want the litigator's type and name: the TCPA litigator scrub (+1 credit) returns litigator_type and litigator_name and sets action to "unsubscribe".
  • You text landlines. About 7% of landlines we check are SMS-capable, and the landline SMS lookup finds them.
  • You want a send-or-not answer and location: action, deliverable, deactivationDate, plus state, city and timezone. See the disconnected number check.
  • You clean big lists: CSV upload up to 1,000,000 rows, each unique number billed once.
  • You need more than $750 a month self-serve: our 500K plan keeps working past 500,000 lookups at $0.0009 each, and failed lookups are never billed.

Example request and response

A CheckThatPhone lookup with the TCPA litigator scrub switched on:

curl --request POST \
  --url 'https://api.checkthatphone.com/v1/lookup' \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{"phone": "206-555-0164", "litigatorFilter": true}'

An illustrative response (a fictional 555 number; field names and formats match the live API). The fields with no counterpart in Trestle's documented response are the carrier dip fields (dipLrn, dipPorted, dipOcn), action, deliverable, geoState, geoCity and timezone:

{
  "success": true,
  "credits_used": 2,
  "data": {
    "subscriber": "2065550164",
    "optDate": "2026-10-09T17:45:03.902Z",
    "action": "send",
    "deliverable": "true",
    "reason": "",
    "nanpType": "mobile",
    "blackList": "false",
    "dip": "success",
    "dipLrn": "2065550164",
    "dipPorted": "false",
    "dipOcn": "6010",
    "dipCarrier": "AT&T",
    "dipCarrierSubType": "WIRELESS",
    "dipCarrierType": "mobile",
    "litigator": "false",
    "geoState": "WA",
    "geoCity": "seattle",
    "geoCountry": "US",
    "geoSource": "area-code",
    "timezone": "America/Los_Angeles",
    "tzOffset": 8,
    "error": "false"
  }
}

CheckThatPhone vs Trestle: common questions

Is CheckThatPhone a good Trestle alternative?

For US and Canadian numbers where porting data, deliverability and DNC screening matter, yes, and it costs less at every volume in the cost table on this page. For numbers in other countries, an activity score, prepaid detection or identity data such as owner names, Trestle is the better fit.

Is CheckThatPhone cheaper than Trestle?

At list prices, yes: 10,000 lookups a month cost $30 on our 10K plan against $150 at Trestle's $0.015 a query, or $60 against $200 with a litigator check on every number. Trestle's price includes its activity score and prepaid flag, which we don't return, and Trestle offers custom Enterprise pricing above 18K queries a month.

Does Trestle offer DNC checks?

Trestle's knowledge base says: "Trestle does not offer Do Not Call (DNC) checks, and we don't currently have plans to add them." CheckThatPhone's free state DNC and complainer checks cover 38 states plus DC (not CO, FL, IN, LA, MA, MS, MO, OK, PA, TN, TX or WY), and they are not the National DNC Registry.

How do the litigator checks differ?

Trestle's add-on is +$0.005 a query, tracks "TCPA, CFPB, FDCPA, and FCRA" litigation, "also flags associated numbers" and returns one phone.is_litigator_risk flag. Our TCPA litigator scrub is +1 credit, refreshed daily, and returns litigator_type and litigator_name when on record, setting action to "unsubscribe".

Do Trestle wallet funds expire?

Trestle's pages disagree. Its Wallet FAQ (updated July 27, 2026) says funds "do not expire"; its terms of service (last updated September 30, 2026) say wallet funds "will automatically expire after one year if not used". Ask Trestle which applies to your account.

What changes in the integration?

Trestle is a GET to https://api.trestleiq.com/3.0/phone_intel with the number in the query string and an x-api-key header. CheckThatPhone is a POST to https://api.checkthatphone.com/v1/lookup with a JSON body and a bearer API key, and returns flat fields such as dipCarrier and action, with booleans as strings ("true" / "false"). Official SDKs: npm install checkthatphone and pip install checkthatphone.

Sources

Trestle pages, with the date we read each one:

CheckThatPhone figures come from our pricing page, API documentation and terms of service.

Related

Try it on your list

Free tier: 500 lookups per month, hard-capped. Paid plans start at $5/month.