A tracker subscribes to new blocks, filters them for the addresses you asked about, and sends a message when one matches. The chain does the recording; the tracker does the watching and the filtering. Everything that separates one service from another happens in the filtering.
The phrase "wallet tracker" mostly returns Bluetooth tags for finding a lost wallet in a coat pocket. This is the other kind: software that watches a blockchain address and tells you when it moves.
First, something has to see every new block. Running your own node does this; most services instead use a provider that already runs nodes and offers a subscription to address activity. Second, each new block is filtered against the list of addresses being watched. Third, a match becomes a message.
None of this is clever, and none of it is private. The chain is public, the filtering is a lookup, and the message is an ordinary API call to Telegram or an email server. This matters because it tells you what a tracker cannot do: it cannot know anything that is not on the chain, and it cannot see a transaction before it is mined unless it is watching the pending pool, which is a different and much noisier thing.
Every service can see every transaction. What separates them is what they refuse to send you.
A wallet that moves twice a month needs no filtering at all. A wallet that moves two hundred times an hour needs a great deal, and the same setting that makes the first wallet useful makes the second one unusable. Good filtering usually means a minimum value in dollars, which requires a price for the asset and therefore a price source, and a hard cap on messages per hour so that one runaway address cannot flood the channel.
The cap is the part people underestimate. Without one, a single contract-heavy address can send thousands of messages in an afternoon, and the practical result is that you mute the whole service and stop reading any of it.
The chain records amounts in tokens, not in dollars. Turning "1,000 of some token" into a dollar figure needs a price from somewhere off-chain, and prices move, sources disagree, and thinly traded tokens can be quoted at numbers nobody would actually pay. A dollar threshold is therefore a filter, not an accounting record.
The sensible behaviour when no price can be found is to send the alert anyway. A missing price should make a service noisier, not quietly drop a movement you asked to be told about.
Plenty of transactions move no ether at all. A token transfer is a contract call whose outer transaction carries nothing; approvals and other administrative calls move nothing by design. A tracker that reports each leg separately will tell you a wallet moved zero, which is true and useless.
Reading the whole transaction rather than each leg fixes it: report the token movement, drop the empty outer call it came wrapped in, and treat a transaction that genuinely moved nothing as a contract call rather than as news.
CoinShadow subscribes to Base address activity, batches whatever arrives, and sends one message per real movement. The dollar filter is on the paid plan; the hourly cap of thirty messages per address applies to everyone and announces itself when it engages.
Tap Add wallet to try it against an address you already know is busy. That is the case that separates a tracker you keep from one you mute.
Neither. It reads the public chain. No key, no signature, and no connection to any wallet is involved.
Base produces blocks every couple of seconds, so the limit is the notification path rather than the chain. In practice an alert lands within seconds of the transaction being mined.
A token transfer wraps a zero-value outer call. A tracker that reads legs rather than whole transactions reports that as a zero. CoinShadow drops the empty leg and reports the token movement instead.
Yes. People often end up searching for an API because they could not find a product; for watching a handful of addresses, a bot needs no code at all.
Published 2026-08-28, last checked 2026-09-04. Claims about other services were verified on that date.