Skip to content

Solana method

getEpochInfo

Returns the current epoch, the slot index within it, and how far through it the cluster is.

cheapCheap for a provider to serve — no state is read, or one key is.Primary specification (opens in a new tab)

How each provider handles it

3 providers

Provider support for getEpochInfo on Solana
ProviderStatusSuccessMedian
PublicNodeSupported99.0%25 ms
Solana FoundationSupported100.0%14 ms
TatumDegraded93.8%26 ms

Success excludes calls the provider does not implement — an optional method a provider declines to offer is a capability fact, not a failure, and is never scored as one.

Over time

Median latency per hour. Gaps are periods with no measurement, drawn as gaps rather than joined across — a line through missing data invents a measurement that was never taken.

Logarithmic scale — each gridline is ten times the one below it. Click a provider in the legend to hide it.

When it degraded

A degradation is a bucket where a provider fell away from ITS OWN median for this method over the window, not from the cohort's. A provider that is consistently slower than its peers is not degraded — it is slower, which the ranking already says. Buckets with fewer than 20 samples are skipped, because a claim about a provider cannot rest on a handful of calls, and adjacent bad buckets are merged so one outage reads as one incident.

PublicNode

  • success fell to 93.8% from a typical 100.0%

    availability · 2026-10-08 00:00Z

Tatum

  • success fell to 87.5% from a typical 93.6%

    availability · 2026-10-07 18:00Z

What it does

An epoch is roughly two days, about 432,000 slots. Stake activation, deactivation and validator rewards all happen on epoch boundaries.

The response gives absolute slot, slot index within the epoch, and the epoch length, which together tell you exactly how far through the epoch the cluster is.

Parameters

configObjectoptional
commitment and minContextSlot.

Returns

Object with epoch, slotIndex, slotsInEpoch, absoluteSlot, blockHeight and transactionCount.

Try it

Runnable as written, against a keyless public endpoint. Nothing here needs an API key.

Request

curl -s https://api.mainnet-beta.solana.com \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"getEpochInfo"}'

As JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getEpochInfo"
}

Response

{
  "jsonrpc": "2.0",
  "result": {
    "absoluteSlot": 372145830,
    "blockHeight": 350412977,
    "epoch": 861,
    "slotIndex": 145830,
    "slotsInEpoch": 432000,
    "transactionCount": 412093847562
  },
  "id": 1
}

Things that bite

  • transactionCount is cumulative since genesis and includes vote transactions, which are the large majority of them.

Why it is measured

It returns several independent counters in one call, so a provider serving an internally inconsistent view of the chain shows it here.

Called every 300 seconds per endpoint, with jitter so the fleet does not hit a provider in lockstep.

24h window · generated 2026-10-08 17:58:52 UTC · 3 providers