Discrepancy in Total Staked Calculation: StakingRegistry vs. Stake Dashboard

Hi Aztec team and community,

I’m currently building an explorer and indexer for the Aztec network, specifically focusing on on-chain metrics like Total Value Staked, APR, and provider-side analytics.

While indexing the staking data, I’ve encountered a significant discrepancy between my computed totals and the figures displayed on stake.aztec.network. I’ve previously shared some of these points in Discord and Telegram, but I’d like to consolidate them here to get a clearer technical picture.

Current Implementation & Observations

To calculate the total staked amount, I am using the following approach:

Contract: StakingRegistry at 0x35b22e09ee0390539439e24f06da43d83f90e298.

Logic: I iterate through all current providers, scan StakedWithProvider logs for each, and sum the stake.

Assumption: Each successful delegation corresponds to a 200,000 AZTEC stake slot.

The “Other” Category

On the official dashboard stake.aztec.network, there is a row labeled “Other”, which seems to account for a large portion of difference between StakingRegistry Providers calculation and data from staking dashboard. As I understood these are sequencers registered directly (self-staked) rather than through the standard staking provider flow.

Questions:

  1. Source of Truth: What is the recommended on-chain strategy to compute the actual total stake? Does the dashboard pull data from additional contracts or specific events beyond StakedWithProvider in the StakingRegistry?

  2. Handling “Others”: Are there plans to normalize these direct/self-staked sequencers by attributing them to real provider entities or enriching their metadata?

  3. Roadmap: Should indexer developers implement custom logic to separately aggregate these “direct” sequencers now, or is there an upcoming change/fix that will map these into the standard provider structure?

  4. Documentation: Is there a spec or a public tracking issue regarding the “Others” category and how these direct registrations are handled in the long term?

This information is crucial for us to ensure our indexer provides accurate data to the users. Any guidance or links to relevant technical documentation would be greatly appreciated.

Thanks!

Hi @m1amgn

  1. Source of Truth: What is the recommended on-chain strategy to compute the actual total stake? Does the dashboard pull data from additional contracts or specific events beyond StakedWithProvider in the StakingRegistry?

The source of truth for the total amount of staked will always be the onchain GSE contract found at 0xa92ecFD0E70c9cd5E5cd76c50Af0F7Da93567a4f

In particular you can query the totalSupply() to figure out the total amount of stake deposited in the system. Etherscan link here.

  1. Handling “Others”: Are there plans to normalize these direct/self-staked sequencers by attributing them to real provider entities or enriching their metadata?

Not at the moment since sequencer registration is permissionless. However, sequencers can self-declare their own metadata on platforms like dashtec.xyz

Questions 3 and 4 were not very clear to me, but if you provide more information I will answer again.

1 Like

Hi @amin,

thank you for your reply.

Can you clarify the following discrepancy for me:

The source of truth for the total amount of staked will always be the onchain GSE contract found at 0xa92ecFD0E70c9cd5E5cd76c50Af0F7Da93567a4f

In particular you can query the totalSupply() to figure out the total amount of stake deposited in the system. Etherscan link here.

According to that smart-contract function total supply of tokens in GSE contract is 357 938 000 AZTEC.

According to https://stake.aztec.network/ total amount of staked tokens is 889 800 000 AZTEC.

The difference is 531 862 000 AZTEC.

So there is some misunderstanding, because if the source of truth can be only GSE contract, that amount doesn’t correlate with amount on official Aztec staking dashboard. Even if we’ll substract amount of “Other” “self-registered sequencers” there won’t be the amount corresponding to GSE total supply.

Questions 3 and 4 were not very clear to me, but if you provide more information I will answer again.

Those questions about fixing that issue of “self-registered” sequencers and line “Other” on Aztec staking dashboard, because fetching and collecting providers staking data is simple job, but trying to find all “self-registered” sequencers is the complex challenge. And I know that Aztec developer team knows about that issue and was planning to fix that by attributing “self-registered” sequencers to real providers. So I was interested in is there a plan of fixing that issue.

@m1amgn

The 889.8m includes all the sequencers who are still in the queue. Their stake has not yet been deposited to the GSE contract. This is good feedback though because it would be helpful to show the total stake deposited vs stake in transit.

Note that this number does not discriminate between self-sequencer and delegated-sequencer registration.

1 Like