FORENSIAWeb3 forensicsOpen workspace

Finding the right network

The same Ethereum-style address exists on every compatible network. This is how Forensia picks which one to show.

3 min read · How a lookup works

#Plain languageIn plain terms

An Ethereum address is just a number. The same address is valid on Ethereum, Base, Arbitrum and every other compatible network, and it can hold completely different things on each. So when you paste one, there is a real question: which network did you mean?

Forensia answers by checking all the networks it supports at once and choosing the one where the address shows the most activity. It then tells you what it found on the others, so you can switch.

#How it worksHow it works

  1. Send a small probe to each of the seven supported networks at the same time.
  2. For an address, each probe reads three things: the balance, the number of transactions sent, and whether code is stored there.
  3. Score each network by what it found.
  4. Pick the highest score and run the full lookup there.
  5. Keep every probe as an evidence record, including the ones that failed.

#Technical detailThe exact rules

The seven networks are Ethereum, Base, Arbitrum One, Optimism, Polygon, BNB Smart Chain and Avalanche C-Chain. An address probe is one batched request of eth_getBalance, eth_getTransactionCount and eth_getCode at the latest block. A probe has 7 seconds in total for its network, including any backup source it falls through to, and its response is capped at 256 KiB. Probes spend requests from the same allowance as the rest of the lookup.

What the network holdsScore
Code at the address3,000,000,000 + code size in bytes
No code, but transactions sent2,000,000,000 + transaction count
Only a balance1,000,000,000 + a small term from the balance
Nothing0
Probe failed-1, recorded as unavailable

The order is deliberate: code beats sent transactions, which beat a bare balance. A wallet that has delegated its behaviour to code (EIP-7702) is scored as a wallet, not a contract.

For a transaction hash the probe is a single eth_getTransactionByHash. A network that returns the transaction scores 1.

A source that answers a hash probe with no record does not settle the question for its network. The same probe is sent once to each of that network's other configured sources, inside the same 7 seconds, until one returns the transaction or the list ends. Each earlier "no record" answer is kept as its own evidence record, and the result carries a warning that another source was checked. An answer whose envelope does not match the request, or that returns a different transaction hash, is not counted as found or as not found: the network is recorded as unavailable.

The result shows the outcome per network under "Networks checked". For an address the states are "State found", "No state found" and "Source unavailable". For a transaction hash they are "Transaction found", "No transaction returned" and "Source unavailable".

State counts as found when the balance is above zero, the sent-transaction count is above zero, or code is present. The result carries the strategy name automatic-supported-network-scan, the reason the network was chosen, and one observation per network.

"Retry lookup" after a failed lookup repeats that same request. A lookup that named a network is retried on that network, and an automatic lookup stays automatic. The failed identifier is put back in the search box, so text you typed there afterwards but did not submit is not what gets retried.

#LimitsWhat it does not tell you

  • There is no tie-break rule. Equal scores resolve to the earlier network in the fixed order listed above. A transaction hash found on two networks resolves to the first.
  • Only the seven listed networks are checked.
  • "No transaction returned" means none of the sources asked on that network returned the hash. It is a hash check, not wallet history, and it is not proof that the transaction is absent from that network.
  • The same address on two networks is not assumed to belong to the same owner.
  • A sent-transaction count can include delegation authorisations, not only payments.