Understanding Finality in Blockchain
When you send a transaction on a blockchain, how long does it take to be truly irreversible? This question is critical for developers building applications, especially those handling DeFi. When talking about finality, it is important to remember that generally there are two types of finality:- Soft Finality (Optimistic): The transaction is included in a block and is highly unlikely to be reversed
- Hard Finality: The transaction is irreversibly committed to the blockchain with cryptographic guarantees
optimistic and final finality times for 6 popular blockchains,
ordered from fastest to slowest (theoretically) in Hard Finality:
| Blockchain | Optimistic Finality | Hard Finality |
|---|---|---|
| Sui | 500ms | 500ms |
| Aptos | 130ms | 650ms |
| NEAR Protocol | 600ms | 1.2 seconds |
| Solana | 400-600ms | 13 seconds |
| Arbitrum | 250ms | ~15 minutes |
| Ethereum Sepolia | 2.4 minutes (12 blocks) | ~15 minutes |
- Overhead from the RPC: free RPCs are expected to have higher delays
- Overhead from the network: chances are that your transaction will fall in-between blocks and need to wait for it to be processed
Benchmarking the Chains
To measure the empirical finality of the six blockchains mentioned above (NEAR, Aptos, Solana, Sui, Ethereum Sepolia, Arbitrum), we built a simple benchmarking script which makes 30 transactions per network, and computes how much - on average - a transaction takes to settle when using both optimistic and hard finality. To be as fair as possible, we:- Used the
mainnetnetwork of all chains - Used the simplest possible operation: a native token transfer
- Used free and public RPC endpoints
Defining Empirical Finalities
It is important to remark that there is not a single definition on what optimistic finality means, and it can vary between blockchains. Here is how each blockchain in our benchmark defines optimistic finality:NEAR Protocol
On NEAR, optimistic finality is reached when the transactions reachesEXECUTED_OPTIMISTIC finality,
which means the transaction is included in a block and all non-refund receipts have finished their execution.
For hard finality, one can simply wait for the transaction to reach FINAL.
Aptos
For Aptos, optimistic finality is measured as the time when the transaction is submitted and the transaction hash is returned, without waiting for confirmation. This represents the fastest possible response but with the least guarantees. For hard finality, we usewaitForTransaction which waits until the transaction is committed to the blockchain and execution succeeds.
Solana
Solana uses theconfirmed commitment level for optimistic finality, which means 66%+ of the validator stake
has voted on the block. For hard finality, the finalized commitment level requires 31+ confirmed blocks
to be built on top of the transaction’s block, making it economically irreversible.
Sui
On Sui, their API exposes a functionWaitForLocalExecution which waits for the local node to execute the transaction.
For hard finality, the method WaitForEffectsCert waits for an effects certificate,
which is a guarantee that the transaction will be included in a checkpoint and cannot be reverted.
Ethereum
We did not find consensus on what defines optimistic finality in Ethereum, but multiple forums suggested to use 12 confirmations. For hard finality we can simply wait until the block is tagged asfinalized, which indicates the block has been accepted
as canonical by more than 2/3 of validators, typically occurring after two epochs (~12-13 minutes for Ethereum).
Arbitrum
Arbitrum is a layer 2 solution on Ethereum, meaning that it processes transactions off-chain and submits them to Ethereum for finality. For optimistic finality, we simply measured the time it takes for a transaction to be included in an Arbitrum block (i.e. waited for1 confirmation).
For hard finality, Arbitrum relies on Ethereum’s finality guarantees, meaning that it will take as long as Ethereum to reach hard finality (~15 minutes), plus some
time for the API to reflect the finality status.
Results
Finality Times
Here is a table with the average finality times observed during our benchmark, ordered from fastest to slowest in Hard Finality:| Blockchain | Optimistic Finality | Hard Finality | Theoretical Hard Finality |
|---|---|---|---|
| Aptos | 0.20s ± 0.01s | 0.62s ± 0.04s | 650ms |
| Sui | 1.49s ± 0.08s | 3.15s ± 0.03s | 500ms |
| NEAR Protocol | 2.35s ± 0.31s | 3.50s ± 0.24s | 1.2 seconds |
| Solana | 0.94s ± 0.25s | 12.97s ± 0.28s | 13 seconds |
| Ethereum | 36.62s ± 15.05s | 1150.56s ± 5.92s | ~15 minutes |
| Arbitrum | 3.21s ± 0.31s | 1440.02s ± 161.90s | ~15 minutes |
Transaction Fees
Here is a summary of the average transaction fees observed, ordered from cheapest to most expensive in USD:
* Based on token prices at the time of the benchmark
It is important to note that transaction fees can vary based on network congestion, gas price, and of course the token price at the time of the transaction.
However, they will not vary based on the finality model used, since both optimistic and hard finality transactions pay the same fee structure.
Finality and Hardware Requirements
Finally, we looked into the hardware requirements needed to run a full node or validator for each blockchain. Here is a summary of the minimum recommended hardware specs:| Blockchain | Hardware Requirements |
|---|---|
| Aptos | 32 cores, 64GB RAM, 3TB SSD |
| Sui | 24 cores, 128GB RAM, 4TB NVMe |
| Solana | 12 cores, 256GB RAM, 2TB SSD, 1Gbps |
| NEAR Protocol | 8 cores, 8GB RAM, 1TB SSD |
| Arbitrum | 4 cores, 16GB RAM, NVMe SSD |
| Ethereum Sepolia | 4 cores, 16GB RAM, 2TB SSD |
Summary
| Blockchain | Hard Finality | Soft Finality | Cheapest Fees | Lowest Hardware |
|---|---|---|---|---|
| Aptos | 1st | 1st | 2nd | 6th |
| Sui | 2nd | 3rd | 5th | 5th |
| NEAR | 3rd | 4th | 3rd | 3rd |
| Solana | 4th | 2nd | 4th | 4th |
| Ethereum | 5th | 6th | 6th | 2nd |
| Arbitrum | 6th | 5th | 1st | 1st |
Resources
The complete benchmark data and analysis tools are open source and available on GitHub:- Benchmark Data: matiasbenary/benchmarks - Raw benchmark results and histograms
While conducting this benchmark, we discovered that Aptos performed similar testing against Arbitrum, Avalanche, Base, Near, Optimism, Polygon, Solana, and Sui.
Want to build on NEAR? Check out our developer documentation to get started.