FCT Issuance Calculation
Last updated
Last updated
This section provides a detailed explanation of the formula that governs the issuance of FCT, intended for technical readers who want to understand issuance on a block-by-block basis.
At the core of FCT issuance is the relationship between Ethereum L1 gas consumption and a dynamic FCT mint rate. Specifically, the amount of FCT to be minted is determined by multiplying the transaction’s calldata size by a defined FCT mint rate:
Where:
calldata gas used: the total gas units consumed by the size of the Ethereum transaction's Facet payload (calldata)
mint rate: dynamically adjusted rate based on target issuance goals and past network usage
This approach ensures that FCT issuance scales in response to the amount of data processed, while maintaining stability of issuance through a dynamically adjusted mint rate (see adjustment factor below) inspired by Bitcoin’s adaptive difficulty model. Facet users can increase ether burn on calldata blockspace—similar to spending electricity in Bitcoin mining—to mint more FCT, with the protocol adjusting the mint rate to keep FCT supply predictable and aligned with network demand.
The size (in bytes) of the Facet payload (calldata) directly determines the gas units consumed on Ethereum:
Zero Bytes: Each zero byte in the calldata costs 4 gas units.
Non-Zero Bytes: Each non-zero byte in the calldata costs 16 gas units.
Thus, the total calldata gas used is calculated as follows:
The initial mint rate starts at 800,000 gwei (FCT) and dynamically updates every 10,000 Facet blocks (~1.4 days)—known as the adjustment period. The adjustment factor is calculated as:
Facet targets an average issuance of 40 FCT per block, or 400K FCT per adjustment period. Thus, the new mint rate at the onset of a new adjustment period is calculated as:
The new mint rate is constrained by upper/lower bounds as follows to ensure it does not increase or decrease too rapidly:
Upper Bound Constraint: new mint rate cannot exceed the lesser of:
max mint rate of 10,000,000 gwei, or
2✕ prior mint rate
Lower Bound Contstraint: new mint rate must be greater than or equal to 0.5✕ prior mint rate
It’s important to note the mint rate remains constant from block-to-block within an adjustment period, only adjusting at the onset of a new adjustment period (i.e., every ~1.4 days). If 0 FCT is minted during an entire adjustment period, the new mint rate is the lesser of 2✕ prior mint rate and the max mint rate of (10,000,000 gwei).
To regulate the total supply, the target FCT per adjustment period undergoes annual halvings (every 2,630,000 blocks), reducing the mint rate by half. This mechanism serves to de-risk early adoption by issuing more FCT in the earlier years.
Facet transactions created by L1 Smart Contracts behave differently when it comes to FCT.
First, instead of using calldata gas units, we use event data gas units:
Second, L1 smart contract FCT balances do not increase when they mine FCT. Instead, any FCT mined over the amount required to complete the L1 smart contract's transaction is transferred to the EOA that initiated the L1 smart contract interaction.