Mining and Token Rewards
While there's no exact formula for calculating how much HNT you'll earn over a given period, there are some higher-level concepts, design elements, and rules to keep in mind that will help better explain what you might earn and why. This section covers these, as well as some mining and token reward basics.
How Do Hotspots Earn Helium Tokens?
The Helium blockchain rewards Hotspots for providing wireless coverage and verifying the Helium Network. Hotspots are rewarded in Helium Token, HNT.
Every epoch, the current consensus group mines approximately 30 blocks on the blockchain. In each block, Hotspots perform various types of work and are awarded according to the following distribution:
Reward Type | Chain Variable | Description |
---|---|---|
PoC Challengees | poc_challengees_percent | Awarded to any Hotspot that transmits a PoC packet after being targeted by the challenger. |
PoC Challenger | poc_challengers_percent | Rewarded to any Validator* that creates a valid PoC challenge and submits the corresponding receipt to the blockchain. (see note below) |
Witnesses | poc_witnesses_percent | Distributed to selected Hotspots that witness a beacon packet as part of a PoC Challenge. |
Consensus Group | consensus_percent | Divided equally among the Validators that are part of the outgoing Consensus Group, responsible for mining blocks. |
Security | securities_percent | Awarded to Helium, Inc and other Network investors who hold Security Tokens. |
Network Data Transfer | dc_percent | Distributed each epoch to Hotspots that route LongFi sensor data for sensors on the Network during that epoch. |
note
HIP55 moved the
resposibiility of creating PoC Challenges to Validators, and as such PoC Rewards (chain_var
pos_challengers_percent
) are now awarded to any Validator that creates a valid PoC challenge and
submits the corresponding receipt to the blockchain.
Do I Have To Actively Participate to Earn Rewards Once My Hotspot is Deployed?
No. Once your Hotspot is completely deployed and onboarded to the Helium blockchain, you as the owner are not required to do anything else to earn HNT. Your Hotspot will perform all of the above activities on its own while it runs.
Target HNT Production Per Epoch
As of August 1, 2021 (the most recent halving), the target production rate for new HNT minted per
month is 2,500,000
. This means that, if the blockchain performs as designed, it will produce
2,500,000
HNT per month. This target rate is based on the following two parameters, as defined in
their specific chain variables:
- Target block time is
60
seconds. - Target epoch size is
30
blocks.
Recall that, in the Helium blockchain, blocks contain some number of individual transactions, and epochs are comprised of all the blocks mined by the current Consensus Group since the last epoch.
So, if the Network achieves its target block time of 60
seconds, and target epoch of 30
blocks,
the blockchain will produce 2,500,000
HNT per month. Per epoch, this equals roughly 1736.1111
HNT. The math for this is as follows:
(43200 minutes per month / 30 minutes per epoch) = 1440 epochs per month
(2500000 tokens minted per month / 1440 epochs per month) = 1736.1111 HNT per epoch
What Are The Current Block and Epoch Times?
At any point, you can go to the Helium blockchain Explorer to view recent block and epoch statistics, past HNT production numbers, and much more.
HNT Distributions Per Epoch
As calculated above, the target HNT per epoch is approximately 1736.1111
. The next logical
question is, "Where does all this HNT go?" Let's take a look.
Below are the mining rewards per epoch as of August 1, 2022. For every complete epoch, marked by the election of a new Consensus Group, all the HNT produced are distributed over the following reward types:
Reward Type | Percentage | HNT Earned by Reward Type |
---|---|---|
PoC Challenger | 0.85% | 14.7236 |
PoC Challengees | 4.73% - 12.23% | 82.1247 - 212.331 |
Witnesses | 18.92% - 48.92% | 328.4989 - 849.3323 |
Consensus Group | 6% | 104.1667 |
Security Tokens | 32% | 555.5556 |
Network Data Transfer | Up to 37.50% | Up to 651.0417 |
Total | 100% | 1736.1111 |
Rewards Change Over Time
In the above table, you can see the maximum allotted rewards per reward type following HIP 10 (described below). If you want to see the current reward type percentage, you can always query the Chain Variables API. The next maximum allotted rewards change is currently scheduled for August 1, 2023 and will be updated along with changes related to the havening to maintain max HNT supply.
HIP10 and Variable HNT Rewards for Network Data Transfer
As noted above,
HIP10 was activated on August 24th, 2020.
HIP10 was introduced by Helium Community Member hashc0de
and was adopted by the Helium Community.
It ensures that HNT is rewarded at a rate of 1:1 to the amount of Data Credits (DCs) routed by any
given Hotspot per epoch. In doing so, the Network Data Transfer reward is proportional to the DC
spent in that epoch. This proportional relationship between Network Data Transfer reward type and DC
is capped at 37.50% (651.0417 HNT). Therefore, if the DC burned doesn't equal the value of
651.0417
HNT, the remaining HNT is redistributed to the Proof of Coverage (PoC) rewards groups
pro-rata.
Here are a few examples to illustrate how this works in practice:
Example 1: DC Burn does not exceed 37.50% HNT
- In a given epoch,
8,000,000
DCs are transferred across the network - The HNT Oracle Price is
$8.00
- In this scenario, the total HNT value of DC transferred in this epoch is
10 HNT
. This calculation is:(8,000,000 DC * $0.00001 / $8.00 HNT Oracle Price)
- These
10 HNT
would be split proportionally to the Hotspots that did the work routing packets at the 1:1 rate. - The remaining
641.0417
from the Network Data Transfer reward would be distributed by weight among the Witnesses and Challengees.128.2083
to the Challengee group =>4.73/(4.73+18.92) = 20%
512.8333
to the Witness group =>18.92/(4.73+18.92) = 80%
Example 2: DC Burn exceeds 37.50% HNT
- In a given epoch,
800,000,000
DCs are spent on data transfer across the network - The HNT Oracle Price is
$8.00
In this scenario, the total HNT value of DC transferred in this epoch is 1000 HNT
. This
calculation is:(800,000,000 DC * $0.00001 / $8.00 HNT Oracle Price)
- Because the Network DC burn exceeded the
651.0417
available to the Network Data Transfer reward, all Hotspots that did the work over this epoch will split the full1000 HNT
proportionally.
Additional Notes on Reward Types and Payouts
- All Validators in the
Consensus Group
will earn an equal reward. - All Hotspots participating in PoC, including
Challengees
andWitnesses
will earn rewards proportional to how many events they participated in out of the total number of events per epoch. - All Hotspots participating in
Network Data Transfer
will earn rewards proportional to their share of the total data transfer in that epoch, as shown above. - Hotspots can earn one or more reward types during any given epoch.
PoC Challenger
,PoC Challengee
, andWitness
reward types get distributed in the epoch that includes the corresponding PoC receipt.- A Hotspots can earn more than one
PoC Challengee
andWitness
rewards per epoch. - Validators use the
poc_challenge_rate
chain_var that defines the target number of Challenges per block. See HIP55 for more details. Challenger
rewards are distributed to Validators that create and collect Challenge data and submit this information to the blockchain.
HNT Proration and Slow Block Times
The Helium blockchain is still new and growing quickly, so there are bugs to be squashed and
optimizations to be made. Target block and epoch times can be difficult to attain consistently. To
account for this, the Helium blockchain uses something called proration
to ensure that the target
of 2,500,000
is achieved even if block and epoch times aren't on target.
Target HNT Depends on Blocks, Not Clocks
It's easiest to think of target HNT production over one month. If the blockchain performs on target,
resulting in roughly 1440 epochs per month, then 2,500,000
new HNT will be produced. "One month"
is a period of time measured by a clock. However, under the hood, we use block time, and the
resulting epochs, to mark HNT production against our target. So when blocks are slow, HNT production
is reduced proportionally.
What Happens to HNT When Block Times are Slow?
Occasionally, due to the rapid growth of the network, there can be less-than-optimal block times.
This results in slower epochs. When this happens the blockchain will produce less HNT over the
same period of time. This may seem counterintuitive. Shouldn't the blockchain produce more HNT when
block times are slower to ensure the 2,500,000
per month target is hit? No. Again, think blocks,
not clocks. Here's a step-by-step example to make it clearer:
- Let's assume for a given
60
minute period, the average block time was120
seconds (which is double the target of60
seconds). - This would mark
30
blocks over the60
minute period, conclude an epoch, and result in HNT rewards being distributed. - As with any epoch, we would distribute the target of (approximately)
1736.1111
HNT. - However, since this epoch took twice as long as normal -
60
minutes versus30
minute target - the blockchain essentially distributes HNT at half the normal rate.
When Block Times Slow Down, Everyone Earns Less
The most important takeaway here is that, when block times slow and HNT production is reduced, everyone participating in the Network - Witnesses, Challengers, Security Token Holders, etc. - is impacted equally (except for Consensus Group members; more on this below). So, although it's annoying that the effective rate of HNT may have dropped over a given period of time, know that you're not the only one earning less. And this is by design.
Consensus Groups and Slow Block Times
The only group that doesn't see its HNT reduced per epoch when blocks are slow is the Consensus Group. Currently, there are 43 members of each Consensus Group, sharing 6% of the HNT produced per epoch.
This amount stays fixed while every other category of HNT payout is prorated so that members of the
Consensus Groups are incentivized to keep elections fast. Otherwise, a malicious Consensus Group
member might be inclined to prolong elections. This could be done, for example, to prevent a
subsequent election, thus ensuring current membership in the Consensus Group stays intact. By
distributing a fixed amount of HNT per 30
block epoch (as opposed to prorating payouts), we remove
the incentive to disrupt elections.