SNS dashboard for dapp level analysis

Hey guys, I work with Power Your Own Research (PYOR). We are proposing to build an analytics dashboard for the SNS governed dapps. The objective is to increase participation by stakeholders in SNS. Our hypothesis is that, providing the necessary data in terms of the rewards one could potentially earn by participating will encourage participation in the SNS. The following are the metrics we feel will be appropriate. Would love to hear what the community thinks of this and we can work on what is best based on the consensus.

  1. Daily/Event based Available Voting Rewards (Maturity) - A chart that displays total rewards being distributed for each dapp from the day we go live. This will allow stakeholders to see potentially how much they could make.

  2. Maturity chart per neuron per dapp - Gives a more realistic view of how much a stakeholder could make. Users can see the click on any neuron and see how maturity has grown for them over time based on activity in governance, tokens staked, dissolve delay etc. Data will be available from the date we go live.

  3. Neuron Leaderboard (based on voting and number of followers) - Gives users data to make effective decisions on which neuron to follow for a specific topic they are not familiar with.

  4. Overall Voting Participation - To persuade stakeholders to get involved early and potentially gain more rewards. This will also help the DAO to tweak reward parameters if needed.

Building this dashboard will also provide “historical” data from the day we go live.

PYOR (Power Your Own Research) is a blockchain data analytics company built for Institutions. It offers an interpretation layer on top of blockchain data, which helps institutions make investment theses or defend their portfolios.

PYOR has worked with clients like:
Ribbit Capital - Providing insights for their investment theses.
Compound - Built data dashboards for them as per their requirement (PYOR | Compound).
Tezos - Wrote a report on the state of Tezos (https://twitter.com/IndiaTezos/status/1682348666961661954).
Quickswap - Built dashboards for them as per their requirement (https://dune.com/pyor_xyz)

Started in October 2022, PYOR has raised $4 million in seed round and is backed by marquee investors like Nic Carter’s Castle Island Ventures and prominent angels like Balaji Srinivasan. The founders of PYOR have over 10 years of experience in the crypto industry and were previously CXOs at CoinSwitch - India’s largest crypto exchange valued at over $2 billion and backed by investors like a16z, Tiger Global, Sequoia Capital and Paradigm Capital.

10 Likes

Cool project!

Do you see this as a generic dashboard accessible and the same for all users. Or specific to logged in users?

Thanks!

For the given metrics it makes more sense as a generic dashboard no? A user level analysis only plays a role after they stake and part-take in governance.

I think this is a much needed app idea for the ICP ecosystem. We actually need it for SNS and the NNS. I’m sure DFINITY would even be willing to support this project with a grant.

This is desirable information, but I suspect you don’t need to provide a maturity chart per neuron. The max maturity APY that can be earned is the same for all neurons (as long as they vote on all proposals) that have the same configuration of dissolve delay and age. It doesn’t matter if it is a large neuron or a small neuron. You can actually calculate APY from just a few public parameters including total token supply, annualized reward rate, total voting power that exists, max age bonus, and max dissolve delay bonus. If you calculate the results for max dissolve delay bonus and zero age bonus, then you can scale all other results based on dissolve delay and age. You could present this information using a dissolve delay slider like they do on the dashboard. On second thought, you could just as easily allow the user to enter their neuron ID so you can perform the calculation for max maturity APY on demand.

Knowing max maturity APY is very helpful, but what would be really awesome is if you could tell individuals if they are actually achieving max maturity. Maturity on a per neuron basis is not public information, which means you would need to analyze votes cast. Currently, the dashboard is not reporting votes from each neuron on each SNS proposal, which probably means the SNS canister is not recording it either and also means you can’t calculate actual maturity for SNS neurons. However, you could do it for the NNS and there is currently no place where it is being done as far as I know. The NNS governance canister keeps history of the last 100 votes for every neuron and it keeps history of all proposals. At the rate of proposals we have been seeing lately, the last 100 votes represents about 10 days of proposals. Hence, on a per neuron basis, you could determine what percentage of max available rewards that individual neurons have actually earned by looking at their actual votes cast relative to the number of proposals for a given time period. In fact, you could be very specific about which proposal topics are not getting their votes. This means you could highlight deficiencies in neuron Followee configurations. This could also be done on demand based on public information by simply entering an NNS neuron ID.

Since neuron maturity is not public information, it would be a challenge to keep accumulated maturity updated on a per neuron basis. Any given neuron could spawn or stake their maturity and you wouldn’t have any way of knowing that it happened, which means your reported maturity and their actual maturity would be out of sync. Of course, this would only be evident to the neuron owner.

This is another highly useful metric that doesn’t exist for SNS or NNS. Knowing which neurons are reliable voters is very helpful. You could even provide a service that allows people to register their neurons, including a Proof of Neuron Ownership. For example, you could ask people who are registering their SNS neuron to toggle the auto-stake maturity field of their neuron configuration. This auto-stake maturity status is public information, so you can verify each state change programmatically. This configuration has no impact on the neuron as long as it is returned to the original state before the daily reward distribution. For the NNS, this Proof of Neuron Ownership algorithm could be based on a toggle of the Joined Neuron Fund setting.

This type of Proof of Neuron Ownership might also be of interest to SNS or NFT teams who want to reward long term commitments (e.g. NNS 8YG). That might drive a lot of people to use your service.

Anyway, PYOR sounds like a highly qualified team with plenty of prior experience developing this type of capability. I really hope you bring it to the ICP ecosystem. I think it would help a lot of people.

1 Like

Thank you for this! This is extremely insightful. We shall take this into account before drafting our final proposal. The objective of this post was to see if the community finds this beneficial. Delighted to see that our work could be useful.

1 Like

Both make sense to me, that’s why I was wondering what’s your take.

Good luck!