Skip to main content

Bridge NFTs

SkyBridge supports ERC-721 NFT bridging via Chainlink CCIP across all 11 chains. The bridge locks your NFT on the source chain and deploys a mirrored SkyNFT contract on the destination the first time any NFT from that collection arrives.


What you need

  • An ERC-721 NFT in your wallet
  • Native currency for the flat EntryPoint fee (see Fees)

Step-by-step

1. Connect your wallet

  1. Open the SkyBridge app.
  2. Click Connect and complete the wallet connection.

2. Switch to the NFT tab

At the top of the interface, click the NFT tab to switch from the ERC-20 view.

3. Select your source and destination chains

Choose where you are bridging from and to. CCIP NFT bridging is available on all 11 chains.

4. Select your NFT

  1. The interface shows NFTs in your wallet for the selected source chain.
  2. You can search by collection name or token ID.
  3. Click the NFT you want to bridge.

5. Review and confirm

  1. Click Review to see:
    • The NFT name and token ID
    • Source and destination chains
    • Flat fee in native currency
    • Destination address
  2. Click Bridge and sign in your wallet.

6. Track your transfer

Open the Activity panel. NFT transfers over CCIP typically complete in a few minutes. When the transfer lands on the destination, your NFT appears in the bridged collection on that chain.


Batch bridging

You can bridge multiple NFTs from the same collection in a single transaction.

How to batch bridge

  1. On the NFT tab, select your source and destination chains.
  2. Select the first NFT you want to bridge from the grid.
  3. Use the + button or multi-select mode to add more NFTs from the same collection.
  4. Review — the transaction summary shows the count and collection name (e.g., "3 SHIBOSHIS").
  5. Sign once and all selected NFTs travel in a single CCIP message.

Batch bridging is subject to the same flat fee as a single-NFT transfer (one EntryPoint call, one CCIP message). MegaETH has a lower gas-per-call cap; on that chain, very large batches may need to be split.


How the token model works

When an NFT collection first arrives on a new chain, the bridge deploys a SkyNFT contract. The contract is deployed at a deterministic CREATE3 address — the same address for that collection on every chain it ever reaches.

The SkyNFT contract hard-codes owner() = address(0) (pure function), and the bridge holds DEFAULT_ADMIN_ROLE. This means:

  • The bridge, not an external admin, controls minting and burning
  • NFT metadata is preserved across the bridge (name, symbol, tokenURI)
  • Royalties in the token metadata are carried across the bridge as stored values, but cross-chain royalty enforcement is not something OpenSea or other marketplaces handle today — this is a marketplace limitation, not a bridge bug

Notes

  • NFT bridging does not use the OP Standard rail. Even when bridging to Base or Optimism, NFTs travel via CCIP.
  • Bridging back to the original chain unlocks your original NFT from escrow on the source chain.
  • Collections that use centralized admin functions (e.g., owner-controlled minting after deployment) may behave differently after bridging — the bridge deploys a fresh SkyNFT, not a copy of the original contract.