Glossary · Data and DeFi

Oracle

Published 22 May 2025 · Updated 9 Nov 2026 · 16 min read

A blockchain oracle is a service or mechanism that brings outside data onto a blockchain so smart contracts can use it. That data can include prices, reserves or event results. A contract cannot fetch outside data itself. The mechanism makes an input available, but cannot establish that an off-chain fact is true.

  • An oracle cannot prove an off-chain fact, so contracts check signatures, agreement and freshness.
  • Push feeds publish timed or price-triggered updates, while users pull signed prices into transactions.
  • Many oracle failures involved prices one trader could move, rather than broken signatures.

What a blockchain oracle does

Every node processing a transaction must reach the same result. Smart contracts therefore use data already recorded on the chain, rather than fetching changing answers from websites. A blockchain oracle makes outside information available in that shared record. The definitions below describe this connection from technical and regulatory perspectives. They do not make the source automatically trustworthy.

SourceDateDefinition, in its own wordsWhat it adds
NIST IR 8301, Blockchain Networks: Token Design and Management OverviewDateFebruary 2021Definition, in its own words“A source of data from outside a blockchain that serves as input for a smart contract.”What it addsThe shortest neutral wording, with no design built in
ethereum.org, OraclesDatePage updated 26 June 2026Definition, in its own words“Oracles are applications that produce data feeds that make offchain data sources available to the blockchain for smart contracts.”What it addsThe developer view, tied to data feeds
IOSCO, Decentralized Finance ReportDateMarch 2022Definition, in its own words“An oracle connects a smart contract to off-chain data that may be an input for that smart contract's functionality.”What it addsSecurities regulators frame it as an input to a contract
FSB, The Financial Stability Risks of Decentralised FinanceDate16 February 2023Definition, in its own words“Oracles are services typically enabling blockchain smart contracts to access external (or “offchain”), real-world data.”What it addsA financial stability view that names oracle risk
BIS Bulletin No 76, The oracle problem and the future of DeFiDate7 September 2023Definition, in its own words“Oracles are third parties that collect and disseminate data on real-world events.”What it addsCentral banks point to where the trust sits
Chainlink white paper v1.0Date4 September 2017Definition, in its own words“Today, the solution to this problem is to introduce a new functionality, called an oracle, that provides connectivity to the outside world.”What it addsWhy the need exists: consensus cannot call outside systems

On Ethereum, every node must execute the same transaction consistently. Determinism means identical starting conditions and inputs produce identical results. An external request could return 3 to one node and 7 to another. Those different answers would break blockchain consensus. An oracle writes one input into the shared record instead. Every node can then calculate the same state change from that on-chain input, even if the outside source later changes.

The oracle problem is that correct execution still depends on correct inputs. Trusting an operator reintroduces trust that smart contracts were meant to remove. The ethereum.org guide names correctness, availability and incentive compatibility as tests. In September 2023, BIS called complete decentralization of oracles "debatable". An on-chain check can establish who signed, how many agreed, the value's age and whether it meets application limits. It cannot establish the truth of an off-chain fact, including a price used in DeFi applications.

Beyond prices, proof of reserve supports stablecoin reserve checks and tokenized assets, often using one issuer or custodian. Verifiable randomness (VRF) generates values with a proof that a smart contract checks. It does not fetch existing randomness. An optimistic oracle can report event outcomes. Output oracles send on-chain information to external systems. Cross-chain messaging carries messages between chains, where cross-chain bridges also operate. These functions have different verification rules, so a data feed for reserves is not interchangeable with a price feed.

How prices reach a smart contract

A price travels through sources, operators and verification before a DeFi smart contract uses it. These steps follow a decentralized oracle network rather than a pool average. Different designs change who supplies an observation and who checks the final input.

Number 1

Source

Chainlink crypto price feeds draw on three or more aggregators or market data vendors using exchange data. Several nodes reading one source still share its errors.

Number 2

Observe

Each node operator queries several sources and combines their estimates into its own observation. Independent operators do not necessarily mean independent information when their sources overlap.

Number 3

Aggregate and sign

In Off-Chain Reporting, nodes exchange signed observations and a quorum signs one median report. The on-chain contract verifies digital signatures. Transmission and consumption create oracle extractable value, a subset of maximal extractable value.

Number 4

Deliver

A push oracle publishes when a deviation threshold or heartbeat triggers an update. A pull oracle lets users include a signed report in the transaction needing it.

Number 5

Verify

The receiving contract checks the required signatures, not the market itself. Since 26 August 2026, Pyth Core on Ethereum accepts updates with three of five router signatures.

Number 6

Read and check

The consuming smart contract compares the timestamp with its own maximum age. On a layer 2, it also checks sequencer status before accepting a price.

An optimistic oracle instead accepts an answer backed by a bond unless someone disputes it during a challenge period. UMA disputes involve 24-hour commit and 24-hour reveal votes. Polymarket's January 2026 guidance specifies a two-hour challenge period and a $750 bond. DEX oracles work differently again. A TWAP reads a pool's own price accumulators, not signed observations from off-chain reporters. Its verification depends on on-chain trading history and the averaging window, rather than agreement among data vendors.

How push and pull feeds update

Delivery determines when an off-chain price becomes an on-chain input and who pays. Chainlink describes each push feed as funded by its community of users. With pull delivery, the caller brings an update and pays transaction gas. Neither approach removes the need for freshness checks.

Figure 1 · Page team model on the real price pathUpdate frequency and price gapsSwitch delivery modes and adjust deviation thresholds, heartbeat or usage frequency to compare stored prices, market gaps, update counts and waits.
Feed
Deviation threshold
Heartbeat
Push feed: 0.5% deviation threshold, 1 hour heartbeatPage team modelGap between the market price and the stored price, 8 to 9 November 2026 (UTC)19:4301:4307:4313:4319:43Gap, largest in each 15 minutesGap that reached the thresholdUpdate after a deviationUpdate after the heartbeat
Updates in 24 hours7468 after a deviation, 6 after the heartbeat
Average gap0.20%between the stored and the market price
Longest wait1 hourbetween two updates
Updates in 24 hours6868 after a deviation, 0 after the heartbeat
Average gap0.20%between the stored and the market price
Longest wait1.9 hoursbetween two updates
Updates in 24 hours4332 after a deviation, 11 after the heartbeat
Average gap0.26%between the stored and the market price
Longest wait1 hourbetween two updates
Updates in 24 hours3535 after a deviation, 0 after the heartbeat
Average gap0.26%between the stored and the market price
Longest wait2.5 hoursbetween two updates
Updates in 24 hours277 after a deviation, 20 after the heartbeat
Average gap0.28%between the stored and the market price
Longest wait1 hourbetween two updates
Updates in 24 hours88 after a deviation, 0 after the heartbeat
Average gap0.38%between the stored and the market price
Longest wait8.4 hoursbetween two updates
Updates in 24 hours241 after a deviation, 23 after the heartbeat
Average gap0.38%between the stored and the market price
Longest wait1 hourbetween two updates
Updates in 24 hours22 after a deviation, 0 after the heartbeat
Average gap0.54%between the stored and the market price
Longest wait21.7 hoursbetween two updates
Updates in 24 hours95one with each user transaction
Average gap0.13%of the stored price, read between uses
Largest gap1.72%if a contract reads it with no age check
Updates in 24 hours23one with each user transaction
Average gap0.42%of the stored price, read between uses
Largest gap4.58%if a contract reads it with no age check
Updates in 24 hours3one with each user transaction
Average gap1.29%of the stored price, read between uses
Largest gap5.10%if a contract reads it with no age check
Who pays
The feed, about 181,000 gas per update. In this model, about 0.0118 ETH ($25.27) for the day
The live feed, same 24 hours
55 updates (44 after a deviation, 11 after the heartbeat), 0.0088 ETH of gas
Who pays
The feed, about 181,000 gas per update. In this model, about 0.0109 ETH ($23.22) for the day
The live feed, same 24 hours
55 updates (44 after a deviation, 11 after the heartbeat), 0.0088 ETH of gas
Who pays
The feed, about 181,000 gas per update. In this model, about 0.0069 ETH ($14.68) for the day
The live feed, same 24 hours
55 updates (44 after a deviation, 11 after the heartbeat), 0.0088 ETH of gas
Who pays
The feed, about 181,000 gas per update. In this model, about 0.0056 ETH ($11.95) for the day
The live feed, same 24 hours
55 updates (44 after a deviation, 11 after the heartbeat), 0.0088 ETH of gas
Who pays
The feed, about 181,000 gas per update. In this model, about 0.0043 ETH ($9.22) for the day
The live feed, same 24 hours
55 updates (44 after a deviation, 11 after the heartbeat), 0.0088 ETH of gas
Who pays
The feed, about 181,000 gas per update. In this model, about 0.0013 ETH ($2.73) for the day
The live feed, same 24 hours
55 updates (44 after a deviation, 11 after the heartbeat), 0.0088 ETH of gas
Who pays
The feed, about 181,000 gas per update. In this model, about 0.0038 ETH ($8.20) for the day
The live feed, same 24 hours
55 updates (44 after a deviation, 11 after the heartbeat), 0.0088 ETH of gas
Who pays
The feed, about 181,000 gas per update. In this model, about 0.0003 ETH ($0.68) for the day
The live feed, same 24 hours
55 updates (44 after a deviation, 11 after the heartbeat), 0.0088 ETH of gas
Who pays
Each user, as gas in the transaction that needs the price
Price at the moment of use
Signed off-chain moments before, checked on chain in the same transaction
Who pays
Each user, as gas in the transaction that needs the price
Price at the moment of use
Signed off-chain moments before, checked on chain in the same transaction
Who pays
Each user, as gas in the transaction that needs the price
Price at the moment of use
Signed off-chain moments before, checked on chain in the same transaction

Between uses, the stored price ages. Without an age check, the gap reaches 4.58% with hourly use and 5.10% with use every six hours.

At 1% or 2% with an hourly heartbeat, time triggers most updates while price gaps grow between them.

At 0.25% deviation, the model sends 68 to 74 updates with a smaller average gap, while the feed pays more gas.

Each user transaction carries its own signed price and pays gas, making the price fresh when that transaction uses it.

A 24-hour heartbeat lets the stored value wait for hours. At 2%, the model's longest wait reaches 21.7 hours.

At 0.5% and one hour, the model sends 43 updates. The live feed sent 55, with nodes watching continuously and querying several sources.

This page team model uses five-minute Uniswap v3 USDC/WETH pool samples from 8 to 9 November 2026.

During the 24 hours ending 19:43 UTC on 9 November 2026, Chainlink's Ethereum ETH / USD feed recorded 55 updates. Of these, 44 followed moves of at least 0.5%, and 11 followed the heartbeat. A 3.3% step occurred at 21:56 UTC on 8 November 2026 during a fall. The feed paid about 181,000 gas per update, 0.0088 ETH in total (page team calc). Thresholds and heartbeats differ by asset and by chain.

Check updatedAt against the heartbeat or an application limit. A zero timestamp marks an incomplete round. The answeredInRound field is deprecated, and most feeds no longer use minAnswer or maxAnswer. Pyth's getPriceNoOlderThan rejects stale data, while getPriceUnsafe can return arbitrarily old prices. Pyth suggests pausing new activity when the confidence interval is too wide relative to the price. On layer 2 networks with a sequencer uptime feed, check it and apply a grace period after outages. These checks belong in the consuming smart contract, not just its user interface.

How aggregation contains bad reports

Aggregation limits the effect of individual errors without certifying the underlying market. A median selects the middle observation rather than averaging every value. The interactive example separates a few faulty reporters from a shared source failure, which agreement cannot repair.

Figure 2 · Illustrative observations, OCR fault boundWhen the median holdsSet faulty observations among 21 reports, choose their direction, then compare the median and average with independent or shared sources.
Wrong reports
Wrong values
Sources
1 of 21 observations wrongIllustrative21 observations on a log scale, the minimum one OCR report from 31 nodes carriesHonest observationWrong observation
Median$2,1330.00% from the honest price
Plain average$2,1330.00% from the honest price
Honest price$2,133ETH / USD, 9 November 2026
Median$2,1330.00% from the honest price
Plain average$2,031-4.76% from the honest price
Honest price$2,133ETH / USD, 9 November 2026
Median$2,133+0.01% from the honest price
Plain average$3,352+57.15% from the honest price
Honest price$2,133ETH / USD, 9 November 2026
Median$2,131-0.10% from the honest price
Plain average$1,118-47.59% from the honest price
Honest price$2,133ETH / USD, 9 November 2026
Median$2,135+0.09% from the honest price
Plain average$14,321+571% from the honest price
Honest price$2,133ETH / USD, 9 November 2026
Median$1.00-99.95% from the honest price
Plain average$1,016-52.36% from the honest price
Honest price$2,133ETH / USD, 9 November 2026
Median$27,728+1,200% from the honest price
Plain average$15,540+629% from the honest price
Honest price$2,133ETH / USD, 9 November 2026
Median$2,773+30.00% from the honest price
Plain average$2,773+30.00% from the honest price
Honest price$2,133ETH / USD, 9 November 2026

One wrong value moves the average about 4.8% downward or 57% upward, while the median barely changes.

A shared source defeats agreement. A 30% DAI spike reached Compound in November 2020 despite signed price reporting.

Ten wrong observations among 21 reach the OCR limit for 31 nodes. The median remains between honest values.

Eleven wrong observations on the same side control the median, exceeding the fault bound in this example.

With no wrong values, the median and plain average agree around the illustrative honest price.

These observations are illustrative, not node measurements. Off-Chain Reporting requires fewer than one third of nodes to be faulty.

With fewer than a third of nodes faulty and at least 2f + 1 observations, the OCR median stays between honest values. Feed contracts allow at most 31 oracles. On 26 November 2020, a 30% DAI spike on one exchange reached Compound, and $88.4 million of collateral was liquidated. On 20 September 2021, two publishers' errors caused sharp dips in Pyth's BTC/USD price over about two minutes, reaching $5,402. On 12 May 2022, a paused feed left Venus pricing LUNA at about $0.107 while the market price was $0.01.

How oracle prices get manipulated

Valid signatures can carry a price from a market someone has moved. Reading a decentralized exchange pool does not establish an independent market value. The figure separates trade capital from attacker loss. Capital funds the trade, while the loss is what arbitrage takes back when prices return.

Figure 3 · Page team calculation from a pool read on 9 November 2026Capital, depth and averaging windowsChoose pool depth, a price move and holding blocks to compare trade capital, spot prices and 30-minute v2 and v3 averages.
Pool
Price move
Held for
Double on the spot price, held for 1 blockCalculation
Capital for one trade
$3.89 million of USDC, including the 0.3% fee. The attacker gets ETH back, and loses what arbitrage takes when the price returns
Spot price after the trade
$4,267 per ETH, from $2,133
TWAP window
150 slots of 12 seconds. The moved price counts for 12 of 1,800 seconds

The pool held 9.37 million USDC on 9 November 2026. Doubling takes about 3.9 million, trade capital potentially available through a flash loan.A pool with $100 million per side needs about $41.5 million to double. Depth raises trade capital requirements but cannot validate spot prices.With $100,000 per side, 13-fold pricing needs about $261,000. Thin pools featured in Rodeo Finance's July 2023 and Polter Finance's November 2024 cases. One 12-second block occupies 1/150 of the window. Doubling moves the v2 TWAP 0.67% and the v3 TWAP 0.46%.Ten doubled-price blocks move v2 by 6.67% and v3 by 4.73%. Longer holds increase exposure to arbitrage, while averaging delays real changes.Holding the move for three blocks means losing value to arbitrage each block, unless one proposer controls them all.

This page team calculation uses pool reserves from 9 November 2026 and Uniswap formulas, not observed attack costs.

A spot price can move within one transaction, often through a flash loan. Thin markets can make such manipulation cheaper. At bZx on 18 February 2020, moved exchange prices enabled borrowing against inflated collateral. The CFTC reported that Mango Markets' oracle price rose over 13-fold in 30 minutes on 11 October 2022 and that more than $110 million was withdrawn. Following the April 2024 jury verdict, a judge vacated two commodities convictions on 23 May 2025 and granted acquittal on the wire fraud count.

A TWAP dilutes brief moves but lags. Uniswap Labs' October 2022 analysis found two-block attacks on top pairs prohibitively expensive. Longer attacks were feasible but unlikely for smaller validators. It identified wide-range liquidity as the best mitigation. Since the Merge, validators know in advance when they will propose. One controlling two blocks in a row can hold a moved price without arbitrage. UwU Lend's June 2024 case showed one attacker moving several median inputs. IOSCO cited an estimate of over $400 million lost in 41 oracle manipulation attacks in 2022.

How blockchain oracle designs compare

The table compares reporting, verification, update timing, payment and failure modes rather than ranking products. Chainlink illustrates decentralized push reporting, while Pyth and Chainlink Data Streams illustrate pull delivery. Api3 illustrates a first-party oracle, where the data provider signs directly. A validator-run oracle places reporting inside chain consensus.

DesignWho reportsHow a contract checks itWhen it updatesWho paysMain riskExamples
Single sourceWho reportsOne operator or data providerHow a contract checks itOne key's signature or an allowed senderWhen it updatesOn the operator's schedule or on requestWho paysThe operator or the requesterMain riskSource error, outage or a stolen keyExamplesCompound's Open Oracle reporters (2020), single-source proof of reserve feeds
Decentralized push feedWho reportsA committee of node operatorsHow a contract checks itQuorum signatures on one report, median exposedWhen it updatesDeviation threshold or heartbeat, whichever comes firstWho paysNode operators send it, users fund the feedMain riskStaleness between updates, operator concentrationExamplesChainlink Data Feeds, Sky (Maker) Median with a one-hour delay, Chronicle Scribe
Pull feedWho reportsPublishers, aggregated off-chain and signedHow a contract checks itSignatures checked inside the user's transactionWhen it updatesWhen a user posts an updateWho paysThe user who needs the priceMain riskA consumer that skips the age checkExamplesPyth Core and Pyth Pro, Chainlink Data Streams
First-party oracleWho reportsThe data provider runs its own nodeHow a contract checks itThe provider's key signaturesWhen it updatesDeviation threshold, 24-hour heartbeat on Api3 MarketWho paysUsers buy plans to keep a feed activeMain riskEach provider is a single source for its dataExamplesApi3 (Airnode deprecated, now AirnodeHub and signed-api)
Optimistic oracleWho reportsAnyone who posts a bondHow a contract checks itNo proof. The claim stands unless disputed in timeWhen it updatesWhen a claim is assertedWho paysAsserters and disputers pay their own transactions and bondsMain riskA false claim stands if nobody disputes it in timeExamplesUMA Optimistic Oracle V3, Polymarket resolution (2-hour window)
DEX TWAPWho reportsThe pool itself, through tradesHow a contract checks itRead from the pool's own accumulatorsWhen it updatesAt most once per blockWho paysTraders who touch the poolMain riskThin pools and proposers with consecutive blocksExamplesUniswap v2 cumulative prices, Uniswap v3 tick accumulators
Validator-run oracleWho reportsThe chain's validatorsHow a contract checks itSet by consensus as a stake-weighted medianWhen it updatesEach vote period or each blockWho paysValidators, as part of consensus workMain riskCollusion above the stake thresholdExamplesTerra Classic x/oracle, dYdX Chain

Each row assigns trust differently: a provider's key, operator quorum, freshness check, bonded challenge, pool liquidity or chain validators. Combining a main data feed with a fallback or delay changes those dependencies rather than removing them. Maker's Oracle Security Module holds new prices for one hour so governance can react. For a DeFi smart contract on Ethereum, the relevant comparison is the failure behavior it can tolerate, including what happens when two inputs disagree.

How blockchain oracles developed

The timeline tracks changes in data delivery and the failures that exposed design assumptions. Early work focused on authenticated off-chain inputs. Later designs added price accumulators and shared reports, while public data publication expanded beyond market prices.

  1. October 2016

    Authenticated outside data

    The Town Crier paper on authenticated data feeds for smart contracts was presented at ACM CCS in October 2016, after first appearing in February 2016.

  2. September 2017

    A network of reporters

    The Chainlink white paper described a decentralized oracle network. It connected the need for outside data to blockchains' consensus protocols, which could not natively communicate with external systems.

  3. February 2020

    Borrowing against moved prices

    A flash loan moved Uniswap and Kyber prices used by bZx as an oracle. The attacker borrowed against inflated collateral, demonstrating manipulation of the input market.

  4. March 2020

    Updates fall behind prices

    During Black Thursday, rising gas prices delayed Maker oracle updates while ETH fell. Glassnode reported that more than $8 million in ETH was liquidated for zero DAI.

  5. May 2020

    Price history becomes readable

    Uniswap v2 launched on 18 May 2020 with price accumulators for TWAP oracles. Contracts could compare checkpoints over time instead of relying only on a pool's current price.

  6. February 2021

    One report per round

    Chainlink Off-Chain Reporting went live on 24 February 2021. Nodes exchanged signed observations off-chain, then submitted one report per round instead of a separate transaction from every node.

  7. October 2022

    Market moves reach lending

    According to the CFTC, Mango Markets' oracle price rose over 13-fold within 30 minutes after buying on three exchanges, and more than $110 million was withdrawn.

  8. August 2025

    Public statistics reach blockchains

    The US Department of Commerce published GDP data on public blockchains on 28 August 2025. Pyth and Chainlink helped disseminate this first federal publication of economic statistics through that route.

Where blockchain oracles still fail

A data feed can pass every signature check and still be unusable. Operational limits include source errors, delayed transactions and dependencies outside the application. These cards separate the conditions a protocol must monitor from the guarantees its oracle actually provides.

Sources can be wrong

Chainlink warns that reserve feeds often depend on one provider. Compound's November 2020 spike and Pyth's September 2021 errors exposed different source failures.

Updates can lag

Congestion delays publication, and a paused feed preserves an old value. Maker's March 2020 experience showed why an update schedule cannot guarantee timely delivery.

Thin markets move

Chainlink identifies low-liquidity assets as especially vulnerable to market manipulation. The FSB's February 2023 report also identified manipulation risk for oracles themselves.

Operators can concentrate

Chainlink's Ethereum ETH/USD feed lists 31 node operators (9 November 2026). Since 26 August 2026, Pyth Core requires three of five router signatures. FSB warned in February 2023 that shared oracles can propagate shocks.

Outages interrupt access

Base's 5 August 2025 disruption halted block production for 33 minutes. Sequencer checks detect downtime, and a grace period delays price use after recovery.

Integrators carry responsibility

Chainlink assigns developers responsibility for market integrity and application code risks (checked 9 November 2026). No court ruling on an oracle provider's liability for bad data was found when this page was checked.

Building and reviewing oracle integrations

We choose and integrate price feeds, write the surrounding checks, and test how a DeFi protocol responds when data is late, wrong or moved. PixelPlex is a software engineering company founded in 2007 and building in blockchain since 2013. Our oracle work focuses on contract behavior and failure handling, not treating a signed input as automatically safe.

PixelPlex case icon

In Echo's protocol design, the oracle role belongs to a committee of trusted accounts selected by ECHO holders. That committee reports market rates for coins such as MKR, DAI and BTC to the contract system. This design makes the reporting authority explicit rather than removing it.

  1. Source selection and safeguards

    In smart contract development, we select oracle sources early, code safeguards for delayed or unusual updates, and test them before deployment.
  2. DeFi checks and simulations

    Our DeFi contract development includes TWAP oracles, localized slippage limits, flash-loan simulations and property-based fuzzing to test application behavior.
  3. Exchange failure testing

    Our decentralized exchange development tests oracle manipulation, flash-loan attacks and extreme market volatility, going beyond checks for ordinary implementation bugs.
  4. Reserve and price planning

    For stablecoin development work, we prepare an oracle and price feed integration plan and provide on-chain proof of reserve.
  5. Insurance source validation

    Our blockchain insurance development includes source validation and fallback logic for oracle integrations, including rule-based flight delay cover.

Discuss the checks around your oracle integration

We can discuss a planned integration or review how an existing protocol handles delayed, unusual or disputed inputs.

Discuss oracle integration

Oracle FAQ

What is a blockchain oracle in simple terms?

A blockchain oracle supplies information that a smart contract cannot obtain directly from outside its chain. Prices, reserves and event results are common inputs. A blockchain oracle may be a reporting service or another mechanism, so the term does not imply an independent company or a guarantee of truth.

Why can't smart contracts fetch outside data themselves?

Different nodes could receive different answers to the same outside request. That would prevent consistent execution. For Ethereum and other deterministic chains, the input must become shared on-chain data before smart contracts use it. The agreement concerns the recorded input, not proof that an off-chain source was correct.

What does the oracle problem actually mean?

A contract can execute exactly as written and still produce a wrong result from bad data. The oracle problem concerns that dependency and the trust it introduces. Correctness, availability and incentives matter separately. Verifying signatures addresses authorship, but does not establish whether the reported event really happened.

How do push and pull oracles differ?

Push delivery updates a shared value when time or price-change conditions trigger publication. Pull delivery brings a signed update when a user needs it. The distinction concerns timing and payment, not automatic accuracy. Chainlink Data Feeds illustrate push delivery, while Pyth and Chainlink Data Streams illustrate pull delivery.

How can a contract identify a stale price?

A staleness check compares the update timestamp with the application's maximum permitted age. The acceptable age depends on its operation, not just the feed's publication schedule. A smart contract should reject an incomplete round and pause or change operating mode when the value is too old.

How do protocols reduce oracle manipulation risk?

Protocols can combine independent sources, a median, TWAP calculations or delays, freshness and confidence checks, and borrowing limits for thin assets. These controls reduce exposure without proving prices correct. EBA and ESMA reported in January 2025 that price manipulation accounted for 1% of DeFi theft from 2023 to October 2024.

Is a blockchain oracle related to Oracle software?

A blockchain oracle is unrelated to Oracle the software company. It is a generic name for a source of outside data used by smart contracts, not a product or company name. The shared word does not imply that the software company operates or endorses a blockchain oracle.
Sources (35)

Get updates about blockchain, technologies and our company

We will process the personal data you provide in accordance with our Privacy policy. You can unsubscribe or change your preferences at any time by clicking the link in any email.

Follow us on social networks and don't miss the latest tech news

  • facebook
  • X
  • linkedin
  • instagram
Stay tuned and add value to your feed