Chainlink Data Feeds – How Future Resilient is a Chainlink Price Feed

chainlinkdata-feeds

Obviously, someone is paying for updating the feed that we are retrieving for free, in fact I found this discussion where is explained that it’s not really economical or fair for those backers who are paying to support them for everyone else, and access control will be built in at some point.

I'm using price feed on Rinkeby and everything works fine, but is there some chance that a feed will no longer be supported? Will be possible to use price feed on mainnet without any concerns at some point?

Let's say, I hard-code an address and an abi into a smart contract, will that smart contract be good forever?

Best Answer

Pricing/Economics of Data Feeds

The economics of Chainlink decentralized oracles are similar to Ethereum and other L1s. Chainlink Node operators are economically incentivized to run nodes as long as people use their services.

With an L1, the node operators get paid to mine blocks, and as soon as people stop paying for the blocks, the operators would stop supporting the chain. It works the same way with Chainlink, except instead of mining blocks, the nodes are delivering data to a blockchain. Once it stops being economical for nodes to deliver data or external execution, the nodes wouldn’t do it.

That being said, same as ETH, we see node operators consistently upping participation since there is so much demand for data on-chain, just like there is a ton of demand for blocks in an L1.

Chainlink price feeds are (presently) paid for by the protocols that are sponsoring them, which isn’t really fair since (as you have correctly observed) anyone can consume the price feed data for free.

On Going Support of Feeds

There are a few scenarios where a feed might change or no longer be supported:

  1. The token changes address (We’ve seen this before, where a token “splits” and it wouldn’t make sense to support 2 feeds)
  2. The Node operators stop getting paid (Maybe the protocols using them no longer want them)
  3. The token becomes too volatile for the node & consumers (For this reason, it’s a best practice to use high liquidity tokens for a feed as that helps absorb the volatility a bit)
  4. The economic model changes so everyone pays their fair share. (This hasn’t happened, but it might happen to make things more fair for those paying)

A best practice if you’re nervous about the state of a feed, would be to add a check to see when the last update on a feed was. If the last update was not recent enough for your requirements (you can check timestamp data using the API), you can freeze functionality that depends on the feed.

Related Topic