lahza / Methodology
Methodology · v1.0

Measurement you can cite.

Every figure Lahza publishes is reproducible: the procedure, the formula and the evidence are public. Lahza sends nothing to any chain. It listens, from inside the network, and times what users do. This page is the specification.

Independence

An observer cannot influence what it measures. Lahza holds no wallet, sends no transaction and runs no relayer on any chain. Observer nodes never run on infrastructure of an observed chain. No chain pays to be observed, and payment never touches a number.

Reproducibility

The score is a deterministic formula over the observed record. Auditors and licensees recompute any score from the raw dataset; every incident is published with the on-chain transaction that proves it.

Proof

Every observation names a real transaction on a real chain, and every hour the Merkle root of the raw record is committed on-chain. What happened is provable; that the record was never altered is provable too.

How a measurement is made

Each observatory runs its own full-capability node inside every covered chain's network. For every user transaction it records three timestamps from its own clock (NTP-disciplined, sub-millisecond):

t₀the transaction is first seen by our node in the network
t₁first inclusion observed in a block
t₂finality confirmed — the block is irreversibly accepted by the validator set

Finality is t₂ − t₀: what a user waits, measured on real users. Per chain and per observatory we report p50, p95 and p99 over the window. There is no cadence: every transaction is measured as it arrives.

What each interval measures

Finality as a user feels it mixes network propagation, block production and consensus. The method separates them and says which is which.

t₁ − t₀inclusion — first seen to first inclusion: mempool and block production.
t₂ − t₁consensus — inclusion to irreversible acceptance.
t₂ − t₀finality — what a user waits. This is end-to-end user experience, not pure consensus latency; the score uses it deliberately, and the two components are published beside it so consensus can be read on its own. t₀ is the moment our node saw the transaction, which follows the user's send by the network's own propagation time.

Observatories

Frankfurt, Virginia and Singapore today; the roadmap is seven continent-scale internet regions. Each figure is reported per observatory and as a cross-observatory median, so a single vantage point never defines a number, and a chain that is fast from one continent only is visible as such.

The score

Four components, each normalised to 0–1 against a fixed public scale, weighted and summed. Weights are versioned; a weight change is a new methodology version, never a silent edit.

score = 100 × ( 0.35·F + 0.30·U + 0.20·M + 0.15·V )
Ffinality — 1 at p99 ≤ 1 s, 0 at p99 ≥ 10 s, log-scaled between
Uuptime — blocks produced on schedule, and transactions that arrive are included; 90 days
Mmessage delivery — share of observed cross-chain messages delivered within 60 s over 24 h
Vvalidator health — set size, stake concentration (HHI) and churn against public thresholds

Calibrate it yourself

The formula above, live. Move an input; the dial follows. No number on this site asks to be trusted — it asks to be checked.

99.4score
F
0.92
U
100
M
100
V
0.93

Why it cannot be gamed

A chain can favour a transaction it recognises. Lahza has none to recognise.

nothing to recogniseWe measure the chain's own users — thousands of transactions from thousands of addresses. There is no wallet to allow-list, no address to prioritise, no timing to predict.
three clocksEvery transaction is timed by three observatories independently. A figure that one observatory sees and the others do not is flagged, never averaged away.
inside the networkObserver nodes are peers of the chain, not clients of an RPC. What they see is what the network sees.

Confidence

A difference smaller than the noise is not a ranking.

intervalsEvery percentile is published with a bootstrap 95% confidence interval; the score carries its interval (e.g. 99.4 ± 0.3).
tiesChains whose score intervals overlap share a rank band. The board never orders two chains the data cannot separate.
minimum sampleA percentile is published only when the window holds the minimum number of observed transactions; below it the value is shown as insufficient sample. A chain with no user transactions in a window has no experience to measure — and the board says so.

Coverage

Every mainnet L1 is in scope. A chain is either observed from inside its network — one class of measurement, the same for all — or listed until it is.

observedOur nodes are peers of the network. Every transaction, block, validator change and cross-chain message is timed. Scored.
listedRegistered on the P-Chain, not yet observed. Coverage grows in order of activity; the dashboard states what is observed now.
privateThe network does not admit outside nodes. Listed from its P-Chain registration; observed like any other chain the day it grants our node peering. Nothing to buy, nothing to allow-list — a peer, not a wallet.
dormantNo user transactions in 30 days. Listed, not scored.

Three-leg ICM timing

Leg 1source finality

the message is finalised on the source chain

Leg 2relayer pickup

a relayer observes the signed message and submits it

Leg 3destination delivery

the message executes on the destination chain

Every cross-chain message our nodes observe is timed leg by leg. A stalled message is attributed to the leg that broke — the alert says where, not just that. Lahza never operates a relayer; where no relayer serves a route, delivery is not applicable, M is omitted and the remaining weights are renormalised, with the label shown.

Region gap

For each chain: (max − min) / median of p50 finality across observatories. Below 0.10 is consistent; above 0.25 is flagged. It reveals chains whose validator geography favours one part of the world.

Incidents

An incident opens when block production stalls, when transactions arrive but are not included for 60 seconds as seen from at least two observatories, or when p99 finality exceeds 5× its 30-day baseline. It closes after five clean minutes. Duration, affected metric and evidence transactions are published.

Validator sets

Permissioned validator sets are small by design; V measures them as they are and publishes the set size next to the score (e.g. PoA · 5 validators). The reader sees the design choice; the number is not softened.

Retention, verification, versions

Raw observations are kept for 90 days, then reduced to hourly aggregates kept indefinitely. The public layer shows aggregates and every incident's evidence transaction; the raw dataset is available to licensees and auditors in full. The observer and scoring engine are proprietary; this specification, the evidence transaction behind every incident and the hourly on-chain commitment are what make them checkable. This is v1.0.

The score is public and is not sold. Depth — streams, raw observations, breakdowns — comes through the ecosystem's partnership.