Directly observable
Transfers, balances, contract interactions, token supply, liquidity pool reserves and the full history of every address. These are facts, verifiable by anyone running a node.
Derived measurements like active addresses, transaction counts and realised supply distribution are also computable directly from the chain.
Inferred, and therefore uncertain
Which addresses belong to exchanges, which belong to one entity, and which represent "smart money". These come from clustering heuristics and manual labelling, both of which are incomplete and go stale.
A flow labelled as an exchange deposit may be an internal transfer, a custody migration, or a mislabel. Treating a labelled aggregate as a fact is where most on-chain analysis fails.
Label quality also degrades silently. An exchange moves to new addresses, a cluster splits, a tagged wallet changes hands, and the dashboard keeps reporting against the old mapping until somebody notices. There is rarely a changelog telling you when a label stopped being true.
What exchange flows actually indicate
Coins moving to exchange addresses is commonly read as intent to sell. Often it is, and often it is collateral movement, market-making inventory, or an internal reshuffle.
The signal is weak at short horizons and somewhat more informative in sustained aggregate trends, which is a much more modest claim than it is usually given.
Using it without fooling yourself
Prefer directly observable measurements. Treat labels as hypotheses. Compare against the asset's own history rather than absolute thresholds. And distinguish between describing what happened and asserting why.
FBT Swap presents on-chain and market readings with their source and window, and does not convert them into buy or sell instructions.