Hello everyone!
I’m posting here because this analysis heavily relies on web3 functions.
TL;DR: I’m trying to value 1 ETH using a simple (and flawed) analogy method consisting of an estimate of how much it would cost to operate the same simple service (a raffle) on a traditional website using credit cards and on web3. I end up with an estimate of $971 for 1 ETH.
Disclaimer: I don’t own any crypto and I’m not a professional programmer, I only have some notions. I’ve followed cryptocurrencies from afar since I first heard of bitcoin almost 10 years ago but there is MUCH I don’t know, as you’ll realise by reading this post.
For a new technology to be widely adopted, it has to either do a similar job for much cheaper, or a much better job for similar costs. Better job for much cheaper is obviously preferred but not necessary. Worse job is a no-go. Better job for higher costs might be possible but it’s a hard sell.
The case for web3 resides in its superior capabilities (mainly trustlessness imo) compared to a traditional website operating with credit cards and « trust me bro » guarantees. So a service running on web3 doesn’t have to be cheaper but it shouldn’t be widely more expensive either.
Here is my premise: if I can calculate the costs of a running a service with credit cards (in USD) and calculate the costs of running a similar service with web3 (in ETH), I can equate the two and find out the value of 1 ETH in USD.
I’m aware that this is no silver bullet because it’s only one example. Another service would yield different results. And it is all dependent on gas price, obviously.
So, here we go: I chose a simple service: a raffle. Every week, 100 people put 0.01 ether each on a smart contract and every week, the manager chooses pseudorandomly a winner who gets the whole balance (1 ETH). The contract then resets and is ready for another raffle. I took the code for this smart contract from the Ethereum Developer’s Guide by Stephen Grider and adapted it for the newer version of solidity so that it will compile:
pragma solidity ^0.8.7; contract Lottery { address public manager; address[] public players; constructor() public { manager = msg.sender; } function enter() public payable { require(msg.value > .01 ether); players.push(msg.sender); } function random() private view returns (uint) { return uint(keccak256(abi.encodePacked(block.difficulty, block.timestamp, players))); } function pickWinner() public payable restricted { uint index = random() % players.length; address payable winner = payable(players[index]); winner.transfer(address(this).balance); players = new address[](0); } modifier restricted(){ require(msg.sender == manager); _; } }
Remix tells me that the deposit cost is 360 400 gas and the execution is 385 065 gas. The enter() function is 48 742 gas. The pickWinner() function cost infinite gas apparently. So here I’m making the assumption that the cost of the pickWinner() function is simply the execution cost of the contract (385 065) minus the cost of the enter() function (48 742) since there are no other functions in the contract. Thus, the cost of the pickWinner() function is 336 323 gas.
The annual costs of running this contract are essentially: the deposit cost (once) + the enter() cost (100 times each week, so 52*100 = 5200 times) + the pickWinner() cost (once weekly so 52 times).
That gives me: 360 400 + 48 742 * 5200 + 336 323 * 52 = 271 307 596 gas per year
Now we need to put a price in ETH to this gas. The price of gas changes every day and obviously, assuming a price has a big impact on the results. So I’m picking a price (30 Gwei per gas) that is lower than the daily averages of the last two months so that this analysis isn’t dismissed on the grounds of hostility towards ethereum.
The annual costs of running this raffle are therefore: 271 307 596 gas * 30 Gwei/gas = 8 139 227 880 Gwei = 8.14 ETH
Now, let’s do the same exercice for a raffle service running on traditional web hosting and credit cards.
This article tells me that running a web shop through WooCommerce will cost me around $300 per year plus transaction costs. Those costs are 2.9% + 30 cents per transaction.
Assuming a market price of $2000 per ETH, each week, 100 people would wire $20 (0.01 ETH) to the website and each week, the manager would wire $2000 to the winner, assuming that's possible.
The annual transaction costs are therefore: 100 * 52 * (0.3 + 20 * 0.029) + 52 * (0.3 + 2000 * 0.029) = $7,608
Adding the costs of web hosting ($300), we end up with an annual cost of $7,908.
Now, for the last part, we simply equate 8.14 ETH and $7,908 to end up with 1 ETH worth $918.
I’m posting here because I know that this analysis is not perfect. I don’t pretend that I’ve found THE way to value ether. It’s just A way that I found reasonable. But I’m here to ask for your help to make it better. Since it’s only one particular case, it’s not worth it to go after every detail, but did you notice something that would massively impact the result? Are any of my assumptions completely wrong? What would you change and what is the result?
I’m here to learn and I’m looking forward to your comments :)
[link] [comments]
You can get bonuses upto $100 FREE BONUS when you:
💰 Install these recommended apps:
💲 SocialGood - 100% Crypto Back on Everyday Shopping
💲 xPortal - The DeFi For The Next Billion
💲 CryptoTab Browser - Lightweight, fast, and ready to mine!
💰 Register on these recommended exchanges:
🟡 Binance🟡 Bitfinex🟡 Bitmart🟡 Bittrex🟡 Bitget
🟡 CoinEx🟡 Crypto.com🟡 Gate.io🟡 Huobi🟡 Kucoin.
Comments