Borrow USDC

Learn how to borrow USDC on Base and transfer it to CCTP-supported networks


Borrow USDC from Moonwell on Base using your supplied assets as collateral.

How to Borrow

Step 1: Supply an Asset to Base

  • Supply one or more assets to Moonwell on Base. These assets will serve as collateral for taking out a USDC loan.

  • Assets that can be used as collateral are listed in Markets.

  • Follow the How to Supply step-by-step tutorial for more information on how to do this.

Step 2: Enable Asset as Collateral

  • The collateral toggle allows users to specify whether they want to use an asset as collateral for borrowing purposes.

  • To designate an asset for use as collateral, the user must select "YES" on the collateral toggle. This indicates their intention to use the asset as collateral for borrowing.

  • If a user does not intend to borrow against an asset, they can keep the collateral toggle set to "NO". This indicates that the asset will not be used as collateral for borrowing.

Step 3: Select USDC on Base to Borrow

Option 1

  • Locate USDC on Base and click "Borrow"

  • You will be directed to the "Borrow" page for USDC on Base

Option 2

  • Select USDC on Base from the "Borrow" asset list (if it not already selected)

Step 4: Select Network to Transfer Borrowed USDC

  1. Confirm USDC on Base is selected in the "Borrow" modal

  2. With USDC on Base now displayed, a message will appear in the "Borrow" modal, notifying you that "This market supports cross-chain transfers."

  3. Below this message, you will find a "Network Selector" tool. This tool enables users to choose the network to which USDC borrowed on Base will be transferred. Click on the displayed network next to "From" to select a different network than the one currently shown.

  • USDC contract addresses on each network can be found by hovering over the information tooltip inside the Network Selector. Additionally, block explorer links have been provided for easy lookups.

Step 5: Borrow USDC

  • Enter the amount of USDC to be supplied and click "Borrow".

  • A window will appear asking to accept and approve multiple transactions. Simply follow the steps provided and wait for the transactions to complete.

  • To monitor the progress of the cross-chain transfer, you can utilize SocketScan. Click on "View on SocketScan" located next to the "Estimated Time Remaining" to access the transfer details on SocketScan.

  • You can click on any of the "Processing" or "Completed" statuses with external link symbols to be redirected to the onchain transactions executed in each step.

  • Once you have completed all of the steps, USDC will have been successfully borrowed USDC on Base, and transferred it to your chosen network.

Please be aware that cross-chain transfers do not happen instantaneously. Each network has its own finality time, and wait times can also be affected by network congestion. Typically, transactions are processed within a 20 minute timeframe.

Transfer Fee and Refuel

  • Circle's CCTP charges a fee of approximately 0.4 USDC for each transfer. This fee is deducted from the bridged amount of USDC that you receive on the destination network.


  • Refuel, developed and maintained by Socket, is a solution designed to address the problem of gas token insufficiency when bridging tokens to a new network.

  • With Moonwell, Refuel is automatically enabled for all cross-chain transfers if you do not have any gas tokens on the destination network.

  • Gas tokens are a necessity to pay for transactions on every network. Refuel prevents situations where user funds are left stranded on a network without the ability to interact with them. If the system detects a lack of gas tokens, disabling Refuel is not possible and the cross-chain transfer will not continue.

Example: You would like borrow USDC on Base and transfer it to Avalanche.

On Base, ETH is used as the gas token.

On Avalanche, AVAX is used as the gas token.

A small portion of ETH on Base will be deposited into a liquidity pool operated by Socket. In return, you will receive an equivalent value of AVAX on Avalanche. Once the transfer to Avalanche has been successfully completed, you will receive this AVAX along with your USDC.

  • If you do not have enough gas tokens on the origin network, a red message will appear, informing you that your wallet has run out of gas tokens for that network.

Example: You would like to borrow USDC on Base and transfer it to Avalanche. Additionally, you do not have any AVAX on Avalanche or ETH on Base.

To proceed with the cross-chain transfer, you have two options:

  1. Fund the origin network with its gas token. In the example above, this would be ETH on Base. By doing so:

Refuel will provide an equivalent value of AVAX on Avalanche, and

Allow the cross-chain transfer to continue.

  1. Fund the destination network with sufficient gas tokens. In the example above, this would be AVAX on Avalanche. If there is sufficient gas tokens on the destination network, Refuel won't be necessary, and the cross-chain transfer can continue.

Last updated