Baking Bad Insurance is a service for bakers reducing the risk of lost profits for their customers. A baker replenishes a special security deposit, which is used to cover missing payments in case of an insured event. The funds on the deposit are delegated back to the baker, therefore his staking balance remains unchanged, and his lost profit is negligible.
The amount of funds on the security deposit determines the percentage of insurance coverage, i.e. how much of the unpaid rewards will be compensated upon the occurrence of the insured event. The value of insurance coverage is constantly changing, and since the insurance rating of the baker is tied to it, we recommend replenishing the security deposit with a small margin. In our turn, we notify the bakers about approaching the boundary values when they need to take action.
cycle — current cycle;
bond — baker’s own funds, consider they are used entirely as a security
deposit (edge case);
stakingBalance — baker’s staking balance, including bond and delegated
amount;
totalRolls — total rolls for the cycle
+ preservedCycles cycle.
fee — baker’s service fee;
payoutDelay — number of cycles from the moment baker receives a reward till
he makes a payout to a delegator (default is
preservedCycles + 1);
selfDelegatedAmount — total amount of affiliated delegations;
threshold — chosen coverage level;
minInsuranceAmount — minimum insurance deposit required.
In case of an insured event, we will compensate for the unpaid rewards for the period calculated as:
This is the minimum time required to detect the deviation in payments, and to be able to switch delegates without loss of income.
The total amount of generated rewards per cycle:
The total amount of baking security deposit locked per cycle:
Baker’s capacity is the maximum delegated amount that his bond can secure. It cannot be determined with 100% accuracy because the number of baked blocks/submitted endorsements can vary from cycle to cycle. We will use an approximation that works in most cases.
First, we get the current number of whole rolls, then we can calculate the probability of being chosen as a baker or an endorser:
Knowing the total amount locked for a cycle, one can calculate maximum baker capacity:
Now we can determine adjusted win rate and estimated reward for n cycles:
First we need to determine delegators reward share, then we can calculate the deposit amount according to the chosen coverage level:
If a delegate has little clients or none at all, the predefined minimum deposit amount minInsuranceAmount = 1000.
To encourage insured bakers, we mark them with a green background and coverage size information.
Coverage | <65% | ≥65% | ≥100% |
Green background | no | yes | yes |
Coverage info | ![]() |
![]() |
![]() |
Sorted by coverage | no | yes | yes |
Since insurance coverage depends on many factors, it's constantly changing. The following events have the most impact:
When approaching a threshold, the baker receives a notification through any private communication channel:
When a baker's coverage passes through the boundary value his delegators also receive a notification through our public channels:
When a baker's coverage is kept below 50% for 3 cycles we reserve a right to terminate the agreement, which entails the following actions:
If after payoutDelay the actual payment to the delegator is less than expected by 10% or more, then such a case is considered an insured event. Each client of the insured baker is treated separately.
As a calculation base, we use only rewards for blocks and endorsements in accordance with the distributed baking rights. We do not include missed/stolen blocks, double-baking accusations, revelation rewards, etc. An expected reward for a particular delegator is calculated as follows:
An actual payout is an inbound transaction that matches the expected reward. In case of an erroneous matching, as well as in the case of using complex payment schemes (e.g. with a minimum payout threshold), such cases are considered individually (see Insurance settlement). For calculations, the current known baker’s commission is used (see Condition change).
The delegate is recognized as a victim and is subject to compensation if he is an active client of the baker under the current conditions (see Condition change).
In case of insurance event detection, the baker and his delegators are notified immediately via both
public and private
channels.
Insured events are reviewed and settled within 6 cycles from the time of discovery. Exceptional cases,
such as payout
mismatching, are handled no longer than 2 cycles.
Each cycle we keep 0.1% of the amount on the security deposit, the frozen funds remain on the deposit account until a sufficient amount accumulates for withdrawal. If the baker's coverage is more than 100%, the fee is keeping of the amount at the rate of 100% coverage.
In the event of a change to this agreement, they take effect insuredPeriod
after the announcement
on Twitter channel
@TezosBakingBad and telegram bot @baking_bad_bot.
To calculate the current coverage and settle insurance claims, the current baker conditions (commission,
own addresses,
etc.) are used. Changes in conditions are accepted insuredPeriod after the
actual change or after
notification.
This holding period is to inform all delegators and give them time to make a decision about further service usage (if needed).
In case of overdelegation inform us via an established private channel and report all addresses that caused
an overdelegation within two cycles after it happened.
All addresses caused overdelegation will be announced on Twitter channel
@TezosBakingBad
In case the delegator's account is emptied, rewards should be paid when the sum of unpaid rewards exceeds the allocation fee cost (0.257 XTZ). Allocation fee may be charged from sum of unpaid staking rewards.