Solana TPS

    One of Solana's main features is its speed compared to other blockchains. Blockchain performance is usually measured in Transactions per Second (TPS). Measure the TPS of Solana in February (non votes) and 'Successful TPS' per day and create a chart showing how TPS has fluctuated during that time period.

    Introduction

    Solana blockchain has a block time of 400 ms giving a big number of blocks per day. These blocks contain two types of transactions:

    • vote transactions, which are sent by validators to reach consensus
    • non-vote transactions

    Methodology

    For this bounty I will use data from 3 tables:

    • total transactions per block from solana.blocks table
    • vote transactions per block from solana.votes_block_agg table
    • successful transactions per block from solana.transactions table
    Loading...

    The theoretical peak capacity of Solana is 65.000 TPS but, what is its current real speed?

    This information will be then aggregated per day and the average TPS (Transactions per second) per day will be calculated. Non-vote transactions will be calculated as the difference between total and vote transactions.

    Results

    As it can be seen in the chart below, vote TPS are the majority of transactions of Solana's network.

    The succesful TPS per day refers to the non-vote TPS, meaning than around 100-150 TPS are not broadcasted into the network.

    The average total TPS per day is between 2600 and 3000 for the time period under analysis. This is usually the number used for general use when refering to Solana's speed in for example Solana Beach.

    Conclusions

    The main conclusion I can draw from this analysis is that Solana's speed is still far from reaching their theoretical peak value. Even if the max TPS value seems relatively good, if one takes a closer look at the transaction types and values, the network is averaging around 500 succesful, non-voting TPS. This number though, would be not as spectacular to use in any marketing campaign as 65.000.

    Not wanting to take away anything from Solana's potential, it seems that TPS numbers are used more as a marketing tool than a fair comparison parameter.

    Loading...

    I calculated the max TPS by aggregating transaction count per block by seconds and obtain a max value of almost 14k TPS on Feb. 15th 15:36:42.