In this track: Read logs and failures
advanced · 4 MIN READ

Anonymous events explained

An anonymous event omits the signature topic.

LET’S PICTURE IT

A record can keep its fields while leaving off the usual type label.

SEE IT FOR YOURSELF
From an emitted Transfer event to a receipt logStep 1 / 4
From an emitted Transfer event to a receipt logToken executionApply coded rulesUpdate relevant balancesEmit Transferfrom · to · valueA structured logA reverted execution portion does not keep its emitted logsTransfer(address,address,uint256)Topic 0: 0xddf252ad…b3efFull digest · 32 bytesEvent topic zero and a function selector use different lengthsTopic 1from addressIndexedTopic 2to addressIndexedDataraw valueNot indexedThis diagram is specifically the common ERC-20 Transfer layoutReceipt logTopics + dataBlock contextApplication viewDecoded fieldsImplementation still mattersThe local event tool does not query or authenticate a deployed token

A token implementation may update balances and emit its standard Transfer event. State and the emitted record are related but distinct.

Animated local teaching model. No wallet, RPC or live blockchain data. Some labels and hashes are abbreviated for readability.

Notice the anonymous declaration

An event declared anonymous does not automatically place a signature digest in topic zero. Its first topic, if present, belongs to an indexed parameter.

Count the available topics

The EVM permits up to four topics per log. Omitting the usual signature topic allows an anonymous event to have up to four indexed arguments.

Require external schema context

Without a signature topic, a generic decoder has less help choosing a declaration. The emitting code and trusted ABI become especially important.

Do not reuse the usual positions

A decoder assuming topic zero is always a signature can misread every field. Check anonymity before assigning topic numbers to arguments.

Inspect the example

event Note(address indexed who, uint256 amount) anonymous;

topic 0: padded who address
data: ABI-encoded amount

This is a layout sketch, not a complete receipt or a Transfer-tool input.

TURN UNDERSTANDING INTO PRACTICEOpen the Event decoder →
QUICK CHECK · NO PRESSURE

What is absent from an anonymous event?

Your progress stays in this browser.
Keep exploring the original referenceSolidity documentation ↗

Original explanations by EtherTools. Examples are educational and source-linked; this site is independent of the Ethereum Foundation. Our approach.