Over the past few years, a number of dAPPs have emerged that require users to lock a certain amount of Ethereum in their smart contracts in order to access their services. The aim of our new metrics, now live on SANgraphs, is to measure the amount of ETH locked away in these contracts.
Our new charts showcase full historical and real-time data of ETH locked in 5 of the most popular dAPPS of the abovementioned variety:
- Maker DAO
Here’s an overview of each system and the amount of ETH they currently store.
At the moment, Maker DAO is the single biggest dAPP in terms of locked ETH, and by a wide margin. In return for locking Ethereum it issues DAI, a USD-pegged stablecoin. Any user of the platform is able to issue DAI tokens by locking ETH or burn DAI to get the collateralized Ether back.
Maker DAO’s Working Principles
The central element in the Maker system is the contract called SaiProxyCreateAndExecute (0x526af336D614adE5cc252A407062B8861aF998F5). The process for issuing DAI tokens is as follows:
- To issue DAI, you have to call the SaiProxyCreateAndExecute contract with the createOpenLockAndDraw() method. The transaction also includes the desired amount of Ether to be locked.
- The contract changes Ether to WrappedEther (WETH) and sends it to the SaiTub contract (0x448a5065aebb8e423f0896e6c5d525c040f59af3). This contract stores all WETH that is locked in the system.
- Next, SaiProxyCreateAndExecute contract generates PETH tokens equivalent to WETH.
- SaiProxyCreateAndExecute issues DAI tokens and sends it to the user.
- When being issued DAI, the user forms a debt position. Over time, a so-called Stability Fee is accumulating for the position. To unlock his/her Ether, the user has to burn the issued DAI tokens and pay the stability fee in MKR. In turn, PETH are burnt and WETH converted back to ETH and sent to the user.
WETH and PETH tokens
Wrapped ETH is used within the Maker system and is the equivalent of ETH compatible with the ERC-20 standard. More than 85% of all WETH tokens in existence are locked in the Maker network (with the SaiTub contract)
Besides WETH, MakerDAO also utilizes Pooled ETH (PETH), another ERC-20 compatible token. It is used directly as a collateral asset to issue DAI. By issuing DAI, a user locks PETH and can get it back by burning DAI.
ETH Locked Volume
At the moment, the Maker system stores more Ether than all other mentioned systems combined.
The current balance of the SaiTab contract (the contract which stores all WETH) is 1.79M WETH. Here is the contract’s balance over time:
Ethereum Name Service
Ethereum Name Service (ENS) offers a secure way to address resources both on and off the blockchain using simple, human-readable names (like example-name.eth). The ENS system consists of two main parts:
- A registrar contract (0x6090a6e47849629b7245dfa1ca21d94cd15878ef), which stores all domains, its owners and resolvers domains.
- A number of Resolvers – the contracts that transform domain names into contract addresses. This is achieved by hashing the name and calling the addr() method of the resolver contract. This contract provides the user with a smart contract address linked to the provided name.
Another important part of the ENS system are the auction contracts, which help facilitate bids for domain names. Following a bidding process, the top bet is stored on the auction contract. To compute the Ether locked in the ENS network, we need to sum the balances of all auction contracts.
- To register the name in ENS, you have to start the auction by sending the transaction to a Registrar contract.
- In turn, the ENS-Register creates a unique contract and the bidding begins.
Following the auction, all users get their ETH back except for the winner, whose funds are stored on the contract in return for the desired name. ENS also takes a small commission fee from all the participants.
ETH Locked Volume
There are 428,807 ENS auction contracts today. Their total balance is 161K ETH. At its peak on June 3rd, 2017, the balance of ETH locked in ENS reached 752k ETH.
Compound is a protocol that aims to easily create money markets – token pools with an algorithm for calculating interest rates based on a token’s supply and demand.
Users invest or borrow tokens into pools and earn or pay the interest. As a result, a single money market for an individual ERC-20 token is created. A money market is essentially a smart contract which stores a list of given market participants and their deposited or lent balances.
Compound’s discerning feature is that the process of investing and/or lending is fully automatized. Users don’t (have to) care about who gets their tokens or when the tokens are paid back.
The key element of Compound’s system is the contract called MoneyMarket
(0xbd8e0def19aabbc3751b0b5ee0558cadffce759b). It allows users to lend or borrow tokens.
- To lend your tokens to the system you have to call the Supply() method of the MoneyMarket contract. After that the interest rate is paid to the user. Remember, the interest rate is calculated according to the supply and demand for a particular token.
- A user is able to get his tokens back with the Withdraw() method.
- There’s also an option to borrow tokens. The main stipulation is that the borrower’s balance must be higher than the borrowed sum. That said, the borrower’s tokens are not frozen and the interest rate is levied on the tokens.
- To repay the loan, a repayBorrow() method is called.
ETH Locked Volume
Currently, a total of 74.5k ETH is locked in Compound’s contract. It is a historical maximum for the Compound network and has been growing steadily in the past few months.
Uniswap is a decentralized protocol for an automated token exchange on Ethereum. Its key feature is that trades happen without makers, made possible by special exchange contracts that essentially double as liquidity pools.
Any user is able to replenish a pool by sending ERC-20 tokens and an equivalent amount of Ether. In return, the user earns some share of the total commission fees for the contract’s trades. A user’s share is proportional to his funds in the pool.
- To exchange Ether for tokens, a user has to send ETH to an exchange contract.
- The exchange contract gets a needed amount of tokens from the pool and sends it to the user.
- AddLiquidity() method is used to replenish the liquidity pool. Once called, the user receives ERC-20 pool tokens proportional to his/her share of funds in the pool.
ETH Locked Volume
Uniswap contracts currently lock 29.3k ETH. Same as Compound, Uniswap-locked Ether is steadily growing and has just recently reached its all time high (31.7k ETH), before retracing slightly.
Augur is a decentralized prediction market protocol where users can bet on the outcome of predefined future events.
To be able to bet, a user has to send his Ether to a Delegator contract placed at 0xd5524179cB7AE012f5B642C1D6D700Bbaa76B96b.
Creating a Prediction Market
When creating a new market, the user must specify the following parameters:
- Expiration date – the date when a predefined event happens.
- Resolution source – a trustworthy source that will signal the event’s outcome.
- Reporter – a user that writes a report about the event’s outcome.
There are two collaterals needed to create a market on Augur:
- A validity bond paid in ETH, which acts as a guarantee for the creation of a valid resolution source. A validity bond is paid back if and only if the outcome is valid.
- A designated report ‘no-show’ bond paid in REP. It acts as a guarantee for choosing the right reporter. The reporter must sound off on the outcome in 3 days after the expiration date.
Bets in Augur are created as follows:
- To bet on a certain market, a user sends ETH and triggers a publicTradeWithLimit() method of Augur’s Trade contract.
- The trade contract then calls the depositEtherFor() method of the Delegator contract (and sends the user’s Ether) to update a user’s balance.
- The trade contract calls the createOrder() method of the createOrder contract.
ETH Locked Volume
At the moment, 4k ETH is locked in the Augur system. The historical maximum of 14.67k ETH was reached on February 2nd, 2019.
At the moment, all described systems combined lock a grand total of 2.058M ETH. The overwhelming majority – more than 1.7M Ether – is locked away in the MakerDAO system. Here are the 5 systems ranked by the amount of ETH stored:
- Maker DAO (1.79M ETH)
- ENS (161k ETH)
- Compound (74.5k ETH)
- Uniswap (29.3k ETH)
- Augur (4k ETH)
And here’s the combined volume of ETH locked in all 5 dAPPs over time:
The total amount of Ether locked in these 5 projects constitutes 2.23% of Ethereum’s total supply. Interestingly, this cumulative balance exceeds the current balance of all miner pools and miners on the Ethereum network combined (2.05M ETH locked vs 1.2M ETH owned by miner pools and miners).
You can now access and analyze historical and real-time data for ETH locked in all 5 systems (as well as their combined balance) on SANgraphs.