LIDO Nation Votes On-Chain for K and minPoolCost parameters

Participating in the Cardano Foundation's on-chain poll experiment on mainnet

Recently, we’ve been covering each of Cardano's 30+ protocol parameters. You can catch up and learn about them on the Lido Minute Podcast or read the transcripts.

Alongside the millions of lines of Haskell code that make up the Cardano blockchain network, there is a set of about 30 parameters. These parameters are the mechanisms that control how the Cardano Blockchain works. These parameterized knobs and switches are a way to give the Cardano community control over the network when the Voltaire era of development is realized.

The worldwide Cardano community is currently deep in thought and debate about Voltaire via a Cardano Improvement Proposal (CIP 1694). Lido Nation will be hosting a workshop on CIP 1694 in Minneapolis on Jun 23, 2023 to provide feedback on the proposal and help move it closer to implementation and adoption. Many other community members will also be hosting workshops over the next couple of months. The full list of local and virtual events will be posted to 1694.io in the coming week.

With all this as the backdrop, the Cardano Foundation is also now running an experiment to see how the community might hold an on-chain poll of stake pool operators and their delegators. In a blog article published to the foundation’s website, they cite the “importance of testing mechanisms that actively involves all members of the Cardano ecosystem” as a strong motivation for this experiment.

The Experiment

The big idea is to run a poll to be completed and recorded to the blockchain. Stake pool operations like LIDO will have two epoch (Epoch 412 and 413), a total of five days starting May 15, 2023, to answer a one-question survey. After epoch 413 concludes, delegators will get 2 epochs (epochs 414 and 415) to signal their alignment with their stake pool’s decisions by either remaining delegated to their current pool or switching their delegation to a different pool. At the start of Epoch 416, the Cardano Foundation will take a snapshot of pool delegation as vote weight to generate a report. On-chain results will also be published to adastat.net/polls and cardanoscan.io/spo-polls/ for the entire community to review and discuss.

The Poll Question

Which setup would you prefer to be put in place from Q3 2023 onwards?

  • Keep k at 500 and minPoolCost at 340 ada.
  • Keep k at 500 and halve minPoolCost to 170 ada.
  • Increase k to 1000 and keep minPoolCost at 340 ada.
  • Increase k to 1000 and halve minPoolCost to 170 ada.
  • I would prefer to abstain.
  • None of the above.

What is K

K parameter is concerned with decentralization. Its function is to set the bar for how many pools represent a minimum desirable level of decentralization. K is currently set to 500. This means, given the amount of ada in circulation, each of 500 pools could be fully saturated with 64M ada. At the saturation point, rewards are maximized for all participants; a pool that is oversaturated will experience diminished rewards, encouraging more decentralization.

To understand how K sets the floor, consider that if less than 500 pools existed, the pools that did exist would not be making beaucoup bucks. With less than 500 pools minting blocks, there would be rewards that just did not get paid out. Thus, the community would be incentivized to open more pools in order to reach K - the minimum decentralization threshold - in order to access all potential rewards.

K does not limit how many pools can mint blocks - that is still largely controlled by overall delegation. For example, consider a pool that is in the “Top 500” with 30M delegation, vs a pool that is in spot 501 with just 29.5M delegation. These two pools will mint roughly the same number of blocks, if everything else is identical. The K parameter provides the floor for decentralization, not the ceiling. The ceiling that it does provide is on what the saturation level is, and therefore on what the earning potential of a single pool can be. As K is increased, that ceiling is lowered.

What is minPoolCost

minPoolCost is the minimum fixed fee the pool is allowed to ask for as payment for running the servers on behalf of delegators. This amount is first taken from the pool’s reward pot, before the pot is automatically distributed to delegators based on their delegation size by the network. The minPoolCost is currently set to 340 Ada. A pool can specify that their fixed fee is more than this amount, but they cannot opt for less.

Some observations

When Cardano first launched stake pools and open delegations, delegators were able to earn an annual percentage of ~4.5% simply by holding ada in a wallet you own the passphrase to and staking it. Today that amount is ~3.5%; delegator rewards have gone down.

In Sep, 2020 with a server with 8Gb of RAM, 2Gz cpu and 20Gb of disk you could run a Cardano pool. The May 2023 minimum recommendation was 24Gb Ram, 2Gz CPU and 250Gb disk (up ~3x). Cost is going up for stake pool operators.

While Cardano (via the K parameter) wants there to be a minimum of 500 active pools, there are currently 2,899 active pools with at least 1 lovelace staked, according to pooltool.io. According to cexplorer.io, about 1100 of these pools participate in block production every five days. It seems, then, that K is working extremely well. It set the incentives to call for a minimum of 500 pools participating, and we consistently get over 1100! There is little reason to think that increasing K will lead to a much bigger number here. What it would do is reduce the maximum rewards that a pool can make, decreasing the real or potential profitability of individual pools. Looked at another way: the “ceiling” for how decentralized block production can be is NOT set by K, but by the natural limits of server cost vs profitability.

The truth is that we can’t anticipate all the effects of increasing K to 1000, but it appears to us that the potential cons outweigh the pros. The oft-cited upside would be that instead of 1,100 pools producing blocks, there could be even more. We do like decentralization around here! However, we think this is not a strong or compelling potentiality; the professional “pool as a business” may well choose different, more profitable, ways to deploy their capital - ultimately reducing the number of pools that successfully mint 100% of blocks assigned. This brings us to the biggest “con” that we see - that businesses will find other ways to reduce cost, either by running lower quality servers, or finding other revenue streams and getting out of the pool operator business altogether.

On the other hand, reducing the minPoolCost to 170 ada is an easy way to return more reward value to delegators. The intent of minPoolCost has always been that it is there to cover “minimum” pool costs of running a server. It was never intended to provide a primary revenue stream for pool operators. Even though we are in a bear market, the value of ada has gone up a lot since minPoolCost was first set, such that we feel an adjustment is in order.

Lido’s vote

LIDO will vote to Keep k at 500 and halve minPoolCost to 170 ada. By reducing the minPoolCost, 170 more ada will remain in the pot to be distributed to Lido delegators. This has the potential to increase the rewards you see in your wallet! As our overall delegation grows, we will continue to be able to cover our costs and keep creating great content, tools, and services for our community.

What happens next

Cardano is a delegated proof of stake blockchain, meaning stake pools get their right to produce blocks and power to vote from your delegation. As such, your voice matters.

If you are a LIDO delegator please leave a comment below with your stake address if you do not already have a login on the site. If you already have a login to the site, just log in and voice your opinion. If there’s enough recommendation for a different vote, we will evaluate changing our vote.

We plan to cast our vote at 12:00 AM UTC May 19, 2023 or shortly after.

Lido is also on Cardano over coffee twitter spaces Mondays, Wednesdays, Fridays for open discussions. Our DM, email, telegram, and discord are also open if you want to connect outside of the comment section below.

Thanks for delegating to Lido and supporting free educational content and training for the next generation of Cardano Software Developers, Engineers and Architects.

Get more articles like this in your inbox

Was the article useful?

Or leave comment
Commenter avatar

Thanks for this article! It helped me improve my understanding of how K parameter could impact the network and SPOs.

Darlington Kofa avatar

Glad it helped! Happy to hear!

avatar
You can use Markdown
No results
close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00