A network number becomes useful when you know what it counts, its unit, period, source and exclusions. Compare like definitions, preserve missing data and distinguish direct observations from derived estimates. A dashboard label alone does not establish the meaning of its metric.

Write a definition before interpreting the number

A card labelled activity might count transactions, instructions, signers, changed accounts or application events. Each is a different unit. Begin by finding the method behind the label.

A useful metric definition states cluster, counted object, filters, time window, aggregation, source and observation time. It also states how failures, duplicates and unavailable intervals are handled.

Choose a teaching transaction-rate sample: 12,000 counted transactions over 60 measured seconds equals 200 transactions per second. If another source counts only 9,000 successful transactions over the same period, it reports 150 under a different filter.

The disagreement is not evidence of a network fault until definitions align. You need the underlying counted population to compare the rates.

Align periods and aggregate by the right denominator

A one-minute peak, an hourly average and a seven-day median describe different behaviour. Put the actual window beside a number rather than calling all of them current performance.

For unequal sample durations, sum eligible transactions and divide by summed seconds. A simple average of per-sample rates gives each sample equal weight even when one covers much more time.

Record collection gaps. A sample absent because the provider failed is not a minute with zero activity. Show the gap or use a stated coverage rule.

Keep UTC boundaries and data freshness explicit. A chart whose newest point is hours old can look current unless the interface reports its last observation.

Account for protocol and indexing changes

Alpenglow changed the current measurement environment. Votor votes no longer appear as transactions in blocks, so a series which previously included them needs a new baseline after migration.

Current streaming can expose several candidate banks within a slot. A pipeline must distinguish tentative observations from the accepted branch and deduplicate under the source's actual identifiers.

bank_id is node-local under the documented model. Across providers or connections, reconcile using the appropriate blockhash rather than treating bank_id as a global identity.

A parser gaining support for a new transaction version can increase classified activity without a matching increase in actual network usage. Keep decoder changes in the metric history.

Zero and unavailable carry different information

Zero and unavailable carry different information. Observed quantity: Verified value including zero, Source and covered period, Definition and unit. Data condition: Unavailable: request or coverage gap, Stale: old observation, Unsupported: missing interpretation.
Do not substitute a fabricated zero for a failed or unsupported observation.

Avoid turning a proxy into a stronger claim

An active address count is not a direct count of people. One person can control several addresses, while an exchange address can serve many customers.

Stake distribution is not equal-node distribution. Common operators or hosting dependencies can concentrate control across several vote accounts. Grouping methodology changes the result.

TVL measures value under the provider's inclusion and valuation rules. Price movements can change it without new deposits, and receipt tokens can represent assets already counted elsewhere.

Use the dedicated address, stake concentration and TVL guides for those boundaries.

Treat source coverage as part of the result

An RPC service can have incomplete history, rate limits or unsupported methods. An index can cover selected programs or omit transactions its decoder does not yet understand.

Distinguish zero, unavailable, stale and unsupported. Replacing all four with a displayed zero invents a measurement.

For derived values, retain the input units and method. A currency value needs a price source and time. A provider's score or APY needs that provider's stated methodology and period.

When combining sources, match cluster, identity and observation context. Joining a fresh balance to an old price should remain visible as a mixed-time estimate.

Use a short assessment record for a chart

For the teaching rate above, the record is: counted transaction population, 12,000 observations, 60 seconds, chosen example data, 200 TPS, no claim of current mainnet measurement.

For a real chart, add the source endpoint or dataset, query or decoder version, collection timestamp, filters and coverage. Mark the date of any protocol or methodology break.

Then state only the conclusion the record supports. A rising counted rate establishes more of that counted activity per second in the window; it does not automatically establish more users, more successful payments or higher economic value.

Common questions

Why do two dashboards show different TPS?

They may count different transaction populations, periods or source observations. Align definitions before comparing.

Should missing points become zeros?

Only a verified zero belongs in the series as zero. A failed or unavailable observation should remain distinguishable.

Can I compare a pre- and post-Alpenglow series directly?

Check the counting rules. Vote transactions and other indexing assumptions changed, so some series need a marked methodology break.

Sources and documentation

Found an error or an outdated detail? Send a correction.