Crypto · Intermediate · 10 min read

On-chain data: observable does not mean interpretable

Separate addresses from people, transfers from demand, and a reproducible metric from a persuasive chart.

Several visible blockchain addresses can belong to one economic owner, so transaction counts do not identify distinct users.
Original educational illustration. No live prices or performance claims.

Start with the unit of observation

A blockchain records events according to its own rules. It does not automatically record the economic motive behind them. An address is not necessarily one customer: a person can control many addresses, while a custodial address can represent many people. A token transfer can be a purchase, a repayment, a move between wallets, or a contract operation. The first analytical job is therefore defining what a row in a dataset actually represents.

Ethereum’s data documentation describes access through nodes, explorers and indexing tools. These are different views of underlying activity, not independent confirmations of an economic story. A polished dashboard may still rely on an incomplete label set or a query whose filters deserve scrutiny.

Build a metric specification

Imagine comparing two applications by daily active addresses. Specify the chain, time zone, successful versus reverted transactions, contract versions and whether activity means sending, receiving or invoking a function. Decide whether smart-contract wallets and relayers count. Preserve the query and the address list so the next researcher can reproduce the result.

Then write the limitation beside the headline. Active addresses can measure participation by addresses, but they cannot establish unique human customers without additional assumptions. Retention among addresses is useful, yet losing an address from a cohort may mean migration to a new wallet rather than loss of a user. Good labels reduce uncertainty; they do not erase it.

Separate price effects from usage effects

Dollar-denominated value locked can rise because token prices rise, even if no new units arrive. Conversely, a falling dollar total can hide net deposits during a price decline. Calculate both token quantities and their value using a consistent price convention. Explain whether receipt tokens and underlying deposits are counted together, because recursive claims can inflate a combined ecosystem total.

For a fictional vault, 1,000 tokens priced at $20 represent $20,000. A month later, 950 tokens priced at $30 represent $28,500. The dollar figure rose 42.5%, but token units fell 5%. Neither observation alone proves stronger adoption. The divergence is precisely the finding that should guide the next question.

Investigate classification and timing

An exchange inflow is often interpreted as potential selling pressure. That interpretation depends on the receiving address actually belonging to the exchange and on the transfer not being an internal reorganization. New deposit addresses, omnibus arrangements and bridge contracts complicate attribution. A labeled transfer is evidence of movement; a future sale is an inference.

Backtests should use the labels available at the historical decision time. Adding addresses identified months later can introduce look-ahead bias. Indexing delays and reorganizations also affect when a signal became observable. Store both event time and ingestion time when testing a strategy that assumes rapid access. Otherwise the research may grant itself information earlier than an actual observer could receive it.

Make competing explanations explicit

A useful practice memo contains one metric, its construction, two alternative explanations and the evidence that would distinguish them. If activity spikes after an incentive announcement, compare transaction size, repeat behavior and persistence after rewards change. A burst of low-value transactions could reflect genuine experimentation, automated farming, or both. Avoid forcing a single explanation onto mixed behavior.

Treat the data as a way to narrow hypotheses, not a mechanical price forecast. Even genuine network growth need not accrue value to a particular token. Fees may flow to validators, users, an application company or no token holder at all. Connect observable usage to the specific economic claim before moving from measurement to valuation.

As a final exercise, take one chart and rewrite its title in strictly observable terms. Replace 'investors are accumulating' with the measured change in balances for a defined address set. Then list the assumptions needed to recover the stronger claim. This separates the reliable observation from the interpretation and makes disagreement productive: readers can inspect the assumption instead of arguing about an ambiguous headline.

Follow a cohort instead of celebrating a total

A total can grow even while the people behind it stop returning. In a fictional application, 1,000 addresses interact during January and 2,000 during February. Of January’s addresses, only 200 return in February. Monthly activity doubled, but address-level retention for that January group is 20%. Both statements can be true. Neither number tells you how many distinct humans used the application.

Define the cohort before calculating the rate. Does “return” mean any transaction, a successful transaction, a paid action or a particular contract call? Are automated operators and known service addresses included? Is the observation window a calendar month or a fixed number of days after first use? A change in any of these choices can move the result without any change in the underlying behavior.

For practice, make a small fictional table of addresses and dated actions, then calculate activity and retention from the same records. Include one address with many transactions and several with only one. This shows why transaction count, active-address count and repeat-use rate answer different questions. A dashboard can report all three accurately while an accompanying growth story still overreaches.

Reconcile balances before adding them

Suppose 100 units are deposited into protocol A, which issues a receipt that is then deposited into protocol B. If both dashboards report a value of 100, adding them produces 200 of reported deposits—not necessarily 200 of independently contributed underlying assets. You need to decide whether you are measuring activity across contracts, gross claims or net external capital. There is no single total that answers all three.

Block explorers expose records such as transactions, token transfers and balances, but interpreting those records still requires a definition of the economic object being counted. Ethereum’s explorer guide describes the available record types. An address label or a dashboard category is an analytical layer placed on top of the record, not a fact guaranteed by consensus.

Draw the deposit and the receipt as two linked claims, then mark which one you would eliminate for a net-capital measure. Keep the gross measure too if it serves a different purpose. Clear reconciliation is better than choosing whichever total makes the application appear larger. Record the price timestamp as well: valuing yesterday’s quantities at today’s prices mixes two separate changes.

A QUICK CHECK

Did the idea stick?

A vault rises in dollar value while its token balance falls. What is a plausible explanation?

General education, not a trade recommendation. Examples simplify real markets. Check the exact contract, costs and rules of any product before using it.
Next: Bridges: moving assets means changing trust assumptions →