Chapter 5
Push vs Pull Oracles
Oracle networks can deliver data in two fundamentally different rhythms. Push models write updates to chain on a schedule or when price deviates. Pull models leave fresh data off chain until a user or protocol submits a proof in the transaction that needs it.
Chainlink Data Feeds are the canonical push example: Aave, Maker, and countless vaults read the same stored round without triggering an update themselves. Pyth popularized pull on Solana and expanded to EVM chains — traders bring the latest price when they swap or open a position.
Pull does not magically remove trust. You still rely on the publisher set, the freshness of the bundled update, and your contract's validation of timestamps and signatures. Push does not guarantee correctness — it only guarantees something is already there to read.