Batch multiple entity read calls into a single RPC round-trip via the on-chain Multicall3 contract. Instead of awaiting each read individually, pass an array of lazy closures and get all results back in one network call.
When to use multicallUse multicall whenever you need two or more read calls that don’t depend on each other. A single RPC round-trip is significantly faster — and cheaper on rate-limited RPC providers — than sequential calls.
Under the hood, the SDK enables viem’s batch.multicall transport option. All readContract calls dispatched within the same tick are automatically aggregated into a single Multicall3 on-chain call — no raw ABI descriptors needed.Each closure you pass is a zero-argument function that returns a promise. The SDK collects all the underlying readContract calls and dispatches them as a single batched RPC request.