Skip to main content
Ultra vs Metis: Execution Engine or Routing Primitive This technical comparison will break down the differences between the Jupiter’s Swap APIs: Ultra and Metis - One is an execution engine, the other is a routing primitive. Both offering very different features and use cases.

The Short Answer

Just Integrate Ultra. TL;DR: Ultra is a complete execution engine for teams that want to ship fast. Metis is a routing primitive for teams that need CPI, custom instructions, or full infrastructure control.
  1. You need CPI (Cross Program Invocation) to call swaps from your on-chain program
  2. You need to add custom instructions to the transaction
  3. You need complete control over your infrastructure
If none of those apply, Ultra is the answer. Close this tab. Go build. Still here? Let’s find out which one is right for you.

The Vehicle Analogy

Imagine two ways to get a world-class driving experience: Option 1: The Complete Performance Vehicle (Ultra) You get a fully-built car where every component has been engineered together. The engine’s power curve matches the transmission’s gear ratios. The suspension is tuned for the tire compound. The aerodynamics complement the drivetrain. This integration comes from years of testing, telemetry data, and continuous refinement. You don’t choose the engine or modify the chassis — but you don’t need to. You turn the key and experience performance that took a team of engineers years to perfect. You focus on where you’re going, not how the car gets you there. Option 2: The All-Purpose Navigation System (Metis) You get a navigation system built with years of research — sophisticated routing algorithms, real-time traffic data, optimal path calculation from any point A to point B. It’s a routing engine in the truest sense. But it’s a component, not a complete vehicle. Install it in a sports car if you need speed. Mount it in an off-road truck if you need durability. Integrate it into construction equipment, delivery drones, or autonomous robots. The navigation intelligence is world-class, but the vehicle you build around it — the engine, the frame, the purpose — that’s your innovation.
Ultra and Metis APIs weren’t designed to compete, but to serve different types of builders. The real question is: which one helps you unlock your specific vision?

Understanding the Architectural Divide

The difference between Ultra API and Metis API isn’t just about features — it’s a fundamental difference in philosophy. Metis gives you a widely adopted, battle-tested and most integrated routing primitive in the ecosystem. However, it trusts you to orchestrate everything else around it such as transaction sending, polling, and execution; slippage and prioritization fee strategies; and more. Ultra provides an end-to-end execution engine that handles the complexity of modern DeFi infrastructure so you can focus on your product. It includes a proprietary RFQ system, multi-router aggregation, and features specifically built for end-to-end performance. Let’s break down what this means across five critical dimensions.
  1. Routing Engines: Meta-aggregated vs. Single Routing Primitive
  2. Execution Model: Integrated Engine vs. Routing Primitive
  3. Configuration Layer: Optimized & Opinionated vs. Flexible Control
  4. Operational Realities: Managed Service vs. Self-Service

Routing Engines

Meta-Aggregated vs. Single Routing Primitive Ultra meta-aggregates multiple routing engines, including Iris (an enhanced version of Metis), DFlow, OKX, and JupiterZ RFQ — to find the best execution path across all available liquidity sources. Metis is the battle-tested, single routing primitive that powers many applications across Solana and serves as the foundation for Ultra’s Iris engine.
AspectUltra APIMetis API
ArchitectureMeta-aggregator combining:

- Iris (enhanced Metis with new features and self-learning capabilities)
- DFlow
- OKX
- JupiterZ (RFQ with 20+ MMs)
Single, proven routing engine for on-chain liquidity
RFQ AccessBuilt-in access to JupiterZ with 20+ market makersNot supported
Liquidity SourcesAggregates across multiple aggregators and RFQ networksDirect access to Solana’s on-chain liquidity via optimized routing
Iris is an enhanced version of Metis, it is built with the learnings and experiences of Metis, with one single objective - to ensure the best possible execution price and success rate across all engines and liquidity sources.Iris includes self-learning capabilities to maintain high availability of competitive routes while automatically sidelining underperforming or potentially problematic quotes; and features such as
What this means:
  • Ultra’s meta-aggregation automatically finds the best price across multiple routing engines and RFQ sources. Importantly, with continuous improvements based on Jupiter’s learnings and features that are actively developed and deployed to improve the execution quality without any changes to your integration.
  • Metis provides direct access to Solana’s on-chain liquidity through a focused, battle-tested routing engine, giving you the foundation to build the core infrastructure alongside it and use it to your advantage to build your own competitive differentiator.

Execution Model

Integrated Engine vs. Routing Primitive Getting a quote is only the beginning — however, highly consistently and quality successful swaps require transaction construction, execution pipeline to send to network, priority fee optimization, confirmation polling, and error handling. Ultra manages this entire execution pipeline as an integrated system. Metis provides routing intelligence as a primitive, expecting you to build the execution infrastructure around it. This choice determines your engineering investment, operational complexity, and degree of control over execution quality.
AspectUltra APIMetis API
UsageComplete execution engine — get order, sign, submit to execute endpointProvides routing and quote — you handle execution infrastructure
Transaction SendingJupiter Beam handles submission via network of in-house transaction senders, resulting in lowest latency and best MEV protectionYou build and maintain your own RPC pipeline
Landing Performance50-400ms average via Jupiter Beam proprietary engineVaries based on your priority fee optimization
Transaction PollingBuilt-in status polling with intelligent error handlingYou implement polling logic and parse on-chain program errors
Execution Latency (End-to-end)P95 < 1000ms (400-600ms average), includes pollingEntirely dependent on your infrastructure quality
RPC RequirementsNone! Jupiter provisions and maintains all infrastructureYou provision and pay for RPC access
MEV ProtectionIndustry-lowest MEV attack rate (verifiable at sandwiched.me) despite highest swap volumeYour infrastructure choices determine MEV exposure
What this means:
  • Ultra eliminates the need for months of infrastructure development and ongoing DevOps overhead, letting teams focus on product differentiation while inheriting battle-tested execution quality. What jup.ag gets, you get too — without any additional effort.
  • Metis gives complete control over the execution stack — you provision, control and maintain your own infrastructure. This opens the door to building exactly what you need as a competitive differentiator with proprietary optimizations tuned to your specific use cases.
Read about what it takes to build your own execution infrastructure in our previous blog post on 600 Lines of Code Nobody Asked For.

Configuration Layer

Optimized & Opinionated vs. Flexible Control Slippage settings, priority fees, and route selection interact in complex ways — conservative slippage reduces MEV risk but increases failure rates, while aggressive fees improve landing speed but can waste capital. Ultra embeds years of optimization data into automatic parameter tuning that evolves with network conditions. Metis gives you the routing foundation to build optimization strategies tailored to your product’s specific needs and risk profile.

Swap Configurations

AspectUltra APIMetis API
Slippage OptimizationRTSE (Real-Time Slippage Estimator), applying heuristics and real-time adjustments based on token categories, historical and real-time dataYou configure slippage based on your strategy and risk tolerance
Priority Fee ManagementUsing quality RPC and network data to automatically estimate and optimize priority fees to land fast without overpayingYou build fee estimation logic tuned to your needs
Manual mode in Ultra API is provided to allow explicit control over execution behavior in user-facing manual trading experiences (e.g. similar to the jup.ag frontend), or for personal, self-directed usage where the operator intentionally manages execution trade-offs.However, manual mode should NOT be used as a default integration pattern and Ultra is meant to be used as-is and out of the box.
What this means:
  • Ultra’s RTSE and automatic optimization increase success rates out of the box — this is the same intelligence that powers jup.ag, refined through millions of swaps showing that the vast majority of users (from trenched traders to whales to casual users) successfully trade using default settings without manual adjustments.
  • Metis delivers raw routing data that you can layer with your own optimization strategies, enabling proprietary slippage logic or custom priority fee algorithms that become part of your technical moat.

Gasless Capabilities

AspectUltra APIMetis API
Default Gasless (Iris)Automatic when user has trade value but insufficient SOL — Jupiter pays tx fee, priority fee, and token account rentNot supported — you build gasless logic from scratch
JupiterZ GaslessMarket makers cover tx and priority fees (not token account rent) when routed via RFQNot supported — allows you to integrate custom gasless mechanisms
Integrator as PayerIntegrator can be fee payer (Iris quotes only, all gas covered)Supported: Integrator as fee payer with full control over implementation
Implementation ComplexityZero implementation — automatic based on quote typeYou manage gas payer wallet, signer logic, and drain protection
What this means:
  • Ultra provides gasless swaps immediately for most scenarios with automatic edge case handling, eliminating the need to build and maintain gasless infrastructure.
  • Metis requires you to build the entire gasless implementation — managing gas payer wallets, signer logic, and drain protection—but this investment enables you to build your own novel gasless UX patterns, custom sponsor logic, or integration with your existing wallet infrastructure in ways an opinionated engine cannot support.

Transaction Customization

AspectUltra APIMetis API
Transaction CustomizationOpinionated — no custom instructions, no CPI, no instruction modificationFull flexibility — add instructions, use for CPI, compose as needed
What this means
  • Ultra’s opinionated approach enables streamlined, consistent execution that gives Jupiter complete observability across the entire stack—this allows for comprehensive customer support, faster issue resolution, and continuous optimization based on aggregated execution data.
  • Metis gives you full transaction composition flexibility such as adding custom instructions, integrating via CPI, or building transaction structures — making it essential for products where the swap is part of a larger onchain operation or where transaction-level innovation is core to your value proposition.

Operational Realities

Managed Service vs. Self-Service Production reliability, support, operational overhead and fees involved differ significantly between approaches.
AspectUltra APIMetis API
Customer SupportJupiter provides direct support to your users via official channelsMinimal technical support for integration — you handle user-facing support
Rate LimitsDynamic based on executed volume. Base quota can be increased when requestedFixed tiers via portal.jup.ag, no overages
Incident ResponseCan provide P0 direct contact and monitored business chatsstatus.jup.ag updates, monitored business chats prioritized by severity
Monitoring & ObservabilitySame infrastructure as jup.ag — monitored 24/7 with immediate response and logged end-to-endSelf-service status page, you monitor your execution layer and log all API requests end-to-end for support/debugging
Fee InvolvedUsage incurs swap fees

Integrator can earn fees: Referral and Advance Fee
Usage incurs Portal fees to increase rate limits

Integrator can earn fees: Referral
What this means:
  • Ultra shifts the operational burden to Jupiter, including production-grade observability, incident response, and direct user support. Because Ultra enforces opinionated, Jupiter-optimized configurations and consistent transaction structures, Jupiter can log and monitor all swap executions — whether from jup.ag’s own interface or third-party integrations via the API — enabling comprehensive support for your users without requiring you to build your own.
  • Metis requires you to build your own infrastructure for transaction handling, maintain custom monitoring, alerting, and support systems. This gives you complete visibility and control over your execution quality, enabling you to optimize and differentiate at the infrastructure layer itself.

The Decision Framework

Ultra API is designed for teams that:
  • Want to focus on product differentiation rather than infrastructure
  • Value battle-tested execution quality and optimization out of the box
  • Prefer operational/technical and customer support from Jupiter
  • Want to iterate quickly on user experience
Metis API is designed for teams that:
  • Need transaction-level customization (CPI, custom instructions, novel compositions)
  • Want full control over fee monetization with no mandatory splits
  • Have existing RPC and execution infrastructure they want to leverage
  • Are building execution infrastructure as a core competitive advantage
  • Need integration flexibility that an opinionated engine cannot provide
  • Want to innovate on execution quality itself, not just user experience

Questions We Often Get

“Metis gives better prices because I can optimize myself”
Ultra aggregates more liquidity sources (Iris, JupiterZ, DFlow, OKX). Specifically Iris is an enhanced version of Metis with features like Ultra Signaling for PropAMMs, Predictive Execution, Just-In-Time Market Revival, and more. You’re competing against systems trained on billions in daily volume. The data shows Ultra delivers better executed prices, not just quoted prices.
“I need Metis for lower latency”
To compare the quote latency, Ultra’s P95 quote latency is under 900ms (average 100-200ms). The extra latency comes from simulations, slippage estimation, and optimizations that result in better execution. Raw quote speed doesn’t matter if your transaction fails or gets sandwiched.
There are also other latency involved such as transaction landing latency, which is sub-seconds (50-400ms) for Ultra since it uses Jupiter’s proprietary transaction landing engine, Jupiter Beam.
“Ultra takes a fee, Metis or API-reseller providers don’t”
Ultra’s platform fee is the lowest in the industry at 5-10 bps. The fee pays for Jupiter’s own infrastructure and scale, and not only you get the best possible execution quality out of the box, you also get all the improvements and optimizations based on millions of swap data and user feedback that are continuously implemented directly into Ultra. Otherwise, you’d have to build your own infrastructure and maintain it.
“I can add my own MEV protection”
Unless you have your own validator stake and transaction landing infrastructure, you’re using what everyone else is using. Ultra uses Jupiter Beam on Jupiter’s own infrastructure. The data is public: Ultra has the lowest value extraction ratio despite the highest volume.

Summary: Two Tools, Two Visions

Ultra and Metis represent different strategic choices, not different quality levels. Ultra is an end-to-end execution engine
  • You choose to focus on building the best user experience and product differentiation, and we handle the dirty work to provide battle-tested performance and zero infrastructure overhead.
  • You get an integrated execution engine where routing (Iris + aggregators + JupiterZ RFQ), optimization (RTSE for slippage, automatic priority fees), transaction execution (Jupiter Beam), and operational support all work together as a unified system
  • You inherit Jupiter’s continuously evolving intelligence — refined by millions of swaps across jup.ag and API integrations — with improvements automatically deployed to your integration.
Metis is a routing primitive
  • You choose to build the your own novel execution infrastructure, and leverage Jupiter’s proven routing engine as a foundational primitive for your own use cases.
  • You control the execution layer (your RPC infrastructure, transaction sending, polling), the optimization layer (slippage logic, priority fee estimation, MEV protection), and the transaction structure (custom instructions, CPI composition, novel integrations).
  • You trade Jupiter’s automatic optimizations for the freedom to build execution infrastructure that becomes your competitive differentiator.
Both approaches power successful applications. Both represent years of Jupiter’s research, development and user feedback. The right choice depends entirely on your product vision, team capabilities, and competitive strategy — whether you’re optimizing for speed to market and inherited excellence, or for architectural control and proprietary innovation.

Resources

For complete technical specifications, integration guides, and API references: Talk to us: Built something? Tag @JupDevRel or @0xYankee / @0xanmol.