The Tellor Machine series is an in-depth look at why Tellor works the way it works. Along the way we will look back at some early social media posts about the oracle problem, examining what a truly decentralized oracle should be. Enjoy!
It’s been said that, the term “cryptoeconomics” was first used by some well known developers working on Ethereum in 2014-2015. As of today it’s not yet formally defined in the Merriam-Webster (or any) dictionary. The top result comes from Wikiversity, but basically cryptoeconomics is a cool new mishmash of economic theory and computer science. It’s the process by which we try to understand how blockchain and smart contract applications can be designed to reward participants and influence their behavior.
In discussions about blockchain oracles, we’re used to hearing about cryptoeconomics as it applies to security. But, there is another cryptoeconomic-able part of the process that’s just as important if not as contentious: what is the incentive to write data on-chain in the first place?
Case study: Bitcoin
Before we discuss oracles specifically, let’s define some characteristics of good decentralized cryptoeconomic incentives. A great case study here would be Bitcoin block rewards. Since 2009 the Bitcoin network has been almost perfectly live, and the people who make it go don’t need to be trusted. Mining Bitcoin is work that anonymous people get paid to do automatically. They don’t have to know each other, and they can come and go as they please.
The Bitcoin “machine” is virtually impossible to shut down because it runs on open source software that would be extremely difficult to eradicate from the internet and thousands of physical computers around the world all at the same time. Everyone, everywhere in the world has access to the stuff that makes it go, and everyone who uses the network shares the burden of compensating the block producers.
So, by looking at Bitcoin we can find three key characteristics for good decentralized cryptoeconomic incentives (we’ll come back to all of these eventually):
- open-source code
- Open network with no controls on who can compete for incentives
- Incentives delivered indiscriminately to the first person who does the work necessary to mine a block.
- Costs for maintenance of the system are shared by users of the network in the form of transaction fees and coin supply “inflation”
What makes Oracle Data “go” Today?
The four ideas outlined above can be applied for incentivizing oracle data submissions…but oracle design considerations have become complicated in today’s competitive markets. For most projects producing or consuming oracle data, censorship resistance has been pushed aside in favor of short term business development and fundraising goals.
Trusted oracles are thriving in today’s highly speculative crypto dev environment. For example, Chainlink using their treasury to subsidize gas costs for their node operators. The Node operators are rewarded in LINK as they say, but the system is not actually open for anyone to compete for these rewards.
It’s not surprising that this subsidized oracle data would be popular, and this is an interesting precedent for the future of DeFI.
When a user integrates a subsidized price feed (with no backup), the functionality of their entire product becomes dependent on the existence of the company paying for that feed. For now, users are willing to accept this risk in exchange for the free price feeds. For the most part, Chainlink has proven itself to be trustworthy; however, too much dependence on one oracle service introduces tremendous risk for the future of DeFi moving forward. In the writer’s opinion, it’s naive to assume that trusted oracle oligarchs will be incorruptible, or immune to pressures from regulators.
How Tellor Makes Decentralized Cryptoeconomic Incentives work for Oracle Data
Tellor was originally created to be a smart contract based Proof of Work oracle with block rewards like Bitcoin. (It was awesome imo but) When that system proved to be a bit too costly, the proof of work component was simply removed in favor of a slow drip TRB reward for the first reporter (no whitelist) who is willing to submit a value to the database.
…But there is actually a problem with this. The reward is paid to the first reporter who calls the Submit Value function regardless of what data is submitted. It’s almost always something commonly in demand, like the ETH/USD spot price. Other data types can be requested with the tip function, but because half of tips were burned (to prevent gaming the governance) tipping ultimately proved to be an inefficient and unpopular solution for users.
Thankfully, Autopay is coming to mainnet Tellor soon.
Note: Tellor data accuracy is verified by anyone paying attention. The community checks submissions with monitoring software looking for opportunities to dispute a reporter. A successful dispute wins the disputer 100 TRB strait from the problematic reporter’s wallet.
Anonymous staked reporters on the permissionless Tellor network are always waiting for opportunities to make a profit, so all that’s required to get a data update is a properly timed reward that’s larger than the gas cost to submit the data. With Tellor’s Autopay contract, these incentives are delivered indiscriminately to the first person who does the work.
By allowing for customizable decentralized cryptoeconomic incentives, Autopay makes Tellor an unstoppable oracle data machine that can work for any smart contract application.
Example: I have a lending protool that needs the EUR/USD spot price updated every 30 minutes on Ethereum mainnet. I can simply go to the Autopay contract and call the setupDataFeed function to start an on-chain process that automatically asks the Tellor reporter network to update my data. (we even have a handy front end for doing so)
At the time of writing, It costs about 0.004-0.01 ETH to submit data to the tellor database depending on how busy the network is. (The price that Tellor reporters are paying for Submit Data can be seen here) One TRB is worth about 0.01 ETH, so I’ll set the reward to be 1 TRB every 30 minutes for the first reporter who submits a fresh EUR/USD spot price. If I want to fund this data feed for one month, I’ll deposit [48 TRB/day x 30 days] = 1440 TRB to fund the feed.
Does this seem like a lot of money to pay for oracle data? It shouldn’t. Fees on the Ethereum network are the same for everyone. When oracle companies are subsidizing high frequency data on Ethereum mainnet, the gas costs can easily smash 5 figures in USD every day for a single price feed.
Cryptocurrency has been around for about 13 years. It’s a relatively short history, and no one knows what will happen in the future, but the market has clearly shown that decentralized protocols like Bitcoin and Ethereum are more valuable than centralized protocols like XRP and Solana.
Why do people pay huge fees to use Ethereum over centralized EVM compatible L1s? Because they know that it will always work. It’s actually decentralized, and it’s worth it.
Why should users pay for Tellor when they can get Chainlink data for free? Because proper cryptoeconomic incentives mean that it will always work. It’s actually decentralized, and it’s worth it.
Thanks for reading!
Check back in a couple weeks for Part 2 of the Tellor Machine series that will be about Telliot. Telliot is open-source reporting software for the Tellor oracle that can do amazing things! If you’re hungry for more information about Tellor visit tellor.io.
If you have any questions about Tellor, come talk to us in the discord. Have a great day!