Offendersearch
Comparison

Offendersearch vs offenders.io

Offendersearch is built directly on all 58 official registries — every source named and individually addressable, with a lastCheckedAt on every record. That is a different product from vendors who resell a licensed extract and let it age between deliveries. Deeper fields on every record, a far more sophisticated contract, and a drop-in switch for existing offenders.io integrations.

Why teams switch

The offenders.io alternative built on live registries

Three differences do most of the deciding — each one testable before you sign, and each stated honestly (where offenders.io is stronger, the table below says so).

Freshness you can read per record

Every result carries its own lastCheckedAt, and you can add live re-verification at the source in the same call — instead of a single dataset-wide freshness claim you have to take on trust.

Sources you can name

58 official registries, each individually addressable, with per-source provenance on every response — so an incomplete search is never silently returned as an empty one.

Switching is one-way cheap

A drop-in compatibility endpoint accepts offenders.io’s exact request and response shape, so an existing integration moves by changing the base URL and key — no rewrite.

Feature by feature

Offendersearch vs offenders.io, honestly

Every row traces to a measurement we hold and will send you. Where offenders.io is stronger, the row says so.

FeatureOffendersearchoffenders.io
Source coverageThe 50 states, DC & US territories — 58 official registries, each one named and individually addressable in a single schemaA nationwide aggregate; the underlying sources are not enumerated, so a buyer cannot tell which registries answered
Field coverageA 76-field record schema, and the fields are populated — on our largest registries every measured dimension (DOB, sex, race, height, weight, eyes, hair, scars/marks, aliases, offences, images) is filled on the large majority of recordsTheir published claim is "70+ fields"; the distinct keys their API actually returns measure materially fewer, and their deepest fields come back empty on the large majority of records
Housing statusNormalized homeless / incarcerated / housed on every record, derived from whichever field each registry uses to state itNot offered as a field
Per-source provenanceEvery response names which sources answered, so an incomplete search is never silently returned as an empty oneAggregate response, no per-source status
Data freshnessContinuously updated, with per-record lastCheckedAt on every result, and optional live re-verification at the source in the same requestTheir API’s own updatedAt field routinely shows record ages of six months to over a year and a half — and it stamps a record mutation, not a re-verification
Match confidence scorematchConfidence + matchBasis on every recordNo score in their record shape
Offence detailStatute-level detail with risk level and every conviction, not just the first, normalized into one schemaVaries by jurisdiction, no normalized offence field
Verification reportsBranded PDF/HTML report with a source citation on every recordNot offered
Webhooks on async completionYes — the finished result is POSTed to your callbackNone
Price (base)$0.15 / call, dropping to $0.11 after 2,000 a month — no setup fee, no per-seat licence, no minimum, no contract$0.15–$0.20 / call (their published pricing)
Live verificationRegular is the base rate; Live re-verifies named jurisdictions at +$0.02 / source ($2.00 ceiling)No live re-verification
Switching costA drop-in compatibility endpoint accepts their request shape and returns their response envelope, so an existing integration moves without a rewriteMoving away means rewriting against a different schema
Radius searchRadius search up to 100 miles, on records carrying latitude and longitude wherever the jurisdiction publishes an addressRadius search offered

Every row above traces to a measurement we hold and will show you. We publish them as ranges rather than frozen decimals on purpose — the underlying counts move constantly, and an exact figure printed on a web page is wrong within a week. Ask us for the current run and the exact per-jurisdiction numbers; we will send them, and they are in our field reference for integrators. Where a competitor is stronger on a row, the row says so. offenders.io is a competitor and is never used as a data source.

On the freshness row specifically

How freshness is stated. Ours is the median of lastCheckedAt — the per-record currency timestamp every response carries, so you can read it off the answer rather than take our word for it. Competitor figures are scored on the only freshness field their API exposes to a paying customer. We state these results in ranges rather than exact figures because the underlying numbers move constantly, and a figure fixed into a web page stops being true quickly. Ask us for the current run — we will send you the exact per-jurisdiction numbers.

  • Their timestamp records a change, not a re-check. offenders.io’s updatedAt records when a row last changed, which is not the same as when it was last re-checked against the source. It is nonetheless the only freshness field their API exposes to a paying customer, so it is the only thing a buyer can actually measure them on — and a row whose updatedAt is years old is a row they cannot show has been re-checked since.
  • Freshness is a measured property. Freshness and coverage are two different measurements and a buyer should judge them separately. Offendersearch returns per-source status and a last-verified timestamp on every response, so freshness is something you read off the answer rather than something a vendor asserts about itself.

Switch in an afternoon

Comparisons & research

Further reading

Independent comparisons of the tools in this category — including where other vendors are the better answer.

The best sex offender APIs in 2026, compared

Five ways to search US registries programmatically, measured on coverage you can enumerate, provenance, match quality and price.

The best criminal record search APIs in 2026

Jail bookings, prison custody, court cases and warrants are four different systems. Which API you want depends on which one your question needs.

The best background check APIs in 2026

Five brands, three companies: the consolidation nobody mentions, each vendor’s real published price, and the only per-call API on the list.

More in our comparisons and research.

FAQ

Common questions

Is Offendersearch a drop-in replacement for offenders.io?

Yes. Our /v1/compat/sexoffender endpoint accepts offenders.io's exact parameters and returns their exact { offenders, page, totalPages } envelope, so you switch by changing only the base URL and API key.

How does Offendersearch pricing work?

Simple usage-based pricing: $0.15 per call, dropping to $0.11 after 2,000 calls a month. A Regular search is billed at the base rate; live re-verification adds $0.02 per completed source (capped at $2.00 a search), and each verification PDF adds $0.02. Volume/enterprise terms available — contact sales.

What does Offendersearch have that offenders.io doesn't?

A match confidence score and match basis on every result, per-source provenance so you always know which registries answered, normalized housing status, statute-level offence detail with every conviction rather than only the first, verification reports, and webhooks on async completion. Underneath all of it, the substantive difference is the data itself: the richest national dataset available, continuously updated, with a lastCheckedAt on every record — against an offering whose own updatedAt field routinely shows record ages of six months to over a year and a half, stamps a record mutation rather than a re-verification, and is the only freshness signal their API gives a customer.

How should a buyer evaluate an offender-data vendor?

On five properties, each testable before you sign. Whether every record carries its own per-source freshness stamp, or freshness is asserted as a general claim. Whether the sources are enumerable, or hidden inside a nationwide aggregate. Whether the response tells you which sources answered, so an incomplete search is never returned as a silently empty one. Whether the deep fields a vendor advertises are actually populated, which you should check by counting non-empty values on real records rather than counting keys in their documentation. And whether freshness is reported per source rather than asserted as a general claim. Run the same query against any two vendors and compare the responses directly.