Push oracles: always current, always being paid for
A push oracle proactively writes updated data on-chain on its own schedule, for example every few minutes, or whenever the underlying value moves past some deviation threshold from the last reported value. Once written, that data sits on-chain in a known location, ready for any contract to read instantly, with no waiting and no extra request needed. This model is well suited to situations where many different contracts need to read the same data frequently and require it to be immediately available the moment they need it, since the value is already sitting on-chain when they look.
The tradeoff is that someone has to pay the transaction cost of every single update, whether or not any contract actually reads that particular update. A push oracle updating on a fixed schedule keeps incurring that cost around the clock, even during long stretches where no contract queries the data at all. That ongoing cost has to be funded somehow, typically built into the fees the oracle network charges, which makes push oracles better suited to high-demand data where the continuous availability is worth paying for continuously.
