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
| CheckThatPhone | Trestle | |
|---|---|---|
| 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 field | CheckThatPhone field | Notes |
|---|---|---|
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
actionreasondeactivationDateblackListsmsEligiblenanpTypenanpCarrierdipLrndipPorteddipOcndipCarrierdipCarrierTypedipCarrierSubTypegeoCountrygeoStategeoCitygeoMetrotimezone
Trestle 7 fields
is_validactivity_scorecountry_codecountry_nameline_typecarrieris_prepaid
Litigator check vs litigator scrub
| CheckThatPhone | Trestle | |
|---|---|---|
| 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.
| CheckThatPhone | Trestle | |
|---|---|---|
| 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_scoreruns 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) anddipOcnon 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_typeandlitigator_nameand setsactionto"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 andtimezone. 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:
- Trestle pricing (read October 9, 2026)
- Trestle Phone Validation API product page and FAQ (read October 9, 2026)
- Trestle Litigator Check add-on (read October 9, 2026)
- Trestle Phone Validation API documentation (read October 9, 2026 and October 10, 2026)
- Trestle knowledge base: the free API trial (read October 9, 2026)
- Trestle knowledge base: Litigator Checks (read October 9, 2026)
- Trestle knowledge base: Does Trestle offer DNC checks? (read October 9, 2026)
- Trestle knowledge base: What queries are billable? (read October 9, 2026)
- Trestle knowledge base: Developer Portal Wallet FAQ (updated July 27, 2026) (read October 9, 2026)
- Trestle knowledge base: getting started with the Developer Portal Wallet (read October 9, 2026)
- Trestle terms of service (last updated September 30, 2026) (read October 9, 2026)
- Trestle service level agreement (read October 9, 2026)
- Trestle knowledge base: What are Trestle's SLAs? (read October 9, 2026)
- Trestle knowledge base: batch upload FAQ (read October 9, 2026)
- Trestle knowledge base: Which countries' data do you have? (read October 9, 2026)
- Trestle knowledge base: how the Phone Activity Score is calculated (read October 9, 2026 and October 10, 2026)
- Trestle knowledge base: What does the carrier name mean? (read October 9, 2026)
- Trestle Spam Check add-on (read October 9, 2026)
CheckThatPhone figures come from our pricing page, API documentation and terms of service.
Related
- All comparisons and the cost at different volumes: CheckThatPhone compared
- Other options: vs Twilio Lookup, vs Abstract API, vs Numverify and vs Vonage Number Insight
- Eight vendors side by side: Phone validation API pricing in 2026