How to Land Solana Transactions in the Slot You Aimed For
Why public RPCs and standard propagation land trades a slot or more late, and how a private relay to the current leader closes the gap.
In the high-stakes world of Solana MEV and high-frequency trading (HFT), timing isn't measured in wall-clock time. It's measured in slots.
A Solana slot lasts well under a second. If you identify an opportunity in slot N (e.g., a large liquidity injection or a price discrepancy), but your transaction lands in slot N+1 or N+2, you've likely missed the trade.
To win, you need to read state, sign a transaction and get it to the leader while slot N is still being produced. In practice that means reading from shreds and handing the signed transaction to a relay the moment your bot decides.
Why Standard Methods Fail
Most traders land late because they rely on infrastructure designed for general users, not HFT.
1. Public RPCs Add Too Many Steps
When you send a transaction via a public RPC (e.g., mainnet-beta.solana.com or standard provider endpoints), your transaction goes through several stages:
- Load Balancer: Routes your request to an available node.
- RPC Node Processing: Validates signature and simulation.
- Gossip Network: The RPC node broadcasts your transaction to the rest of the network via Gossip.
- Leader Ingestion: The current leader eventually picks it up from the Gossip churn.
Result: by the time the leader sees it, the slot you aimed for has often passed.
2. Jito Bundles Can Be Delayed
Jito is excellent for atomic inclusion and tip-based incentives, but it adds its own steps. Jito block engines must:
- Receive your bundle.
- Simulate it against the current bank.
- Forward it to the Jito-Solana validator.
During periods of high congestion, the Jito auction mechanism itself can become a bottleneck. It is safer than public RPCs, but it is not built for reacting inside the current slot.
The Solution: Direct Leader Relays
To land in the slot you aimed for, you must bypass the gossip network entirely. You need a direct line to the current block producer (the Leader).
Enter AllenHark Relay
AllenHark Relay is built for this purpose. It carries your signed transaction over private connections straight to the current leader; it never touches public gossip.
How it works:
- Direct Ingestion: You send your signed transaction over QUIC, WebSocket or HTTPS.
- Leader-Aware Routing: The relay follows the leader schedule and knows which validator is producing now.
- Private Delivery: It hands your transaction to that leader over its own private connections.
By skipping the RPC validation overhead and the gossip network, AllenHark takes the slowest legs out of the path entirely — what's left is the leg from your machine to the relay, and the relay's leg to the leader.
How to Put It Together
To do this in practice, your architecture needs to look like this:
- Read early: Use AllenHark gRPC or Shreds to detect the opportunity while the block is still being produced, before RPC confirmation.
- Compute close: Run your bot logic on co-located servers in Frankfurt, near the relay and the data feeds.
- Send immediately: Transmit the transaction straight to AllenHark Relay.
Example Workflow
// 1. Receive signal via gRPC — Slot N, still being produced
stream.on('data', async (data) => {
// 2. Build Transaction
const tx = buildArbitrageTx(data);
// 3. Send via AllenHark Relay
// Bypasses public RPC and gossip, goes to the current leader
await relayClient.send(tx, {
skipPreflight: true,
maxRetries: 0 // Don't let the client resend late
});
// Aim: the transaction lands in Slot N
});Conclusion
If you are tired of seeing "Blockhash not found" or landing trades one slot too late, it's time to upgrade your propagation layer.
Stop using public RPCs for sending. Switch to AllenHark Relay and start landing your trades when they actually matter.
