The Ecosystem Activity Score
The Ecosystem Activity Score
How do we measure impact through on-chain activity?
It would be helpful to have a quantitative measurement of an accounts activity in the ecosystem. This measurement, or Ecosystem Activity Score, could be used for a variety of things, including:
- Tracking power users
- Tracking apps which bring in new users
- Governance decisions (voting power)
- Airdrop allocations
- Public goods funding
The resulting dataset would be akin to an activity registry. This registry is ideally decentralized, composable, and free to access.
Calculating The Score
Variables that contribute to overall ecosystem activity:
- ALGO Balance
- ALGO Staked
- Delegated Stake
- Transaction fees paid
- Transaction count
- Total Value Locked (TVL)
- Unique ASAs Owned
- App usage (number of app interactions)
- Number of unique apps used
- Apps created (txn count of apps)
- Creating on-chain assets
- Minimum balance requirement (MBR)
- Age of account
- NFD Social Verifications
- DIDs
There are potentially other variables that deserve to be included. I ask for the communities help in coming up with additional variables.
Entities or individuals could use an NFD to link all of their accounts and aggregate their accounts activity.
The calculation would look something like:
Activity Score = w1 * b(balance) + w2 * s(stake) + w3 * d(delegated_stake) etc…
Where:
- w = weight of the variable
- Each variable is normalized
Normalization:
Normalized Value= (Value−Min) / (Max−Min)
Calculating the Overall Activity Score:
Activity Score=∑(Normalized Value×Weight)
This calculation will output a score which could be used to compare accounts and their on-chain activity. No calculation will be perfect, and there will be people unhappy with their scores no matter what.
It’s important not to discriminate against or unfairly advantage any one group when coming up with variables, weights, or min-max ranges. Ideally these things could be voted on, but we don’t yet have the ability to easily run votes, something that this data could be used for in the future (customizable voting tools).
Example

Find the spreadsheet here. Please duplicate it if you want to play around with the data yourself.
Scores will always be between the values 0 and 1.
While any metric can be botted, there is a cost associated with every one of these activities, weather it’s time, ALGO paid, or ALGO locked up.
You can try to deal with bots in a few ways, primarily by weighting those easily gameable metrics the lowest. However, the ranges which are picked also factor into the score, meaning we must come up with some framework on how to determine those ranges, specifically the max. Some ideas on picking the max are:
- The top account for that variable (the actual max)
- The top x% of accounts for that variable
- Sorted by ‘cost of max’
- Voting for values per variable
- Use round numbers (like in my example above)
How can you help?
Share your ideas!
I need the most feedback on:
- The list of variables
- The corresponding weights
- How to determine the max of the range per variable
This piece originally appeared on Medium .