in-solana by Supanode

getTransactionCount — Solana RPC Method

getTransactionCount returns the total number of transactions that the cluster has processed since genesis. This counter includes both successful and failed transactions, as well as vote transactions.

Parameters

NameTypeRequiredDescription
commitmentstringNoprocessed, confirmed, or finalized. Default: finalized.
minContextSlotnumberNoMinimum slot at which the request can be evaluated.

Request

curl -X POST https://api.mainnet-beta.solana.com \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "getTransactionCount",
    "params": []
  }'

TypeScript (@solana/kit)

import { createSolanaRpc } from "@solana/kit";

const rpc = createSolanaRpc("https://api.mainnet-beta.solana.com");
const count = await rpc.getTransactionCount().send();

console.log(`Total transactions: ${count.toLocaleString()}`);

Response

{
  "jsonrpc": "2.0",
  "result": 412800000000,
  "id": 1
}
FieldTypeDescription
resultu64Total number of transactions processed since genesis.

Performance

Lightweight call that reads a running counter from the node’s state. Safe to poll for monitoring.

FAQ

Does this include vote transactions? Yes. The count includes all transaction types: user transactions, vote transactions, and failed transactions.

Does this include failed transactions? Yes. A failed transaction still consumed compute and a base fee, so it is counted.

Is this the same as the transactionCount in getEpochInfo? Yes. Both return the same value. getTransactionCount is a dedicated method for this single number, while getEpochInfo returns it alongside other epoch data.

How fast does the count increase? At 2,000-5,000+ transactions per second on mainnet, the count increases by roughly 170-430 million per day.

Parameters

ParameterTypeRequiredDescriptionDefault
commitmentstringNoCommitment level: processed, confirmed, or finalized.finalized
minContextSlotnumberNoMinimum slot at which the request can be evaluated.—

Updated: