Why are slots/blocks missing on Solana?

Last updated: April 4, 2025

On the Solana network sometimes customers will run into errors such as:

{'code': -32009, 'message': 'Slot 59437028 was skipped, or missing in long-term storage'}

This can be confusing to people who are familiar with other blockchains where each and every block is available. But in Solana, it is not uncommon for a block to be skipped. This is due to latency or lag in the leaders and validators of the network.

But how do we know if a historical block was actually "skipped", or if it's "missing in long-term storage?"

For that, we have to look at the blocks before and after the missing block(s). Keep in mind that you can have consecutive and sometimes large ranges of missing blocks.

For example, imagine we have the following results from a node:

{'code': -32009, 'message': 'Slot 59437028 was skipped, or missing in long-term storage'}

The node states that block 59437028  is skipped or missing...However, if we check the previous and following blocks and check their parent and child fields:

We can see that block 59437029 has a parent block of 59437028...clearly, 59437028 should exist. This means that it is missing from long-term storage. In this case, you should reach out to support and we can do what is called a "backfill" of data to re-import that block.

However, should the output look like this:

Neither the child nor the parent is pointing to 59437028 - that block was skipped and there is no data to backfill. You can safely assume that block never existed.