Corvus Labs

The latency stack

Every Corvus Solana stream ordered by how early it sees a transaction: Shredstream, aRPC, Yellowstone gRPC, WebSocket, and how to pick a rung.

Every stream we sell answers the same question (what just happened on Solana) at a different point in a transaction's life. The earlier the rung, the sooner you see it and the less certainty comes with it. Pick the rung whose trade-off matches your application, not the fastest one you can reach.

RungInterfaceWhat you seeWhat you give up
Network propagationShredstreamRaw shreds as the network propagates them, pushed to you over UDPEverything: no session, no ordering, no delivery guarantee, no execution context. You reconstruct the data yourself
Pre-executionaRPCDecoded or binary transactions, entries and slot observations as we see them on the network, before they executeExecution results and account state
Post-executionYellowstone gRPCTyped account, transaction, slot and block streams after executionThe head start; this is the earliest rung where account state exists at all
Post-execution, standardWebSocketStandard Solana PubSubYellowstone's filter breadth and typed payloads
On requestJSON-RPCWhatever you ask for, when you askYou're polling; everyone above is already ahead of you

Account state only exists after execution, so nothing pre-execution can stream it: if you're watching accounts or program state, Yellowstone gRPC is your top rung. If you're reacting to transactions, aRPC sees them before they execute, and Shredstream sees the wire before anything decodes it.

Which rung?

  • You run your own parsing infrastructure and want the wire itself: Shredstream. It's push-based, fire-and-forget UDP; loss, duplication and reordering are yours to handle.
  • You trade on transactions and can confirm before acting: aRPC. Pre-execution streams in all nine metros, unlocked at plan RPS + TPS ≥ 500.
  • You need account or program state, or block-level data: Yellowstone gRPC, in the five Solana RPC metros.
  • You want drop-in compatibility with the Solana SDK you already run: WebSocket.

Everything pre-execution is an observation rather than a result. Confirm anything you act on through Solana RPC, at the commitment level your application requires.

How fast is it in practice?

Speed here depends on your region, your filters and your network path, so measure it where your client actually runs. For how our gRPC stream places against other providers, see the provider comparison.

On this page