Skip to content

Commit 766e1ac

Browse files
author
Esau
committed
init
1 parent 94c0812 commit 766e1ac

File tree

9 files changed

+292
-71
lines changed

9 files changed

+292
-71
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"position": 3,
3+
"collapsible": true,
4+
"collapsed": true,
5+
"label": "Economics & Rewards"
6+
}
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
---
2+
title: Economics & Rewards
3+
description: Learn about Aztec network economics including reward distribution, sequencer and prover incentives, and the activity score system.
4+
displayed_sidebar: conceptsSidebar
5+
---
6+
7+
# Economics & Rewards
8+
9+
The Aztec network uses economic incentives to encourage honest participation and consistent operation. This page explains how rewards are distributed and what factors influence earnings.
10+
11+
## Reward Sources
12+
13+
Network participants earn rewards from two sources:
14+
15+
1. **Slot Rewards**: Protocol-funded rewards distributed each slot (inflationary)
16+
2. **Transaction Fees**: Fees paid by users for transaction processing
17+
18+
## Slot Rewards
19+
20+
The protocol mints new tokens each slot as rewards. The current slot reward is **400 $AZTEC**, split between sequencers and provers:
21+
22+
| Recipient | Share | Amount Per Slot |
23+
|-----------|-------|-----------------|
24+
| **Sequencers** | 70% | 280 $AZTEC |
25+
| **Provers** | 30% | 120 $AZTEC |
26+
27+
This value can be adjusted through governance.
28+
29+
### How Slot Rewards Flow
30+
31+
```mermaid
32+
flowchart TD
33+
Issuer[Issuer Contract] -->|Mints tokens| Dist[Reward Distribution]
34+
Dist -->|Claims per slot| Rollup[Rollup Contract]
35+
Rollup -->|70% · 280 $AZTEC| Seq[Block Proposer]
36+
Rollup -->|30% · 120 $AZTEC| ProverPool[Prover Reward Pool]
37+
```
38+
39+
## Sequencer Rewards
40+
41+
Sequencers earn rewards for successfully proposing and finalizing blocks:
42+
43+
- **Slot share**: 70% of each slot reward (280 $AZTEC) goes to the block proposer, paid when the block is finalized on L1
44+
- **Transaction fees**: Sequencers collect fees from users; a portion is burned via the base fee mechanism, and the remainder is split between sequencer and prover
45+
46+
## Prover Rewards
47+
48+
Provers earn rewards for generating validity proofs that finalize blocks:
49+
50+
- **Slot share**: 30% of each slot reward (120 $AZTEC), distributed among provers who participated in the epoch
51+
- **Transaction prover fees**: Provers receive a portion of transaction fees, with the rate set by protocol parameters
52+
53+
### Activity Score and Reward Distribution
54+
55+
Prover slot rewards are not split equally. They are distributed based on each prover's **activity score**, which measures consistency of participation. The score:
56+
57+
- **Increases** by 125,000 per epoch of active proving
58+
- **Decreases** by 100,000 per epoch of inactivity
59+
- **Maximum**: 15,000,000 points
60+
61+
A prover's share of the reward pool is determined by a quadratic penalty formula:
62+
63+
```
64+
shares = k - (a × (maxScore - score)²) / 1e10
65+
```
66+
67+
Where `k = 1,000,000`, `a = 1,000`, and the minimum share is `100,000`.
68+
69+
At maximum activity score, a prover receives the full `k` shares. As the score drops, the quadratic term reduces shares increasingly aggressively, meaning small drops have minimal impact but extended inactivity significantly reduces earnings.
70+
71+
This design rewards long-term, consistent provers and discourages sporadic participation.
72+
73+
---
74+
75+
:::tip Learn More
76+
- [Proof of Stake](../proof-of-stake/index.md) - How staking and validation work
77+
- [Governance](../governance/index.md) - How protocol parameters (including rewards) can change
78+
- [Running a Prover](../../operators/setup/running-a-prover.md) - Technical setup for provers
79+
:::

docs/docs-network/concepts/governance/index.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,18 @@ import Image from "@theme/IdealImage";
1010

1111
The Aztec network is governed by its community through an onchain governance system. This system allows the network to upgrade rollup contracts, adjust parameters, and evolve over time while maintaining security and decentralization.
1212

13+
## Quick Summary for Token Holders
14+
15+
If you're a token holder looking to participate in governance, here's what you need to know:
16+
17+
| Your Situation | How to Participate | What Happens |
18+
|----------------|-------------------|--------------|
19+
| **I have staked tokens** (as sequencer or delegator) | Nothing required - you're already participating | Your voting power is automatically delegated to the rollup, which votes "yea" on proposals that passed sequencer signaling |
20+
| **I want to vote differently than the default** | Delegate your voting power to yourself | You can cast your own votes on proposals |
21+
| **I have tokens but haven't staked** | Lock tokens in the Governance contract | You gain voting power without staking rewards or slashing risk |
22+
23+
For step-by-step instructions, see [Voting on Proposals](../../users/voting.md).
24+
1325
## Design Goals
1426

1527
The governance system is designed around two core requirements:

docs/docs-network/concepts/proof-of-stake/index.md

Lines changed: 78 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Validators must stake tokens on L1 to join the sequencer set. The staked tokens
2929

3030
**Activation Delay**: After staking, a sequencer needs to wait for an activation period before they can start proposing new blocks. This delay provides time for the network to recognize the new validator.
3131

32-
**Unstaking Delay**: Unstaking requires a delay to allow for slashing of dishonest behavior that may have occurred while the validator was active.
32+
**Unstaking Delay**: Unstaking requires a delay to allow for slashing of dishonest behavior that may have occurred while the validator was active. See [Unstaking](#unstaking) for details on the specific delay periods.
3333

3434
### Stake Delegation
3535

@@ -104,6 +104,83 @@ Because transaction data and attestations are not posted onchain, automatic slas
104104

105105
A sequencer must aggregate BLS signatures on slashing proposals and post them to L1 for slash execution. When a sequencer's balance is slashed below `MINIMUM_STAKING_BALANCE` (e.g., 50%), they are removed from the sequencer set.
106106

107+
## Unstaking
108+
109+
Unstaking is the process of withdrawing your staked tokens from the network. When you initiate a withdrawal, two delays start **in parallel**:
110+
111+
1. **Staking exit delay** — enforced by the Rollup contract
112+
2. **Governance withdrawal delay** — enforced by the Governance contract (since staked tokens also carry voting power)
113+
114+
You must wait for **both** to pass before finalizing your withdrawal. The effective exit delay is whichever is longer.
115+
116+
### Staking Exit Delay
117+
118+
The Rollup contract enforces an exit delay to allow time for pending slashing conditions to be detected, and to prevent validators from quickly exiting after misbehaving.
119+
120+
#if(testnet)
121+
**Testnet staking exit delay:** 172,800 seconds = **2 days**
122+
#else
123+
**Mainnet staking exit delay:** 345,600 seconds = **4 days**
124+
#endif
125+
126+
### Governance Withdrawal Delay
127+
128+
Because staked tokens carry voting power via the GSE (Governance Staking Escrow), the Governance contract also enforces a withdrawal delay. This prevents governance attacks where someone could vote on a malicious proposal and immediately exit before it executes.
129+
130+
The governance withdrawal delay is calculated as:
131+
132+
```
133+
withdrawalDelay = (votingDelay / 5) + votingDuration + executionDelay
134+
```
135+
136+
#if(testnet)
137+
**Testnet governance values:**
138+
139+
| Component | Value |
140+
|-----------|-------|
141+
| Voting Delay | 43,200s (12 hours) |
142+
| Voting Duration | 86,400s (1 day) |
143+
| Execution Delay | 43,200s (12 hours) |
144+
| **Calculation** | **(43,200 / 5) + 86,400 + 43,200 = 138,240s** |
145+
| **Governance Withdrawal Delay** | **~1.6 days** |
146+
#else
147+
**Mainnet governance values:**
148+
149+
| Component | Value |
150+
|-----------|-------|
151+
| Voting Delay | 259,200s (3 days) |
152+
| Voting Duration | 604,800s (7 days) |
153+
| Execution Delay | 604,800s (7 days) |
154+
| **Calculation** | **(259,200 / 5) + 604,800 + 604,800 = 1,261,440s** |
155+
| **Governance Withdrawal Delay** | **~14.6 days** |
156+
#endif
157+
158+
### Effective Exit Delay
159+
160+
Since both delays start at the same time, the effective wait is whichever is longer:
161+
162+
#if(testnet)
163+
| Delay | Duration |
164+
|-------|----------|
165+
| Staking exit delay | 2 days |
166+
| Governance withdrawal delay | ~1.6 days |
167+
| **Effective exit delay** | **2 days** |
168+
#else
169+
| Delay | Duration |
170+
|-------|----------|
171+
| Staking exit delay | 4 days |
172+
| Governance withdrawal delay | ~14.6 days |
173+
| **Effective exit delay** | **14.6 days** |
174+
#endif
175+
176+
### Unstaking Process
177+
178+
1. **Initiate withdrawal**: Begin the exit process via the [Staking Dashboard](https://stake.aztec.network/)
179+
2. **Wait for the exit delay**: Your tokens remain locked during this period
180+
3. **Finalize withdrawal**: After the delay, complete the withdrawal to receive your tokens
181+
182+
For step-by-step instructions, see the [Unstaking Guide](../../users/staking.md#unstaking).
183+
107184
---
108185

109186
:::tip Ready to participate?

docs/docs-network/operators/operator-faq.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,27 @@ Error: Unable to get blob sidecar, Gateway Time-out (504)
170170
- Running your own provides better reliability and eliminates timeouts
171171
- See the [prerequisites guide](./prerequisites.md) for L1 infrastructure setup
172172

173+
## L1 Node Requirements
174+
175+
### Do I Need an L1 Archive Node?
176+
177+
No. You do not need an L1 archive node to run an Aztec node. Snapshot sync is the recommended approach and works with standard L1 full nodes.
178+
179+
To use snapshot sync, set `SYNC_MODE=snapshot` in your configuration.
180+
181+
#if(testnet)
182+
### Consensus RPC and Blob Availability (Testnet)
183+
184+
On testnet, your L1 consensus (beacon) RPC endpoint must be able to serve **all blob data**. Standard beacon nodes only retain blobs for approximately 18 days (4096 epochs), which may not be sufficient.
185+
186+
To meet this requirement, you need a consensus node configured as either a:
187+
188+
- **Supernode**: Stores all 128/128 data columns regardless of validator staking weight. This provides full blob availability.
189+
- **Semi-supernode**: Stores enough data columns (typically 64/128) to reconstruct blobs. This is sufficient for testnet participation.
190+
191+
This requirement is specific to testnet. On mainnet, standard beacon nodes with default blob retention are expected to be sufficient.
192+
#endif
193+
173194
## Funding and Resources
174195

175196
### Insufficient L1 Funds
@@ -192,6 +213,8 @@ Error: insufficient funds for gas * price + value
192213
- [Alchemy Sepolia Faucet](https://www.alchemy.com/faucets/ethereum-sepolia)
193214
- [Infura Sepolia Faucet](https://www.infura.io/faucet/sepolia)
194215

216+
For Aztec testnet tokens (TST), use the **[Aztec Testnet Faucet](https://testnet.aztec.network/)**.
217+
195218
2. **Maintain sufficient balance**:
196219
#else
197220
**Cause**: Your publisher address doesn't have enough ETH to pay for L1 gas fees.

docs/docs-network/users/index.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,28 @@ Use your staked tokens to vote on governance proposals that shape the future of
2121

2222
---
2323

24+
#if(testnet)
25+
## Getting Testnet Tokens
26+
27+
To participate in the Aztec testnet, you'll need testnet tokens. Visit the **[Aztec Testnet Faucet](https://testnet.aztec.network/)** to get started.
28+
29+
The faucet provides:
30+
- Testnet TST tokens for staking and governance participation
31+
- Instructions for connecting your wallet
32+
33+
You'll also need Sepolia ETH for L1 transaction fees. See the [Sepolia Faucets](#sepolia-eth-faucets) section below.
34+
35+
### Sepolia ETH Faucets
36+
37+
For L1 operations (staking, governance transactions), you need Sepolia ETH:
38+
39+
- [Sepolia Faucet](https://sepoliafaucet.com/)
40+
- [Alchemy Sepolia Faucet](https://www.alchemy.com/faucets/ethereum-sepolia)
41+
- [Infura Sepolia Faucet](https://www.infura.io/faucet/sepolia)
42+
#endif
43+
44+
---
45+
2446
## Before You Start
2547

2648
Understanding these concepts will help you make informed decisions:

docs/docs-network/users/staking.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,31 @@ Before staking, understand that your stake can be partially slashed if:
5656

5757
See [Slashing Concepts](../concepts/proof-of-stake/#slashing) for detailed information.
5858

59+
## Unstaking
60+
61+
When you want to withdraw your staked tokens, you must go through an unstaking process with a mandatory exit delay.
62+
63+
#if(testnet)
64+
The exit delay for testnet is **2 days**. For a breakdown of how this is calculated, see [Unstaking Concepts](../concepts/proof-of-stake/#unstaking).
65+
#else
66+
The exit delay for mainnet is **14.6 days**. For a breakdown of how this is calculated, see [Unstaking Concepts](../concepts/proof-of-stake/#unstaking).
67+
#endif
68+
69+
### How to Unstake
70+
71+
To unstake your tokens, use the [Aztec Staking Dashboard](https://stake.aztec.network/). The dashboard guides you through the unstaking process:
72+
73+
1. **Initiate withdrawal**: Select your validator and begin the exit process
74+
2. **Wait for the exit delay**: Your tokens remain locked during this period
75+
3. **Finalize withdrawal**: After the delay, complete the withdrawal to receive your tokens
76+
77+
If you've delegated stake, contact your operator or use the delegation interface to request unstaking.
78+
79+
### Important Considerations
80+
81+
- **Slashing Risk**: You can still be slashed during the exit delay if misbehavior is detected from when you were active
82+
- **No Rewards During Exit**: You do not earn staking rewards during the exit delay period
83+
5984
## Next Steps
6085

6186
- [Delegate your stake](./delegation) if you prefer not to run infrastructure

0 commit comments

Comments
 (0)