Tokenomics
Furnace has three assets: HYPE, which you stake and are paid in, xFURNACE, your staking receipt, and FURNACE, the protocol's ERC-20 token. This page covers each one, the revenue flow, and what the admin can and can't do.
The three assets
| Asset | What it is | Role |
|---|---|---|
| HYPE | Elysium's native gas token | What you stake, and what distributions are paid in |
| xFURNACE | Receipt token issued by FurnaceStaking | Records your staked HYPE and sets your share of distributions |
| FURNACE | Furnace's ERC-20 token | See FURNACE token |
Staking and distributions use HYPE only. You don't need FURNACE to stake, and holding FURNACE doesn't change your share of distributions. The x in xFURNACE marks it as a staking receipt. It is backed by staked HYPE, not by FURNACE.
xFURNACE
| Property | Value |
|---|---|
| Issued by | FurnaceStaking |
| Mint | 1 xFURNACE per 1 HYPE staked |
| Burn | 1 xFURNACE per 1 HYPE withdrawn, returned in the same transaction |
| Backing | HYPE held by FurnaceStaking ≥ xFURNACE total supply, at all times |
| Cooldown, fees | None |
| Decimals | 18 |
| Transferable | No (v1) |
| Rebasing | No. Your balance changes only when you stake or withdraw. Distributions accrue separately as claimable HYPE. |
| Upgradeable | No |
Fee and revenue flow
┌──────────── engine revenue (sourceKind 0) ────────────┐
FurnaceEngine ──┘ ▼
External senders ──────────── external (sourceKind 1) ─────────▶ Distributor
Furnace treasury ──────────── treasury contribution (2) ───────▶ │
│ distribute(), each Monday 00:00 UTC
┌─────────────────────────────┴─────────────────────┐
▼ ▼
FurnaceStaking (stakers) Furnace treasury
80% of engine + external, 100% of treasury contributions 20% of engine + external
│
▼ streamed over 7 days, pro rata
xFURNACE holders
Revenue
- Engine revenue is arbitrage spread plus fees earned by Furnace's liquidity positions, realized in HYPE and swept from
FurnaceEngineto theDistributor. - External is HYPE from any other sender, shown with its sender address. Any chain-side builder payment that reaches a Furnace contract lands here.
- Treasury contribution is HYPE that Furnace adds itself. It is never counted as revenue, and it goes 100% to stakers.
The split
| Engine + external revenue | Treasury contributions | |
|---|---|---|
| To stakers | 80% | 100% |
| To Furnace treasury | 20% | 0% |
- The split is set once, in the
Distributorconstructor (stakerShareBps = 8000), and can't be changed afterwards. There is no setter, and the contract isn't upgradeable. - The
Distributorassigns each inflow's split as it arrives, so its pending staker and treasury amounts are always readable on-chain. - The treasury share pays for keeper gas, infrastructure and operations.
Epochs and allocations
- Epoch: one week, starting Monday 00:00 UTC. Epoch 0 started Monday 2 November 2026.
- Allocation: after each epoch boundary,
distribute()sends the accumulated staker share toFurnaceStakingand the treasury share to the treasury. Anyone can call it, and Furnace calls it at every boundary. The call emitsDistributed(epoch, toStakers, toTreasury). - Stream:
FurnaceStakingpays each allocation out evenly over 7 days, every second, pro rata to xFURNACE balances. If a new allocation arrives while a stream is still running, the unstreamed remainder rolls into the new 7-day stream.
What the dashboard shows instead of an APR
The dashboard shows only what has actually been distributed: each epoch's allocation, the current stream rate and the inflows by source. It doesn't show an APR, an APY or a projection. Past distributions don't predict future ones.
FURNACE token
| Property | Value |
|---|---|
| Standard | ERC-20, 18 decimals |
| Name / symbol | Furnace / FURNACE |
| Total supply | 1,000,000,000 FURNACE, minted once at deployment |
| Minting after deployment | None: there is no mint function |
| Transfer tax, blacklist, pause | None |
| Owner functions | None |
| Upgradeable | No |
Allocation
| Allocation | Share | Tokens | Terms |
|---|---|---|---|
| Ecosystem & community | 45% | 450,000,000 | Held by the Furnace multisig and released only through programs announced in advance, with the receiving addresses published |
| Treasury | 25% | 250,000,000 | Furnace multisig |
| Core contributors | 20% | 200,000,000 | On-chain vesting contract: 12-month cliff, then linear release through month 36 |
| Liquidity | 10% | 100,000,000 | Furnace multisig, for Furnace liquidity on Elysium |
The deployment script mints the full supply into these four allocations in one transaction. The dashboard's Contracts panel links the token and the owner multisig, so every allocation balance can be checked on the explorer.
What FURNACE does in v1
The FURNACE token has no role in staking or distributions. It doesn't boost your share, it isn't required to stake, and it isn't paid out as a distribution. Distributions are HYPE only.
Admin powers and limits
| Role | Can | Cannot |
|---|---|---|
| Owner (multisig) | Pause and unpause new stakes. Manage the keeper allowlist and the pool allowlist on FurnaceEngine. Withdraw engine inventory (Furnace's own capital) to the treasury. | Move, freeze or redirect staked HYPE. Pause withdrawing, claiming or exit. Mint xFURNACE without a HYPE deposit. Change the 80/20 split. Mint Furnace. Upgrade any contract. |
| Keeper (allowlisted addresses) | Execute operations on FurnaceEngine against allowlisted pools. Sweep realized HYPE to the Distributor. Call distribute(). | Send engine funds anywhere other than the Distributor. Touch staked HYPE. Change any parameter. |
| Anyone | Call distribute() after an epoch boundary | Change who receives the split |
You can check every cannot in the verified source code on the explorer.
Fees
Furnace charges nothing to stake, withdraw or claim. The only protocol share is the 20% treasury split of engine and external revenue described above. It is taken before allocation, and it's visible in every Distributed event.