Ghost Mode enables private bridging by routing transactions through private relays instead of the public mempool.
What it is
Ghost Mode is a private bridge where you set private: true in your quote and build requests. This routes the transaction through private relays (Flashbots, MEV-Blocker, or chain-native private mempools) instead of broadcasting to the public mempool.
Why it matters
- No front-running. Searchers can’t snipe your trade if it isn’t visible on the public mempool.
- No copy-trading. Your bridge doesn’t appear on screeners until after settlement.
- Bigger sizes. Larger transfers stop tipping off the market.
How it works
Ghost Mode uses the same bridge flow as standard trades with one addition: the private flag.
const quotes = await dzap.getTradeQuotes({
fromChain: 42161,
account: '0xUser',
private: true, // Enable Ghost Mode in quote
data: [{
srcToken: '0xaf88...',
destToken: '0x8335...',
amount: '1000000',
toChain: 8453,
slippage: 1,
}],
});
const result = await dzap.trade({
request: {
fromChain: 42161,
sender: '0xUser',
refundee: '0xUser',
private: true, // Enable Ghost Mode in execution
data: [{
srcToken: '0xaf88...',
destToken: '0x8335...',
amount: '1000000',
toChain: 8453,
protocol: quotes[0].protocol,
recipient: '0xRecipientOnBase',
slippage: 1,
}],
},
signer: walletClient,
});
Tradeoffs
| Public Bridge | Ghost Mode |
|---|
| Front-run protection | Partial | Full |
| Settlement latency | Seconds | Slightly higher |
| Solver liquidity | Open | Permissioned pool |
| Fees | Standard | Slight premium |
Last modified on May 4, 2026