Skip to main content

chainmap: Turn On-Chain Transactions Into a Fund-Flow Graph

· 4 min read
gl0bal01
Researcher

CTF, a blockchain challenge, clock running. The flag was somewhere down a chain of transactions and I was trying to follow the money by hand — one Etherscan tab, copy the "to" address, paste it into a new tab, scroll, copy the next hop, paste, scroll. Twenty tabs deep I'd lost the thread completely: which branch was I on, had I already seen 0x9f…c2, and was this even the real money or a dust attack dragging me sideways. My teammates were solving things. I was untangling Christmas lights in the dark. We didn't get that flag.

So afterward I built chainmap. Paste an address, it draws the graph — address to address, expanded outward as far as you want. The twenty-tab crawl becomes one picture you can actually read.

It's live at chainmap.gl0bal01.com and runs entirely in your browser — nothing you paste ever leaves the tab. No account, no upload. If you don't have an Etherscan key yet, click Demo mode and a sample investigation loads so you can poke around first.

What it does

You give it a wallet, it fetches that wallet's transactions and fans out — every counterparty becomes a dot, every transfer an arrow — until it hits the depth you picked. Then it stops being a drawing and starts being an investigation: filter the noise, bundle repeated transfers into one arrow, and let the overlays do the pointing.

The overlays are the good part:

  • Round-trips — money that leaves an address and comes back, the classic wash shape.
  • Hubs — the wallets everything pours into or out of. Usually where an exchange or a mixer sits.
  • Fresh-wallet coloring — spot the burner addresses spun up for one job.
  • Risk score — per wallet, and it tells you why it flagged one. A risk number you can't question is just astrology with hex digits.

One quiet feature that saved me more than once: a token transfer on-chain points at the token, not the person who got paid — the real recipient is hidden in the transaction. chainmap digs it out and draws the arrow to the wallet that actually received the money.

Honest by design

This is the bit I care about, because crypto tools fudge it constantly. The graph is a sample of history, and chainmap says so instead of pretending it's the whole story. Failed transactions get dropped — they moved no money, so drawing them is a lie. And the amounts are exact, never rounded.

Which is the whole ethic, really: the graph is a lead, not proof. A blockchain is pseudonymous, not anonymous, and not always what it looks like — spoofed token names, dust attacks, exchange wallets that make one address look like a thousand people. It'll show you where the money moved. It won't tell you who someone is, and neither can anything else. Corroborate before you conclude.

It also teaches

While building it I noticed every feature maps to a blockchain concept you could actually teach — so chainmap doubles as a hands-on course. Accounts, transfers, tokens, how a graph gets built, why sampling matters, why some transactions fail — each one tied to something you can see and do in Demo mode, with eight guided labs. If you've ever wanted to get how a blockchain moves value instead of nodding along to a diagram, that's the way in.


Built for OSINT investigators, journalists chasing a money trail, and anyone who learns a blockchain better by watching it move. Free, works in the browser, English and French. chainmap.gl0bal01.com

For authorized OSINT investigations, journalism, and learning. The graph is a lead, not proof.