Skip to content

Rewards & Payouts

What Gets Distributed

After every block, the consensus relayer forwards both of the following to the validator registry:

SourceDetails
Block reward0.002 BESC fixed per block
Gas feesAll gas paid by transactions in that block

With a 3-second block time and 1,000 Gwei minimum gas price, the block reward alone generates:

Per block:   0.002 BESC + gas
Per minute:  ~0.04 BESC (block reward only)
Per hour:    ~2.4 BESC (block reward only)
Per day:     ~57.6 BESC (block reward only)
Per year:    ~21,024 BESC (block reward only)

Gas fees add to this total depending on network activity.

How Payouts Work

The payout destination depends on whether a validator has delegators:

Validator with No Delegators

All rewards — block reward + gas — go directly to the validator's wallet. No contract interaction required to receive them.

Relayer → forwardReward() → 100% direct to validator wallet

Validator with Delegators

Rewards are split:

Relayer → forwardReward()

              ├── Validator self-stake share + commission
              │        → DIRECT to validator wallet

              └── Delegator portion (after commission)
                       → Into registry contract
                       → Claimable by each delegator
                          proportionally to their stake

Example — 10% commission, 5,000 BESC self-stake, 15,000 BESC delegated (20,000 total):

ShareCalculationGoes To
Self-stake share5,000/20,000 × reward = 25%Direct → validator wallet
Commission on delegator share10% × 75% of reward = 7.5%Direct → validator wallet
Delegators' net share90% × 75% = 67.5% of rewardRegistry → delegators claim

The validator receives 32.5% of total rewards directly; delegators share the remaining 67.5%.

Claiming Rewards (Delegators)

Delegator rewards accumulate in the registry contract and must be claimed:

javascript
// Check pending reward
const pending = await registry.getPendingReward(yourAddress);
console.log(`Pending: ${ethers.formatEther(pending)} BESC`);

// Claim (specify which validator you delegated to)
await registry.claimRewards(validatorAddress);

There is no cooldown on claiming — you can claim at any time.

Validator Subscription

To remain eligible for rewards, validators pay 40 BUSDC every 30 days. There is a 7-day grace period after the due date.

If a validator misses the payment:

  • checkValidatorStatus(addr) can be called by anyone to trigger deactivation
  • Validator stops receiving reward distributions immediately
  • Self-stake and delegations remain in the contract (no slashing)
  • Reactivation requires paying the overdue subscription

Commission Management

Validators set their commission rate (0–25%) at registration. To update:

javascript
// Update commission rate — 7-day cooldown between changes
await registry.updateCommission(750); // 750 bps = 7.5%

The 7-day cooldown prevents validators from bait-and-switching delegators with sudden commission hikes.

BESC Hyperchain — Built for Institutions.