Cardano Reward Calculator
Reading time: 4 min

The calculator shows how much reward can be expected for Pools with different parameter and different settings of the Cardano network and the variability of this return using Monte Carlo simulation.

Disclaimer: this is a prototype and is based on our interpretation of how the Cardano monetary policy and the Reward calculation works to date. No guarantees are given to the accuracy of the predictions.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Cardano Monetary Policy

A recap of sections of monetary policy, taken from this [Link]

Staking rewards for delegators and stake pool operators come from two sources:

  • Transaction fees - fees from every transaction from all blocks produced during every epoch go into a virtual ‘pot’. (field 2.1)
  • A fixed percentage (ρ = 0.3%) of the remaining ada reserves is added to that pot. (fields 1.10 and 2.2)
  • Monetary expansion - a certain percentage (τ = 20%) of the pot is sent to the treasury, and the rest is used as epoch rewards. (fields 1.11 and 2.4)
  • Reserve is the difference between the ADA max supply of 45bn and current supply, which is constantly increasing. (fields 1.6 and 1.7)

Cardano Reward Formula

A recap of the reward formula, taken from [Link] and formal specification pdf [Link]

During each epoch, rewards are distributed amongst all stakeholders who have delegated to a stake pool, either to their own stake pool, or another pool. These rewards are auto-generated by the protocol itself, and are not managed by the stake pool operators. Rewards come from two sources:

  • All transaction fees: collated from the set of transactions included in a block that was minted during that epoch.
  • Monetary expansion: involves distinguishing between the total supply of ada and the maximal supply of ada. The total supply consists of all ada currently in circulation, as well as the ada in the treasury. The maximal supply is the maximal amount of ada that can ever exist. The difference between these two figures is called the reserve. During each epoch, a fixed, (but parameterizable) percentage of the remaining reserve is taken from the reserve and used for epoch rewards and treasury, where the amount being sent to the treasury is a fixed percentage of the amount taken from the reserve.

The following formula outlines how the rewards mechanism works. The available rewards amount, transaction fees, plus monetary expansion, is denoted by R. First, the share of all available rewards that a specific pool can receive is determined, as follows:

These elements are defined as follows:

  • R - total available rewards for this epoch (field 2.5)
  • a0 - pledge influence factor (can be between 0 and infinity) (field 1.13)
  • z0 - relative pool saturation size, i.e. 0.2% based on a number of desired pools (k=500) (field 1.14)
  • σ - stake delegated to the pool (including stake pledged by the owners and stake delegated by others) (field 4.1)
  • σ’ = min(σ, z0) - as σ, but capped at z0 (field 4.2)
  • s - stake pledged by the owners (field 4.3)
  • s’ = min(s, z0) - as s, but capped at z0 (field 4.4)

Note that z0, σ and s are all relative, so they are fractions of the total supply, as they all lie between zero and one.

The rewards that are produced by this formula are now adjusted by pool performance: We multiply by β/σ, where β is the fraction of all blocks produced by the pool during the epoch.

For a perfectly performing pool, one that produces all blocks that it can produce, this factor will be one, on average. The actual value will fluctuate due to the stochastic nature, or random process of the Ouroboros Praos consensus algorithm.

After pool rewards have been calculated and adjusted for pool performance, they are distributed amongst the pool operator and the pool members, or people who delegated part, or all of their stake, to the pool. This happens in several steps:

  • First, the declared costs are subtracted and given to the pool operator;
  • Next, the declared margin is subtracted and given to the pool operator;
  • Finally the remainder is split fairly (proportional to delegated stake), amongst all people who delegated to the pool, including the pool owners.

How to Use

  • Let the blockchain sync -  This can take up to a minute after which you should see all green in "0 - Sync. Status to Cardano Blockchain" section of the calculator. If it is not 100% then try refreshing the page. If the sync state is still not 100% then come back in a few minutes.
  • Enter a Stake Pool ID of your choice to load its parameters. For example: pool1dts0h87pntgmsffp6mjtnahfht2dz5zjjeeujhzmtn6wgctcuzd . The calculator will show the expected reward distribution for that pool;
  • Enter different Stake Pool Ids to check how their distribution of reward compares to each other;
  • Change any of the input cells that are editable. The cells that are locked will recalculate automatically;
  • Every time you make a change all the reward calculations will refresh including the Monte Carlo simulations;
  • Use a wide screen monitor if possible. On a desktop the columns on the left is where to tweak parameters and the section of the right is where the results are displayed.

The number of Monte Carlo simulations is currently set at 500. This is a reasonable balance that I found between accuracy and speed of execution. From a strictly scientific method this is quite a low number of simulations and something in the range of 10,000 is probably more appropriate. For this reason you will see that the Expected Reward (in Section 5) can deviate from the Average Simulated Reward (in Section 6)

Monte Carlo simulation assumes that there will be the same amount of reward to distribute across all pools throughout the year. For this to happen the fees from transactions need to increase substantially.

0 - Sync. Status to Cardano Blockchain

Sync StatusSyncing ... time
Sync Percentage0.00%
Current Epoch Number0
Current Epoch Progress0.0%
Pool ParametersLoading ... time


1 - Cardano Static

1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
1.10
1.11
1.12
1.13
1.14
2 - Reward Available for Distribution

plus2.1
plus2.2
equals2.3
minus2.4
equals2.5
3 - Stake Pool Parameters

plus3.1
plus3.2
equals3.3
3.4
3.5
4 - Pool Sigmas

4.1
4.2
4.3
4.4
5 - Pool Expected Rewards

Key metrics of a Pool. Solved by applying the Reward formula and then extrapolating it to an annual return. No simulation is done at this step. The Annual pool reward can vary significantly for smaller pools. See next section 6


5.1Block Probability0.00000%
5.2Expected N Blocks in Epoch0.00
5.3Expected N Blocks per Year0.0
5.4Pool Reward per Epoch ADA0
5.5Pool Reward per Year ADA0
5.6Annualized Pool Reward0.00%

6 - Pool Simulated Rewards

Monte Carlo simulation run on the pool's economics by randomly generating 500 scenarios and computing the Average and the different percentiles of those scenarios.



This is useful to judge the expected return of a Pool and what type of variability can be expected due to luck. The range between 90th and 10th percentiles indicates that you have an 80% chance of the yearly return falling between those ranges.


MetricPool Operator's ReturnDelegator's ReturnTotal Pool Return
90th Percentile0.00%0.00%0.00%
75th Percentile0.00%0.00%0.00%
Average0.00%0.00%0.00%
75th Percentile0.00%0.00%0.00%
10th Percentile0.00%0.00%0.00%

Table below shows the last Monte Carlo Simulation over 1 year (73 epochs). This table illustrates the type of calculation that goes into each of the 500 simulations. Tick the checkbox to see the detail.

7 - Comparison Across Pools

Comparison of the reward distribution for pools that you have tried. Wider bars mean that there is more room for luck to get a high reward, or a low reward - this is normally the case for pools with a smaller stake. Narrower bars indicate more certainty in the amount of the reward that the pool will generate. Note that this assumes that the pool is set-up correctly and will produce blocks in ALL its allocated slots.

Try different pool ids in Section 0 for this analysis to populate


Pool IdSimulated Reward Distribution