Dependency Map draws a contract’s external calls as a graph. The target sits at the centre, every address it reaches is laid out around it, and the edges are colored by call type — so the shape of a contract’s external surface, its clusters and chokepoints, is visible at a glance.
Why it exists
A large contract can call dozens of external addresses, and a flat list
of CALL targets hides the structure — which addresses it leans on
hardest, which it reaches by delegatecall, where value flows. The graph
makes those relationships legible, and lets you click straight through to
any dependency to analyze it.
Who uses it
- Auditor — spots the external dependencies worth reviewing next.
- Researcher — maps a protocol’s external surface.
How to open it
- Sidebar → Dependency Map.
- From Tools → Dependency Map.
- Direct URL —
/dependency-mapwith a target in context.
Reading the map
A stats bar counts the total calls, unique targets, and the split across regular, static, and delegate calls, and a legend keys the colors. On the canvas, hovering a node shows its address, its call-type breakdown, and the functions touched; clicking one opens that contract’s overview. Below the graph, a Call Details table lists every call with its target, call type, function, caller, whether value moved, and whether a flash loan was involved.
Limits
- Requires a signed-in account and a contract in context.
- The graph is computed from the last completed analysis, so on-chain changes since then aren’t reflected — re-run to refresh. An empty graph just means no external dependencies were found.
Related pages
- Threat Graph — cross-runtime blast radius rather than a single contract’s dependencies.
- EVM Contract Overview — the usual parent context for a map.