CarrierOk

Chameleon carrier detection: catch the clean new DOT hiding a revoked record.

A chameleon carrier shuts down after violations and re-registers under a new DOT number: same people, same trucks, a clean record. CarrierOk links the new registration to the old one through shared phones, addresses, emails, EINs, and equipment, and flags it on every profile lookup. In GAO’s landmark study, carriers with chameleon attributes were three times as likely to be involved in severe crashes.

The short answer

A chameleon carrier is an operator that loses its authority and registers again under a new DOT number, keeping the same trucks, people and yard. Nothing on the new record looks wrong, because the record is new. CarrierOk checks five identifying attributes against every other entity in the dataset and names each match.

The five
Phone, physical address, email, EIN and DUNS. Each is checked against every other registrant, and each match is returned as its own named flag.
Named, not scored
The response says which attribute matched rather than folding it into one number, because a shared yard and a shared EIN call for different responses.
Why the new record looks clean
A fresh DOT number has no inspections, no crashes and no revocation history. The link back to the old entity is the only thing that shows.
Where it shows up
In the API as risk_factors flags, on the carrier profile in the app, and in monitoring when a match appears on a carrier you watch.
Evaluating it
A free sandbox key is issued at signup with no card, so the flags can be checked against a carrier you already know.
How It Works

A new DOT number does not erase a bad safety record.

The fraud is simple. Catching it requires comparing identity data across millions of records, because the one thing the new registration cannot hide is who it shares a phone, an address, or a truck with.

01

Carrier accumulates violations

A carrier's ISS climbs to 91. Three BASICs are in alert territory. FMCSA initiates a safety audit. The operator sees the writing on the wall.

02

Authority revoked. Re-register under new DOT.

The operator surrenders the DOT number, or lets it be revoked. Months later, a new LLC registers with FMCSA. New name. New DOT. Same phone number. Same address. Same people.

03

Clean to every standard check

FMCSA's records show a new entrant with zero violations and no history, and most carrier lookup tools see the same thing. CarrierOk's cross-entity graph links the registrations, flags the match, and names the prior entity in the response.

The scale of the problem is documented: GAO found 1,136 new applicants with chameleon attributes in 2010, up from 759 in 2005, and 18 percent of them went on to be involved in severe crashes, versus 6 percent of other new applicants (GAO-12-364).

API Reference

One call. The match, the counts, and the linked entities.

Pass a DOT number to GET /v2/profile. The shared-identity signals arrive in risk_factors, and the response also names how many entities share each attribute and who they are, so your workflow can block, review, or clear with the evidence attached.

api.carrierok.com
Request
# Chameleon signals ship inside the standard profile response
curl "https://api.carrierok.com/v2/profile?dot_number=4218974" \
  -H "Authorization: Bearer YOUR_API_KEY"

# Look up by MC docket number
curl "https://api.carrierok.com/v2/profile?docket_number=1481632" \
  -H "Authorization: Bearer YOUR_API_KEY"

# Pivot the graph yourself: search by shared phone, address, EIN, or email
curl "https://api.carrierok.com/v2/profile?phone=7135550182" \
  -H "Authorization: Bearer YOUR_API_KEY"
Response200 OK
{
  "total_count": 1,
  "items": [{
    "dot_number": "4218974",
    "legal_name": "LONE STAR EXPRESS TRANSPORT LLC",
    "risk_score": "High",
    "risk_score_probability": 0.94,
    "risk_factors": [{
      "indicator_network_graph_phone": true,
      "indicator_network_graph_address": true,
      "indicator_network_graph_email": true,
      "indicator_network_graph_ein": false,
      "indicator_network_graph_duns": false,
      "high_shared_power_units": true,
      "consecutive_authority": false,
      "revocation_last_thirtysix_mo": false,
      "sixty_mo_in_business": false,
      "...": "50+ named signals"
    }],
    "network_graph_count_telephone_numbers": 1,
    "network_graph_count_physical_address": 1,
    "network_graph_count_email_address": 1,
    "network_graph_equipment_ext": [{
      "dot_number": "2481067",
      "legal_name": "RED ROCK HAULING LLC",
      "dockets": "MC917403"
    }],
    "authority_common": "Active",
    "total_power_units": "8",
    "...": "300+ fields per record; full list in the data dictionary"
  }]
}
Detection Signals

Six ways a re-registration gives itself away.

Five shared-identity signals plus shared equipment, checked on every profile. Your team sees exactly which attributes matched, not just a score.

Shared phone number

Contact link
indicator_network_graph_phone

Landline, cell, and fax numbers, standardized and matched across every entity in the graph, current and historical values included.

Shared address

Contact link
indicator_network_graph_address

Physical and mailing addresses, standardized by street and ZIP. Catches re-registrations that change the name but not the location.

Shared email

Contact link
indicator_network_graph_email

Registration and contact email. Operators re-registering under a new DOT number frequently reuse the same inbox.

Shared EIN

Entity link
indicator_network_graph_ein

The Employer Identification Number ties both registrations to the same legal entity behind the operation.

Shared DUNS number

Entity link
indicator_network_graph_duns

The DUNS number ties both operations to the same underlying business record.

Shared equipment

Equipment link
high_shared_power_units

Fires when 60 percent or more of the trucks seen in this carrier's inspections have also been seen under other DOT numbers. The connected entities are named in network_graph_equipment_ext.

The Evidence

You get the link, not just a flag.

A flag you cannot inspect is hard to act on. When CarrierOk detects a shared identity, the response shows the work: which attributes matched, how many entities share them, and who those entities are, name and DOT number included.

That is what turns a flag into a decision. A reviewer pulls up the prior operation, sees the revocation, and declines with the evidence in the file.

indicator_network_graph_*

5 booleans to route on: phone, address, email, EIN, and DUNS. Any shared attribute flips its flag in risk_factors.

network_graph_count_*

How many other entities share each attribute, with current and historical values both counted.

network_graph_equipment_ext

The connected entities by name, DOT number, and docket. The same trucks seen under other authorities, listed, so a reviewer can pull up the prior operation's record.

Use Cases

Every team that approves carriers needs this.

Chameleon detection matters anywhere a carrier’s approval rests on its FMCSA record, because that record can be reset through re-registration.

Freight brokers & 3PLs

Freight Broker Carrier Approval

A chameleon carrier accepts loads on a clean new DOT number with no visible safety history. Without cross-entity detection, you would approve them. With CarrierOk, the shared-identity signals surface in your onboarding flow so you can block before you tender.

indicator_network_graph_phoneindicator_network_graph_addressrisk_factors

Freight factoring companies

Factoring Company Fraud Prevention

Factoring a chameleon carrier means funding invoices for an operation with unresolved liabilities from its prior entity: charge-backs, disputes, and fraud exposure. Screen every new carrier application for shared-identity signals before advancing funds.

indicator_network_graph_einnetwork_graph_equipment_extrisk_score

Commercial auto MGAs & underwriters

Insurance Underwriting Screen

A chameleon carrier presents as a clean new entrant: no loss history, no BASIC alerts, no red flags in the standard record. The shared address, phone, or EIN tying it to a revoked prior operation is invisible without cross-entity analysis. CarrierOk flags the match and names the prior entity.

indicator_network_graph_addressnetwork_graph_count_physical_addressrisk_score_probability

Transportation management platforms

TMS Automated Carrier Screen

Embed chameleon screening into carrier onboarding. Corroborated matches are blocked automatically; single matches route to review with the matched attributes and linked entities visible to the reviewer. Audit log every decision.

indicator_network_graph_dunshigh_shared_power_unitsrisk_factors

Chameleon Carrier Detection: Frequently Asked Questions

CarrierOk is a carrier intelligence API. It consolidates the FMCSA record on any motor carrier or broker and adds the scoring FMCSA does not publish: all 7 BASIC percentiles, a computed ISS score, 50+ named risk signals, and policy-level insurance history, with monitoring that reports changes the same day. The same record is delivered however you consume it: a REST API, the web app, a Chrome extension, or bulk files.
A chameleon carrier is a motor carrier that has been shut down or had its authority revoked, usually for safety violations, and then re-registers under a new DOT number to keep operating with a clean record. The new entity carries the same operational risk while appearing compliant to anyone checking the standard FMCSA record.
CarrierOk standardizes every phone number, address, email, EIN, and DUNS number ever filed by every carrier, current and historical, and connects entities that share them across every registrant in the dataset. A new DOT reusing the old operation's phone or address links to the prior entity the moment it registers, even if the prior entity is long revoked. Shared equipment is a second net: when most of the trucks seen in a carrier's inspections have also been seen under other DOT numbers, high_shared_power_units fires and the connected entities are named.
Inside the standard GET /v2/profile response. The risk_factors array carries the 5 shared-identity booleans (indicator_network_graph_phone, _address, _email, _ein, _duns) plus high_shared_power_units for shared equipment. The response also carries the network_graph_count_* fields (how many entities share each attribute) and network_graph_equipment_ext (the linked entities by name, DOT number, and docket). There is no separate chameleon endpoint; every profile lookup includes the full set.
You cannot look up a prior DOT number if you do not know it exists. A new registration appears as a completely separate entity in FMCSA's records, with no cross-reference to the prior operation. Finding the link requires comparing identity data across the entire carrier population, which is exactly what the cross-entity graph does.
In its 2012 study (GAO-12-364), the Government Accountability Office found 1,136 new applicants with chameleon attributes in 2010, up from 759 in 2005, and found that FMCSA's own vetting program covered only passenger and household-goods carriers, about 2 percent of new applicants. The same study found 18 percent of chameleon-attribute applicants were involved in severe crashes, versus 6 percent of other new applicants.
Yes. Fleets under common ownership, family businesses, and carriers using the same registered agent or office suite can legitimately share attributes. That is why the response shows which attribute matched and who it matched, so your policy can tell a shared back office from a re-registration. Most teams treat an entity-level match (EIN or DUNS) or a contact match corroborated by shared equipment as decisive, and route single contact matches to manual review.
Yes. Register the carriers in your approved network with POST /v2/monitoring/add (a JSON body of profile_ids), then poll GET /v2/monitoring/list?view_changes_risk=true to pull watched carriers whose risk signals changed since your last check. The CarrierOk platform also logs every change to your Monitoring feed the same day.
Yes. The shared-identity signals, match counts, and linked entities are part of every profile lookup; there is no separate charge or premium tier. API billing is pay-as-you-go: a free sandbox to evaluate, then a $50 activation applied as $50 of API credit, with usage-based billing after that, priced per unique carrier per month, not per call.
Most teams block automatically on a corroborated pattern: two or more shared attributes, or a shared attribute plus shared equipment. A single contact match without supporting context routes to manual review, with the matched attribute and the linked entities visible to the reviewer. Because the response names exactly what matched and who, the decision is policy-consistent and the file carries its evidence.

Stop approving chameleon carriers.

The match, the counts, and the linked entities on every profile lookup. Free sandbox to evaluate; full profiles are priced per unique carrier per month, not per call.