Supercharge protocol analytics with Shadow

Missing or incomplete events for the data you need? Unhappy with abstracted community tables? Take matters into your own hands with Shadow.
Launch app

Shadow turns data consumers into data producers.

Write custom events into any contract, with full access to the entire state of the chain. Get everything in one table and export to your data tool of choice.
Access to any mainnet state
Emit data directly in shadow events that usually requires making separate RPC calls.
Access peripheral contract data
Get aggregator, fees, collection, and ENS data with simple view function calls.
No logs? No problem
Backfill historical event data going back to contract creation, even if logs are missing.
Reduce data engineering time
Eliminate the need to build and maintain data pipelines to merge onchain datasets.
Save on compute costs
Eliminate expensive multi-join queries by emitting shadow events in usable schemas.
No more tracing
Protocol doesn't emit an event you need? No problem. Emit a shadow event yourself.
Interest calculations made easy
Call contract view functions in events for data that requires onchain computation.
Rapidly iterate on schemas
Shadow events frontfill instantly, and full historical backfills take less than 15 minutes.
Standardize schemas across protocols
Create unified event schemas for similar protocols to reduce data transformations.

Clean onchain data ready for analysis. No pipelines needed.

Emit custom event logs for any contract, with powerful access to any mainnet state data. Get usable data exported fast – no extra engineering needed.
01 define

Define your shadow events

Create custom event schemas for any smart contract deployed on mainnet.
Specify directly usable schemas to eliminate data pipelines
Full control over schema definition and parameter naming
Easily handle token symbols, decimals, and collection names
Ability to unify across similar protocols for standardization
02 emit

Emit events how you want

Emit your shadow events where and when you want them, by directly editing contract code in your Shadow fork.
Access any state data on mainnet (even from other contracts)
Call view functions from any contract to get hard-to-get data
Handle prices, decimals, token, and collection information without joins
No more tracing for event data not logged by protocol developers
03 Sync

Ready-to-use indexed data

Shadow automatically decodes and indexes your custom events for export.
Export shadow events to your data environment of choice
Ready for instant use; no additional pipelines or data engineering
Automatic event decoding and other data ergonomics


Get custom onchain data for indexing and analytics in minutes.