This is the second edition of Hive 101, a series of posts where I explore fundamental concepts on the Hive blockchain as someone who's been around for a relatively long time (since 2021) but who is still relatively "new" to the blockchain as most of my time on Hive has been focused on Splinterlands. If you'd like to check out the first post I made on Reputation, you can find it here.
In this post, I look at Resource Credits, Hive's gas-free transaction model.
Unlike most blockchains where users typically have to pay a transaction fee (e.g. "gas" in Ethereum), Hive has a fee-less model for transactions where users consume Resource Credits (aka "RC") instead.
A user's RC is based on how much Hive they have staked (aka "Hive Power" or HP) and is expressed as a number going from 0 to 100%. It replenishes over time, and is the only "resource" that users pay when executing transactions on the Hive blockchains. As a result, transactions on Hive are effectively zero-fee (users don't have to pay Hive for every transaction as they expend their rechargeable RC instead).
Resource Credits are a rechargeable resource users get with their Staked Hive (HP) and which enables fee-less transactions on the Hive blockchain
RC is a non-transferable (account-bound) resource which is based on a user's HP.
From what I understand, a user's max RC is based on their own staked HP divided by the total HP of all users times the global RC pool across all Hive accounts. But instead of HP, the calculation uses something called "VESTS", which are used internally for the RC calculation. 1 HP ≈ 500–550 VESTS at the moment, and this varies baed on the total HP in the network and the total VESTS issued. Then, a user's max RC is calculated roughly as follows:
Max_RC = (Your_VESTS / Total_VESTS) x Total_RC_Pool
Most users won't care about the exact calculation however. What matters to most users is that more HP = more RC.
As for RC regeneration, I looked around a lot and couldn't find the exact function used to determine regeneration, however it seems fairly well accepted that RC regenerates roughly 20% (of the max amount) per day and therefore it takes ~5 days to fully recharge your RC (if you're at zero).
Every blockchain transaction (vote, post, comment, transfer, etc.) costs some RC, but the costs vary based on the activity. E.g.:
You can check RC costs here: https://hivehub.dev/stats?metric=rc&timeframe=daily
The actual RC cost of operations is dynamic. It's based on a global RC pool for each type of system resource, and when network usage is high the RC cost of operations goes up. However, since it's a rechargeable resource that isn't paid in Hive, those fluctuations are less negatively impactful than they might be, for example, when gas fees on Ethereum spike and leave users debating whether executing a transaction is "worth the price".
Your total RC is based on your staked Hive (HP) and takes roughly 5 days to fully recharge from zero.
You can get RC buy buying & staking Hive, receiving delegations, or by leasing it.
RC makes it possible for Hive to be "fast, fair, free, and safe". It's a throttle that enables fast & free transactions for staked users while preventing spam and abuse.
After spending a lot of time on Hive, we start taking concepts like these for granted. Having fast & free transactions feels like something obvious, but it's far from the reality on many blockchains. This is just one of the things that makes Hive great.
If there's anything I've gotten wrong in this article, or anything I've missed, please point it out in the comments!
All the art in this post was created using Midjourney AI