How to Filter Jupiter Swap Events with Filtered gRPC

Jupiter is Solana's dominant swap aggregator — routing over 60% of all DEX volume. If you're building a trading bot, MEV strategy, or analytics dashboard, Jupiter swap data is essential. This guide shows how to receive pre-parsed Jupiter events in real-time using Subglow filtered gRPC.
Why Jupiter Data Is Different
Jupiter doesn't run a single AMM. It aggregates routes across Raydium, Orca, Meteora, Phoenix, and dozens of other venues. A single Jupiter swap might touch 3-4 different DEXs in one transaction. Parsing this manually means understanding every underlying program's instruction format — a massive engineering effort.
With Subglow's Jupiter filter, we handle the route parsing. You receive a clean JSON object with the input token, output token, amounts, route path, and price impact — regardless of which underlying DEXs were used.
Supported Jupiter Events
| Event | Description | Key Fields |
|---|---|---|
swap | Instant swap via aggregated route | in_token, out_token, in_amount, out_amount, route, price_impact |
limit_order | Limit order placed or filled | in_token, out_token, limit_price, status, expiry |
dca | DCA execution triggered | in_token, out_token, amount, interval, executions_remaining |
Node.js: Jupiter Swap Monitor
This example tracks large Jupiter swaps (over $1,000 equivalent) in real-time. Use this as the foundation for whale-watching bots, copy-trading systems, or volume analytics.
const client = new Subglow({
url: "grpc.subglow.io:443",
apiKey: process.env.SUBGLOW_KEY,
filter: ["jupiter"],
});
client.subscribe((tx) => {
if (tx.type === "swap" && tx.parsed.out_amount_usd > 1000) {
console.log(`Whale swap: ${tx.parsed.in_token} → ${tx.parsed.out_token}`);
console.log(` Amount: $${tx.parsed.out_amount_usd.toFixed(2)}`);
console.log(` Route: ${tx.parsed.route.join(" → ")}`);
console.log(` Price impact: ${tx.parsed.price_impact.toFixed(3)}%`);
}
});
DCA & Limit Order Tracking
Jupiter's DCA and limit orders create recurring on-chain activity. Track limit_order events to see when large orders fill — these often indicate smart money accumulation patterns. DCA executions show steady buying pressure on specific tokens.
Building a Volume Dashboard
Aggregate Jupiter swap events to build real-time volume dashboards by token pair. Since Subglow delivers pre-parsed data with USD amounts, you can skip the price-fetching step and build your aggregations directly from the stream.
Ready to try it?
Get your API key and start receiving filtered data in under 5 minutes. Free tier available.
Get started →