# Routing and execution

FastTrack picks the best path for each trade automatically. You don't need to know which venue holds the liquidity.

## Native paths

For the most common Solana DEXs, we build the trade transaction directly. This gives the lowest possible latency and the tightest pricing.

| Venue                   | What it covers                                        |
| ----------------------- | ----------------------------------------------------- |
| **PumpFun**             | Pre-graduation memecoins on the PumpFun bonding curve |
| **PumpSwap**            | Post-graduation memecoins on PumpFun's AMM            |
| **Raydium CPMM**        | Standard SOL-quoted Raydium pools                     |
| **BonkFun (Launchlab)** | Pre-graduation tokens on BonkFun                      |

All native paths require the pair to be SOL-quoted. Non-SOL pairs (USDC, USD1, etc.) route through Jupiter.

## Jupiter routing

For everything else — Meteora DBC pools, Printr, post-graduation Launchlab pools on Raydium, exotic AMM pairs, USDC pairs — we route through [Jupiter](https://jup.ag). Jupiter picks the best route across the entire Solana DEX landscape, including multi-hop paths.

## Force Jupiter

You can force every trade through Jupiter via the **Use Jupiter routing** toggle in settings. This is useful when:

* A native path is misbehaving for a specific token.
* A token has Token-2022 transfer hooks that need special handling.
* You want to use Jupiter's price comparison features.

The toggle is off by default — native paths are faster.

## Slippage

You set a maximum slippage tolerance in settings (in basis points). The backend converts this into a `min_out` amount based on live reserves at trade time. If the realized price would exceed your tolerance, the transaction reverts and you keep your SOL.

Default slippage:

* Buy: 1000 bps (10%) — generous because memecoins move fast.
* Sell: 1500 bps (15%) — even more generous for sells in volatile conditions.

You can adjust these in settings. Tighter slippage means more failed trades but better prices.

## Submission paths

Once the trade is signed, we submit it via multiple paths in parallel:

* **Direct RPC**: standard Solana JSON-RPC `sendTransaction`. Always submitted.
* **Jito**: bundle submission with optional MEV tip.
* **NextBlock**: private mempool with anti-sandwich protection.
* **bloXroute**: low-latency block propagation network.
* **Helius Sender, BlockRazor, Astralane, Nozomi, 0slot**: various landing services with regional endpoints.

You enable the landing services you want in settings, with the API keys you've signed up for. We submit to whichever you have enabled, in parallel. The first one to confirm wins.

## Why this matters

On Solana, getting a trade to land quickly during peak congestion is the difference between a 0.5% slippage hit and a 5% one. The submission fan-out is the main reason FastTrack has higher confirmation rates than wallet-popup based trading.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.willet.cc/how-it-works/routing.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
