Farbeam
Docs / Data

Reading token reports

A report is a set of separate facts. This page walks through real ones, so you can see how to read them. All four were fetched from the API on 2026-11-04 UTC, and values change on each read. The tokens are examples for reading the output. Naming a token here is not a view on it, and nothing here is advice to act on any token.

Read token checks for all thresholds.

#Example one: USDT on Ethereum

Request: GET /tokens/ethereum/0xdAC17F958D2ee523a2206206994597C13D831ec7, captured at 2026-11-04T19:33:40.822Z.

counts: 8 pass, 4 warn, 1 fail, 1 unknown.

CheckStatusDetail
liquiditypass$67,068,272 across 30 pool(s).
pool_agepass1987 days.
open_sourcepassSource code is verified.
honeypotpassSimulation did not flag a sell block.
mintablewarnThe contract has a mint function.
proxypassNot a proxy.
balance_changefailOwner can edit balances.
hidden_ownerpassNo hidden owner was found.
pausablewarnTransfers can be paused.
blacklistwarnAddresses can be blocked.
buy_taxpass0%.
sell_taxpass0%.
top10warn46.2% (contracts and exchanges are included).
lp_lockedunknownLP holder data is absent.

USDT has a large market and a long record, and it still shows a fail and several warnings. This is correct output.

The issuer of a centrally issued stablecoin holds admin powers by design. USDT's published contract has functions to issue new supply, pause transfers, block addresses and remove the balance of a blocked address. The checks report those functions exist:

  • mintable is warn: the issuer can create supply.
  • pausable is warn: the owner can stop transfers.
  • blacklist is warn: addresses can be blocked.
  • balance_change is fail: the owner can change balances. The check does not ask why.

The right reading is that holders rely on the issuer. That is a fact you may accept for this kind of asset, and it is the same fact you would not accept in an anonymous token launched this morning. The check gives the same result in both cases, so the context is your job.

#The top holder check

top10 reads warn at 46.2%. The largest holders:

AddressShareContractLabel
0xf977814e90da44bfa03b6295a0616a897441acec16.845%noBinance 8
0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d50310.896%nonone
0x6c96de32cea08842dcc4058c14d3aaad7fa41dee3.889%yesnone

An exchange wallet leads. Exchange holdings are customer balances spread across many people, so a high share does not mean one party controls that supply. A label helps here when one exists, and a null label tells you nothing either way.

#The unknown

lp_locked reads unknown, because the source returned no LP data. Major tokens trade in many pools, often with no LP token at all. Unknown here does not suggest a problem. It means this check gives no information.

#Example two: USDC on Ethereum

Request: GET /tokens/ethereum/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48, captured at 2026-11-04T19:33:41.833Z.

counts: 7 pass, 1 warn, 0 fail, 6 unknown.

CheckStatusDetail
liquiditypass$223,469,355 across 30 pool(s).
pool_agepass2361 days.
open_sourcepassSource code is verified.
honeypotpassSimulation did not flag a sell block.
mintableunknownField is absent from the source.
proxywarnLogic can change through a proxy.
balance_changeunknownField is absent from the source.
hidden_ownerunknownField is absent from the source.
pausableunknownField is absent from the source.
blacklistunknownField is absent from the source.
buy_taxpass0%.
sell_taxpass0%.
top10pass24.6% (contracts and exchanges are included).
lp_lockedunknownLP holder data is absent.

USDC's contract also gives its issuer powers such as minting and blocking addresses, yet the report shows no fail. The contract is a proxy, and GoPlus returned no value for is_mintable, owner_change_balance, hidden_owner, transfer_pausable and is_blacklisted, so they read unknown.

Do not read USDC as "safer than USDT" because it has fewer fail rows. Six unknowns mean six questions the source did not answer. **Count unknown as missing information, never as a pass.**

#Example three: a new token on Base

Request: GET /tokens/base/0xb1c3a6ac90e324c4072ad4b2a71c5d9382f9565c, captured at 2026-11-04T19:33:43.093Z. This token appeared in the trending pools list with a pool created hours before.

counts: 11 pass, 2 warn, 1 fail, 0 unknown.

CheckStatusDetail
liquiditypass$106,853 across 5 pool(s).
pool_agefail6 hours.
open_sourcepassSource code is verified.
honeypotpassSimulation did not flag a sell block.
mintablepassNo mint function was found.
proxypassNot a proxy.
balance_changepassNo such function was found.
hidden_ownerpassNo hidden owner was found.
pausablepassNo pause function was found.
blacklistpassNo blacklist function was found.
buy_taxpass0%.
sell_taxpass0%.
top10warn53.2% (contracts and exchanges are included).
lp_lockedwarn0% of tracked LP tokens are locked.

Here the contract checks all pass, and the report is still thin in the ways that count.

  • Age. pool_age is fail at 6 hours. All other data on this token covers 6 hours at most.
  • Liquidity. pass starts at $100,000, and this token is only just above that at $106,853. Liquidity can leave a pool in one transaction.
  • LP. lp_locked is warn at 0%. Pool providers can withdraw.
  • Holders. top10 is warn, and the top holder holds 40.5%. That holder is a contract with no label, so it may be a pool or a locker. The report cannot say which.

Clean contract flags on a six hour old token are one small set of facts. They are not a reason to act, and the report does not suggest any.

#Example four: a new token on Solana

Request: GET /tokens/solana/FrSrp9P3bgiFHwr6h5PQHVh55iC8Dae4eZCKPUo9pump, captured at 2026-11-04T19:33:45.189Z.

counts: 7 pass, 1 warn, 1 fail, 0 unknown.

CheckStatusDetail
liquiditywarn$13,892 across 2 pool(s). 3 pool(s) with an outlier price were left out.
pool_agefail16 hours.
mint_authoritypassRevoked. No new supply can be minted.
freeze_authoritypassRevoked. Accounts cannot be frozen.
top10pass52.3%. These are token accounts, and pool vaults are included.
closablepassNo close authority is set.
balance_mutablepassNo such authority is set.
non_transferablepassToken can be moved.
rugcheckpass1 of 100 (a higher score means more risk flags at the source).

This report shows two things that do not appear in the earlier examples.

  • Outlier pools. Three of five pools were left out because their implied price was far from the median. Without this filter, spoofed pools could inflate the liquidity figure. Read the detail text, and read market.outlier_pools_excluded.
  • Token accounts. top10 counts token accounts, and pool vaults are included. The largest account holds 24.133%, and is_contract is not available on Solana, so you cannot tell from this report alone whether it is a pool vault. On Solana, top10 can only reach warn.

Liquidity of $13,892 against 24 hour volume of $527,789 is also worth noting. Volume far above liquidity can come from repeated trading between few parties. The report gives both numbers and draws no conclusion.

#A reading order

Read stale first. If it is true, every source failed, and the report is a saved copy from the time in as_of.

  1. Check sources[]. A failed source explains a group of unknown checks.
  2. Check pool_age and liquidity. They set the context for everything else.
  3. Read each warn and fail with the type of asset in mind. Admin powers mean one thing for a regulated stablecoin and another for an anonymous launch.
  4. Read holders[] and look at labels and is_contract.
  5. Count unknown, and treat it as missing information.
  6. Compare token.symbol and market.symbol, and check the address against a source you trust. Anyone can deploy a token with any name and symbol. Symbols prove nothing.

#Common mistakes

MistakeBetter reading
Adding up passes as a scoreChecks are not equal, and Farbeam gives no score for this reason
Treating unknown as fineIt means no information
Treating fail as a scamUSDT has one, for a documented admin power
Treating an all-pass token as safeExample three has clean flags and is six hours old
Trusting liquidity aloneIt can leave at once. Check LP lock status and age.

A report tells you what public sources say at one moment. It does not predict price and is not financial advice. See the disclaimer.