Migrating from Standard Relay to Executor Relay: What Every Wormhole Builder Needs to Know

March 17, 2026
Migrating from Standard Relay to Executor Relay: What Every Wormhole Builder Needs to Know

Standard Relaying has been deprecated. Automatic delivery shuts down on April 1, 2026. If you're building on Wormhole and relying on the Standard Relayer for cross-chain message delivery, please migrate to the newer Executor relaying system.

What's Going Away and When

The Standard Relayer run by Wormhole Contributors will be shut down on April 1, 2026. After this date, Wormhole messages sent via the Standard Relayer will no longer be automatically delivered to destination chains.

A few important clarifications for developers:

  • VAAs will still be signed. The Guardian network isn't going anywhere. Your messages will still be attested.
  • Only automatic delivery via the Standard Relayer is going away. If you need a bridge while you migrate, manual redemption scripts are available - reach out to the Wormhole team.
  • No new chain support is being added to Standard Relaying. If you need to expand to new chains, Executor is the only path.

Why Executor?

The Standard Relayer system automatically delivered messages for Wormhole Developers for over 2 years. While it provided a clean, EVM-native interface and abstracted away the complexity of cross-chain delivery it came with legacy costs: a heavy on-chain footprint, EVM-only support, and complex pricing and quoting overhead.

The Executor framework is a modern redesign for automatic relaying.

A Leaner On-Chain Footprint

The Executor contract is stateless and immutable. By not persisting state on chain, it keeps gas costs low. Its immutability also simplifies its role and enhances security for Wormhole developers. While the Standard Relayer contract was upgradeable via Wormhole Governance and part of the message verification flow, Executor sits outside of an integrator’s security stack and simply focuses on delivering messages.

EVM and Beyond

Standard Relaying was limited to EVM chains. The Executor framework supports EVM, SVM and other non-EVM environments with more chain expansions actively in progress. For protocols with multichain ambitions, EVM-only automatic relaying is no longer a limitation you need to work around.

###The Request-and-Quote Model

Instead of calling a monolithic relayer contract that handles both pricing and delivery, the Executor system separates concerns cleanly:

  1. The client requests a quote from a Quoter (either an off-chain service or an on-chain quote contract), specifying source and destination chains.
  2. The Quoter returns a signed execution quote with pricing and an expiry window.
  3. The integrator contract sends a message via the Wormhole Core Bridge, then calls on the Executor contract for the message ID returned by Core Bridge call, passing the signed quote, payment for the quote, and relay instructions.
  4. The Executor emits a RequestForExecution event and transfers the payment to the provider's payee address.
  5. Off-chain Relay Providers monitor for events matching their signed quotes, retrieve the VAA from the Guardians, and execute on the destination chain.

The quote's expiry window keeps pricing fresh and prevents stale quotes from being submitted.

##What Does Migration Actually Look Like?

Your migration effort depends on how you've integrated with Standard Relaying.

NTT and Wormhole Connect Integrators: SDK + UI Updates Only

If you're using Wormhole's Native Token Transfers (NTT), no smart contract changes are required.

If you’re using Wormhole Connect, a simple configuration change is all that’s necessary. See the docs here.

If you built a custom UI using the TypeScript SDK, you’ll need to use the new built-in route for Executor. Your migration is primarily:

  • Updating the NTT SDK to the latest version
  • Wiring up the Executor route in your frontend
  • Generating relay instructions (a GasInstruction is sufficient for most flows)
  • Requesting a signed quote before initiating a transfer
  • Checking destination chain support and enabled relay types via the Executor capabilities endpoint

For Solana destinations, note that USDC redemptions require a recipient ATA to exist. The relayer can create it, but you'll need to account for the additional lamport/rent cost.

Reference: Integrate NTT with Executor

GMP / On-Chain Standard Relaying Integrators: Possible Smart Contract Changes

If you've built directly against the IWormholeRelayer interface, calling sendPayloadToEvm, implementing receiveWormholeMessages, or using quoteEVMDeliveryPrice, your migration may require more work and potentially smart contract changes.

The core difference: Standard Relaying encoded delivery logic into the relayer contract itself. With Executor, your sending contract is responsible for calling requestExecution on the Executor contract and passing the relay instructions and signed quote. Your receiving contract needs to handle executeVaaV1 from the Relay Provider, then verify with Wormhole Core.

Key steps for GMP integrators:

  • Review your source-chain contract. Does it call IWormholeRelayer.sendPayloadToEvm? You'll need to replace this with the Executor's requestExecution pattern.
  • Review your destination-chain contract. The entry point changes; instead of receiveWormholeMessages, your contract now receives a VAA via executeVaaV1 from the Relay Provider and verifies it through parseAndVerifyVM on the Wormhole Core contract.
  • Implement quote fetching. Before sending, your client (or contract, if using on-chain quotes) must fetch a signed execution quote and include it in the transaction.
  • Generate relay instructions. These define destination gas limits, message value, and any gas drop-off behavior. They're serialized using the Wormhole TypeScript SDK and passed to the Executor contract.

The Executor Solidity SDK provides several base contracts depending on your quoting approach:

// Off-chain quotes (requires API call for signedQuote)
import {ExecutorSendReceiveQuoteOffChain} from "wormhole-solidity-sdk/Executor/Integration.sol";
import {ExecutorSendReceiveQuoteOffChain} from "wormhole-solidity-sdk/Executor/Integration.sol";

// On-chain quotes (query quoter contract directly)
import {ExecutorSendReceiveQuoteOnChain} from "wormhole-solidity-sdk/Executor/Integration.sol";

// Both methods supported
import {ExecutorSendReceiveQuoteBoth} from "wormhole-solidity-sdk/Executor/Integration.sol";

Pick the variant that matches your quoting strategy and extend from there.

Reference: Executor Framework Docs | Hello Executor Demo

CCTP Integrators

If you're using Wormhole's CCTP bridge, the Executor extends CCTP with the same quote-based relaying model. Helper contracts (CCTPv1WithExecutor and CCTPv2WithExecutor) wrap the CCTP burn and Executor request into a single entry point, keeping integration surface minimal.

Reference: Integrate CCTP with Executor

Can't Migrate by April 1?

If your timeline doesn't allow a full migration before the cutoff:

  • Your VAAs will continue to be signed by the Guardian network. Your messages are still valid.
  • Manual redemption scripts are available to handle delivering messages to destination chains. If you need these, please reach out to Wormhole Contributors.
  • Start the migration immediately after the deadline. The sooner you're on Executor, the sooner you gain access to new chain expansions, better pricing, and long-term support for automatic relaying.

Key Resources

ResourceLink
Standard Relayer → Executor Migration Docswormhole.com/docs/products/messaging/guides/executor/executor-vs-sr/
Executor Framework ReferenceExecutor Framework
NTT with Executor Integration GuideNTT + Executor
CCTP with Executor Integration GuideCCTP + Executor
Hello Executor Demo (end-to-end reference)GitHub
Executor Contract Referenceexample-messaging-executor

Summary

Standard RelayerExecutor
Chain supportEVM onlyEVM + non-EVM (Solana, Aptos, Sui, more)
New chain expansionsNoneActive
On-chain footprintStateful, upgradeableStateless, immutable
Pricing modelFixed delivery pricing per providerCompetitive, quote-based
StatusDeprecated: shutting down April 1, 2026Actively supported

If you need help with this migration, Wormhole Contributors are available. Reply to the announcement thread or DM directly.

Stay connected.
Build what's next.

Tools for builders.
Open to all.