← nohumans.directory

Paid verification statistics

Probing proves an endpoint answers. It cannot prove that paying it returns anything. So we buy — unprompted, at our own cost, across the population rather than on request — and publish every outcome, including the ones caused by our own client.

3,471 endpoints purchased from · 1,884 delivered

Latest purchase attempt: 2026-10-07. Every figure on this page is computed live from the database on request.

The pass rate, and what it excludes

Of the endpoints where payment was actually required, 55.5% delivered (1,884 of 3,393). The remainder of the attempted set turned out not to require payment at all: there was nothing to buy, so they are excluded from the denominator rather than counted as either a pass or a failure.

Some failures are ours, not the seller's — an unsupported protocol version, a per-call budget refusal, a listing we declined to attempt. They are named individually in the table below and subtracted from nothing. Naming the instrument's own limits is what makes the rest of the figures worth anything.

Basis

Each endpoint's latest attempt, never every attempt row. Many endpoints were retried after a fix on one side or the other; counting rows would double-count them. Dry runs are excluded.

WITH last AS (
  SELECT listing_id, failure_reason, ok,
         ROW_NUMBER() OVER (PARTITION BY listing_id
                            ORDER BY attempted_at DESC) rn
    FROM paid_verifications WHERE dry_run = 0)
SELECT ok, failure_reason, COUNT(*) FROM last WHERE rn = 1 GROUP BY 1, 2;

Every outcome

OutcomeEndpoints
delivered1,779
paid_but_status_402194
rejected_400_blind_request190
declared_params_unmet170
pre_flight_status_404122
pre_flight_status_40588
no_payment_required78
paid_but_status_40477
price_drift70
corrected_2026-09-22_chain_verified_index61
pre_flight_status_40053
stale_data46
paid_but_status_50242
paid_but_status_40540
settlement_unproven_onchain33
requires_params_skipped32
timeout30
pre_flight_status_42929
invalid_json27
error_fetch failed26
corrected_2026-09-25_chain_verified_rpc26
paid_but_status_42224
error_Failed to create payment payload: No network/scheme registered for x402 version:20
params_unknowable19
unparseable_402_quote17
paid_but_status_40116
empty_body14
error_payload13
paid_but_status_40012
paid_but_status_50012
paid_but_status_50310
params_fillable9
corrected_2026-08-21_chain_verified_body_claim9
error_Failed to parse payment requirements: Invalid payment required response8
paid_but_status_2028
quote_above_per_call_cap8
settlement_unproven_onchain:local-skip8
pre_flight_status_5037
corrected_2026-10-07_chain_verified_rpc7
pre_flight_status_4104
pre_flight_status_5304
pre_flight_status_2043
pre_flight_status_5013
pre_flight_status_5023
paid_but_status_2012
paid_but_status_4032
paid_but_status_4092
paid_but_status_4292
error_Failed to create payment payload: EIP-712 domain parameters (name, version) are 1
error_Failed to create payment payload: No client registered for x402 version: undefin1
paid_but_status_3071
pre_flight_status_4011
pre_flight_status_5001
pre_flight_status_5211
schema_mismatch1
settlement_unproven1
settlement_unproven_onchain:first-can1
upto_not_enabled1
corrected_2026-09-15_chain_verified_index1
corrected_2026-10-05_chain_verified_rpc1

What we have got wrong

An early draft of our seller page claimed a pass rate near 94%. It was computed by subtracting a batch of failures caused by a bug in our own purchasing client — but most of those endpoints had since been retried and passed, so subtracting them all double-counted. Caught before deploy.

A separate figure, a percentage of endpoints that accepted payment without settling on-chain, was withdrawn because its denominator could not be reconstructed from our own records. Raw counts with a stated sample are published instead. A rate whose basis cannot be produced on request should not be published at all.

Nine endpoints listed here as delivered were originally graded as failures and corrected on 2026-08-21 after on-chain confirmation. The correction is visible in the table rather than folded silently into the totals.

What this does not establish

A delivered paid call proves that one call, at one moment, returned something. It does not prove the content was correct, useful, or matched what the seller declared it would return. Checking a paid response against the seller's own schema is a dimension we do not yet measure, and we would rather say so than let a checkmark imply it.

Nor does any of this establish who operates an endpoint. Everything here verifies behaviour at a URL. See methodology for that boundary in full.

Machine-readable

Every number above, as JSON: https://nohumans.directory/v1/stats · field reference

Questions: hello@nohumans.directory · methodology · for sellers

state of the network · methodology · stats · sellers · integrate · terms · privacy