SOLANA DESHRED · BEFORE EXECUTION

See it coming.
Then see it land.

Every Solana transaction as soon as it is rebuilt from shreds, before it executes, with its lookup tables resolved. The Yellowstone SubscribeDeshred stream, in every plan.

AHEAD OF EXECUTION

Deshredded copy against the executed update of the same transaction, across 8 DEX programs:

MEDIAN LEAD
0.35ms
P90 LEAD
0.85ms
ARRIVES FIRST
98%

Frankfurt, 2 November 2026: 262,463 transactions on pump.fun, pump AMM, Raydium AMM, CPMM and CLMM, Meteora DLMM and DAMM v2, and Orca, both streams read by one client and timed on arrival. Figures are averaged over the 8 programs; pooled over every transaction the median lead is 0.25 ms, since pump.fun, the busiest, has the smallest.

WHAT ARRIVESBEFORE THE RESULT EXISTS.
THE TRANSACTION

Signature and the transaction exactly as it is in the block: its signatures and message.

LOOKUP TABLES

The writable and read-only addresses its lookup tables load, already resolved, so a filter on an account matches wherever the account appears.

WHERE IT CAME FROM

The slot and the range of shreds it was rebuilt from, plus slot statuses on the same stream.

No status, balances or logs: the transaction has not run yet. It can still fail, and it can be on a fork that is later dropped.

BEFORE AND AFTERTWO STREAMS. ONE TOKEN.

React first.
Confirm after.

Deshredded and executed transactions, side by side

The executed stream
DESHREDEXECUTED
CallSubscribeDeshredSubscribe
ArrivesWhen rebuilt from shredsWhen executed
CarriesTransaction, lookup-table addressesTransaction with status meta, account updates
FiltersaccountInclude, accountRequired, accountExcludeThe same, plus failed and signature, and account filters
Failed transactionsIncluded: nothing has run yetFilter on them
Use it toSee a transaction coming and act on itKnow what it did
SUBSCRIBETYPESCRIPT 5.0.7+. RUST 12.1+.

Same endpoint.
Same token.

SubscribeDeshred in TypeScript (@triton-one/yellowstone-grpc 5.0.7 or later) and Rust (yellowstone-grpc-client 12.1 or later)

Full examples in TypeScript and Rust
const stream = await client.subscribeDeshred();
stream.on("data", (u) => console.log(u.deshredTransaction?.slot));
stream.write({
  deshredTransactions: {
    swaps: {
      accountInclude: ["pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA"],
      accountExclude: [],
      accountRequired: [],
    },
  },
  slots: {},
});
let (mut tx, mut stream) = client.subscribe_deshred().await?;
tx.send(SubscribeDeshredRequest {
    deshred_transactions: HashMap::from([(
        "swaps".to_owned(),
        SubscribeRequestFilterDeshredTransactions {
            account_include: vec!["pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA".into()],
            ..Default::default()
        },
    )]),
    ..Default::default()
})
.await?;

Solana deshred pricing

IN EVERY PLAN. NO EXTRA.
TRIAL
Free3 hours

Full feed, both streams. Measure it against your current best source.

1 DAY
50USDC

For a proper benchmark run.

1 WEEK
200USDC

About 29 USDC a day.

30 DAYS
650USDC

About 22 USDC a day.

Deshred is not sold separately: every plan and the trial include it, next to the executed gRPC stream. Two locations: Frankfurt and Amsterdam. Billing

THE DETAILS

Deshred, answered.

What it is, what it is not.

What is a deshredded transaction?

A block travels as shreds. Once enough of them arrive, the entries they carry can be rebuilt and the transactions read out, before anything executes. SubscribeDeshred sends each transaction at that moment, with its lookup-table addresses resolved.

Is it the same as raw shreds?

No. Raw shreds are fragments you would reassemble and decode yourself. The deshred stream does that for you and sends whole transactions, filtered by the accounts you name.

Does it include failed transactions?

Yes. Nothing has executed yet, so a transaction that will fail looks like any other. Use the executed stream when you need to know the outcome.

Which clients support it?

TypeScript @triton-one/yellowstone-grpc 5.0.7 or later (subscribeDeshred), Rust yellowstone-grpc-client 12.1 or later (subscribe_deshred), or any client built on yellowstone-grpc-proto 12.1 or later. Slot statuses on the stream need proto 12.7, which TypeScript 10.0.0 and Rust 13.5 have. Client versions

Does it cost extra?

No. Every plan and the free 3-hour trial include it, on the same endpoint and token as the executed stream, within the same stream limits.

ALSO IN EVERY PLANAfter execution

Solana gRPC stream →

Executed transactions, account updates and slots, sub-millisecond from shred arrival.