How we score reliability

In plain terms: every service in the catalog gets a single 0–100 reliability score. We build it from things we measure ourselves — is it up, is it fast, is it served securely, did the operator say what it does, and whether real on-chain payments actually land on its wallet. The score is a weighted average of those, with being up counting the most. Nothing here is pay-to-play, and down or undocumented services are still listed and scored — just poorly.

Every catalogued endpoint gets two 0-100 scores, because buyers ask two different questions. RELIABILITY -- does it work? -- comes from our own unpaid probes plus what the operator discloses. ADOPTION -- does anyone actually pay it? -- comes from settlement traffic our indexer observes on-chain. The composite that surfaces rank by is a blend of the two, so an endpoint that is merely up no longer outranks one that is genuinely used. Down endpoints, undescribed endpoints and unpaid endpoints are all kept in the catalog and scored, just poorly; only manually retired or reported endpoints are hidden.

The composite

The single ranking number, blended from the two scores above. When adoption is unobservable the blend substitutes the catalog's median observed adoption, so an endpoint is neither rewarded nor punished for a blind spot that is ours rather than theirs -- dropping the term instead would renormalize its reliability upward and float every unwatchable rail to the top.

Dimension Weight

Weights sum to 100%. If a dimension has never been measured for an endpoint, its weight is dropped and the rest are renormalized, so the composite always averages the dimensions we actually have.

The dimensions

Availability

Was it actually up? The share of our probes that reached it.

Fraction of probes that succeeded over the trailing window, as a percentage. A down endpoint trends to 0.

Window:
last 30 days
Source:
daily uptime rollup (endpoint_uptime_daily)

Latency

How fast does it answer when it is up? Faster is better.

Median (p50) response time of successful probes over the trailing window, mapped to 0-100: fast_ms and below score 100, slow_ms and above score 0, linear between.

Window:
last 7 days
Thresholds:
≤300ms scores 100, ≥3000ms scores 0

Security

Does it serve over working TLS (https)?

Fraction of probes served over working TLS (https), as a percentage.

Window:
last 7 days

Transparency

Did the operator disclose what it does — a description, a schema, an identity?

Disclosure completeness out of 100: points for a seller description, a published response schema, how much of the operator identity is resolvable from public records (company, jurisdiction, hosting provenance), and whether the operator has verified itself.

Points:
description 30, operator claimed 25, operator company 8, operator hosting 6, operator jurisdiction 6, response schema 25

Activity

Is anyone actually paying it? Settled on-chain payments to its payout wallet — transactions, volume, and distinct paying wallets.

Observed on-chain payment adoption: settled transactions, settled volume, and distinct paying wallets, each log-scaled to 0-100 and blended. Payments are RECENCY-WEIGHTED -- every day of history counts half as much as one half_life_days more recent -- so an endpoint being paid today outranks one that stopped a month ago, and no score jumps when a busy day falls off a window edge. Transactions and volume are rescaled so a steadily-paid endpoint reads the same as its flat window_days total; distinct payers are counted once each, discounted by how long ago that payer last paid, so the total never exceeds the true number of paying wallets. Measured per payout WALLET and split evenly across the endpoints sharing that wallet (a settlement cannot be attributed to one endpoint when several share the wallet); distinct payers are taken as the max across the endpoint's wallets. Not measured (weight dropped, never zero) when we observed no settlement to the endpoint's wallet -- our indexer only sees the chains and facilitators it watches, so absence of evidence is not evidence of absence.

Window:
last 30 days
Blend:
paying wallets 30%, transactions 40%, volume 30%
Log scale:
paying wallets 33.333333333333336, transactions 25, volume usd 20

Confidence

Reported alongside the score (not folded into it): saturates to 1.0 at full_probes probes in the availability window, proportionally lower below.

Confidence reaches 100% at 50 probes in the availability window, and is proportionally lower below that. It is reported next to the score, never folded into it — a thinly-evidenced 100 is still a 100, just flagged.

Down and undocumented services stay in the catalog and are scored, never hidden — only manually retired or reported endpoints drop out. See about for our transparency stance.