Shiden/Astar dApp Staking
One of the biggest issues facing new projects building decentralized, smart contract powered applications (dApps) is finding financial support to kickstart their endeavors. Unfortunately many successful dApps in the crypto space get their initial financial support from venture capitalists and large financial firms. Projects, in return, give away a healthy share of their revenue, either in the form of a private agreement or in the form of a sizable portion of their native token. Other financial strategies for beginning projects include private token sales, selling early access NFTs, winning grants, or obtaining traditional bank loans. Since there is no easy way for the common crypto enthusiast to support early dApps, these projects are leaving a vast amount of potential financial support on the table. The Shiden network aims to fix that.
Shiden is one of Kusama’s dApp hubs where EVM-based projects can launch their smart contracts seamlessly on Shiden. Users in the Shiden ecosystem can stake their SDN on projects to split inflation rewards with the dApp projects they support. Not only does this facilitate regular financial support to dApps but it also incentivizes projects on Ethereum to deploy their applications on Shiden giving them access to the myriad amenities of a Kusama parachain. Shiden collators propagate transactions within the parachain and submit the data to the Kusama relay chain whose validators propagate that data to every other parachain in the ecosystem. Therefore, dApps that launch on Shiden have an immediate bridge of access to every other parachain on the Kusama network allowing for integrations that are far more difficult to achieve on the Ethereum network. Also, with the addition of recent cross-chain messaging between Moonriver, Statemine, Karura, and Bifrost, Shiden dApps will have simple access to substrate-based tokens if similar messaging is enabled on the Shiden network.
The possible technical integrations on Shiden are so numerous and nuanced that they deserve their own article. However, here we will examine staking rewards within the ecosystem, the recent evolutions of the reward scheme, and a potential improvement to the current system.
Validator Staking vs. dApp Staking
Shiden’s token economics were originally designed in a way to make it equally rewarding for stakers to either secure the network by nominating validators or support projects by staking on dApps while maintaining the optimal 1:1 staking:liquid ratio across the whole ecosystem. According to the published tokenomics model, the optimal amount of tokens staked on validators is five times greater than the optimal amount staked on dApps, however dApp stakers receive 25% of total inflation rewards. This mismatch in dApp staking rewards and the ratio between validator-to-dApp staking will cause an inefficient equilibrium once validator staking is fully operational. In the meantime, the team hopes the higher dApp staking rewards will incentivize SDN holders to stake more toward dApps.
You might wonder, what is dApp staking and how does it work? While the schematic looks somewhat complicated it’s actually quite intuitive. Essentially, the more SDN staked on a Shiden-deployed dApp the more inflation rewards go to that dApp. This incentive structure holds projects accountable because projects that neglect their Shiden-deployed application will lose nominators and will receive less funding from inflation rewards.
DApp operators receive 50% of the inflation designated to the dApp ecosystem (i.e. 25% of total inflation rewards) and stakers also receive 50% (i.e. 25% of total inflation rewards). The inflation rewards used to be split 80–20 between operators and stakers respectively which was the ratio necessary to maintain the optimal 5:1 staking ratio between validators and dApps while also achieving maximum inflation rewards for the whole ecosystem. But due to concerns in this post, the team decided to temporarily change the ratio. It is not extremely important to understand all of the parameters or equations that maintain the economic balance, but in case you are curious the documentation is quite thorough.
While the Shiden ecosystem is carefully designed the Shiden team is aware of a few community concerns relating to the current state of dApps deployed on the parachain.
The free-rider problem
Since 80% of the inflation rewards designated to the dApp ecosystem were going to operators, some users believed that projects were receiving too much funding while not contributing to the ecosystem. The team responded to this concern by changing the split to 50–50, but another possible solution would be to create two categories on their dApp store: pre-launch and live. Pre-launch projects could still be staked on and stakers would receive their portion of inflation rewards for that project, however the operator would not be able to withdraw their inflation rewards until they launch. Failed projects that never launch would have their locked rewards burned. This is, in my opinion, a good policy that would not cause too many negative consequences. It might make projects less eager to launch their dApp on Shiden but creating a higher barrier of entry is the tradeoff for subduing a free-rider problem.
Too few projects
Since Shiden is a fairly new project itself, there are not many dApps yet deployed in the ecosystem. Thus, these few projects share a generous amount of SDN from inflation rewards. Until there are more projects on the network, Shiden has changed the dApp inflation rewards to a 50–50 split between operators and stakers (i.e. operators and stakers each receive 25% of the total inflation) to increase how many tokens are staked toward dApps and to reward stakers at a higher rate. But let’s examine all of the consequences that come with this policy. Once decentralized validator staking is live, the per-token rewards will equalize across the ecosystem causing the validator staking-to-dApp staking ratio to settle into a ratio of 2:1 which is not the ideal ratio stated in the tokenomics model. If parameters are configured as stated in the tokenomics model, the entire ecosystem will deflate and result in a deadweight loss. Total inflation would decrease from 20% to 11.944% — validators take on half of this deadweight loss (i.e. instead of earning 10% of the token supply per year they would earn 5.972%), dApp operators would earn just over one third what they once did (i.e. instead of earning 8% of the token supply per year they would earn 2.986%), while dApp stakers increase their earnings by a mere 0.986 percent points (i.e. instead of earning 2% of the inflation per year they would earn 2.986%).
Shiden should change the optimal validator staking-to-dApp staking ratio from 5:1 to 2:1 if they want to avoid economic inefficiency once validator staking is fully rolled out. However, changing the ratio with this policy presents many tradeoffs to consider. It really boils down to the philosophy of reward distribution. Does Shiden want to decrease its inflation rate to have a better long-term fiat evaluation? If not, are they willing to change the optimal ratio between validator stake and dApp stake? If they change the optimal ratio, are they content with less tokens securing the network? Shiden expressed that changing the reward distribution between operators and dApp stakers is only temporary and would change back once more projects are on-boarded. It is difficult to determine whether changing the optimal ratios would be necessary for a short term policy, but this is exactly why Shiden exists — to experiment.
Adam’s Armchair Solution
I am by no means a tokenomics expert, but I do have a good background in game theory and economics which drives my imagination. When pondering a possible solution to Shiden’s problem of having a few projects receiving a large proportion of rewards, I came up with an idea that incorporates tying the payout ratio between stakers and operators to a dApp’s proportion of transactions on the network. Of course, it isn’t clear whether this dynamic solution is technically possible so for now it is only a hypothesis.
The general idea of this proposal is to establish a dApp reward equilibrium between operators and stakers when a dApp’s stake proportion is equal to the proportion of transactions on the network. When a dApp’s stake proportion exceeds their proportion of transactions on the network, the project receives a greater proportion of the stake rewards than stakers do, encouraging either more transactions and/or less stake. When a dApp’s proportion of transactions on the network exceeds their stake proportion, stakers receive a greater proportion of the rewards encouraging less transactions and/or more stake. It is my belief that this incentive structure will help bootstrap staking on new dApps that are utilizing the network while stifling support for over-popular dApps that don’t utilize the network.
Let’s look at an unstable dApp staking ecosystem with this policy in place. Note that this assumes that the ideal reward split between operators and stakers will go back to 80–20 respectively, and that the validator staking-to-dApp staking ratio is 5:1.
While mathematically sound, there are some potential issues with this solution. First off, it is easily gamed — projects could simply spam transactions to attract more stakers and if every project does this to compete with each other, it would flood the Shiden network with transaction spam. Additionally, it makes it difficult for new dApps to earn funding upfront since their proportion of transactions on the network might be low at first. However this would encourage competition amongst projects since a vast user base can outperform a bot as far as submitting transactions goes, and transaction fees would make a spamming bot expensive. And though it would not favor new and undeveloped applications, it would encourage already established projects to launch on Shiden while encouraging new projects to be more prepared upon launch in regard to functionality and marketing.
I am not a developer so I do not know exactly how difficult this would be to implement into the runtime. I imagine it would be a difficult feat to figure out a way to calculate transaction proportions and assign weights to dApps on-chain. Perhaps it’s a trivial task for the master developers on the Shiden team. In any case, it’s just an idea from an armchair economist.
While Shiden dApp staking needs some improvements, the concept is well-established and the technology is working as a minimally viable product. Ethereum-native smart contracts can be easily deployed on the Shiden network so that dApp projects can tap into a more diverse user base while also receiving funding for operating their application on Shiden. With how easy Shiden makes it to deploy dApps on their chain and with the incentives to operators, it’s an obvious integration for every blockchain application looking to expand its funding, user base, and interoperability.