Skip to main content

How to earn yield on USDC without giving up custody

Most guides to USDC yield start with a list of platforms. This one starts with a question those lists skip: when your USDC is earning, who can move it?

The answer is different for an exchange savings account, a lending pool, a vault token, and an agent in your own wallet, even though all four get called "earning on USDC". People who lost funds in 2022 had yield. What they did not have was custody, and most of them did not know that until withdrawals stopped.

This is a working method in seven steps, from defining what custody means to you through to testing an exit with real money before you scale. It uses Deploy Finance as the worked example for the individually held model, and points to lending and vault options where those fit better.

Step 1: Decide what "custody" has to mean for you

Self-custody means you hold the keys. It does not tell you where the USDC is while it earns. Three arrangements all get called non-custodial:

  • Keys yours, funds pooled. You supply USDC to a lending market or a vault. The contract holds it alongside everyone else's, and you hold a claim token. No company can take it, but your exit depends on the pool's liquidity and the contract's rules.
  • Keys yours, funds wrapped. You hold a token such as a synthetic dollar or a tokenized fund share. The issuer holds the backing. Your custody is of the wrapper, not the assets.
  • Keys yours, funds individually held. Your USDC stays in a wallet only you control, and a strategy trades it under a scoped permission. No pool, no claim token; the position is yours alone.

Write down which of these you will accept before you look at any rate. Each one is defensible. Mixing them up is how people end up with a claim on a pool when they thought they had a wallet balance.

The self-custodial USDC yield comparison ranks specific products by this axis if you want the list. The rest of this page is the process.

Step 2: Match the yield model to that decision

Each custody arrangement comes with a return source, and the return source tells you what can stop paying.

ModelReturn sourceWho paysWhere USDC sitsExit depends on
Lending market (Aave, Morpho)Borrower interestBorrowersPooled in the market contractUnborrowed liquidity
Yield vault (Yearn, Morpho vaults)Underlying strategy, minus feesWhatever the strategy harvestsPooled in the vaultVault and underlying liquidity
Synthetic or savings token (sUSDe, sUSDS)Funding, staking, or protocol revenueTraders, validators, or a treasuryIssuer's backingRedemption terms or secondary market
Autonomous agent (Deploy Finance)Perpetual fundingLeveraged tradersYour own walletRevoking a permission

If you chose "pooled" in step 1, lending markets are the simplest and most liquid option. If you chose "wrapped", read the issuer's redemption terms before anything else. If you chose "individually held", the agent model is currently the only one that delivers it, and the rest of this page follows that path.

A rate that looks high relative to the others in the table is being paid for a risk you have not identified yet. Find the risk first.

Step 3: Set up a wallet you actually control

The wallet is where custody is decided, so it comes before funding.

For pooled and wrapped models, any wallet where you hold the private key works: a hardware wallet, a browser extension, or a smart account. For the agent model, you need a wallet that can grant a scoped, revocable permission to a strategy without handing over the key. That means an account-abstraction wallet with session-key support. The best account-abstraction wallets page covers the options.

Deploy Finance handles this inside the product. You create a wallet by signing in with email or Google, and Privy's embedded-wallet infrastructure generates a key that only you control. Three checks confirm the custody claim before you deposit anything:

  1. Can you export the private key? Deploy's key export guide shows the process. A wallet you cannot export is a wallet someone else holds.
  2. What can the agent's permission do? On Deploy, the session key can trade on whitelisted venues and cannot transfer or withdraw funds. Read the session-key explanation so you know the boundary.
  3. Can you revoke it yourself? The revoke guide shows the button. If revocation requires a support ticket, it is not self-custody.

Enable two-factor authentication on the account before funding. The 2FA guide takes a few minutes.

Step 4: Get USDC onto the right chain

USDC exists on many chains, and sending it to the wrong one is the most common way to lose time or money at this step.

Confirm the chain the product expects. Deploy Finance takes USDC deposits on Arbitrum and bridges to Hyperliquid for execution; the execution page lists this. Aave and Morpho run on several chains with separate markets on each. Read the product's own deposit page rather than assuming.

Two routes to get USDC there:

  • From an exchange. Buy USDC on the exchange, then withdraw to your wallet address, selecting the chain the product uses. Double-check the network on the withdrawal form; exchanges default to whichever is cheapest for them.
  • With a card. Some products embed an onramp. Deploy's buy-USDC-with-card guide covers the flow, including where the fees are.

Send a small test amount first. If it arrives, send the rest. If it does not, the wrong-chain recovery guide covers the usual cases. The deposit-mistakes page lists the rest.

Step 5: Fund the position and read what you approved

This is the step where custody is either kept or given away, and it happens in one signature.

For a lending market or vault, the transaction is an approval plus a deposit. Read the approval: an unlimited token approval to a contract is a standing permission, and you should revoke it after depositing if you do not plan to deposit again.

For the agent model, the transaction is a permission grant. On Deploy, you choose an agent and an allocation, and the approval screen shows what the session key can do before you sign it. The delegation guide walks through it. The two live agents are:

  • Income: Funding Rates: market-neutral; holds a hedged position and collects perpetual funding.
  • Superstar: directional; takes long or short positions under a defined strategy.

For a first deposit into any model, use an amount you would be comfortable learning with. Yield on a test amount is small. So is the cost of discovering a product does not work the way you thought.

Step 6: Verify where the USDC is

After funding, confirm the custody arrangement matches step 1 by looking at the chain, not the dashboard.

  • Pooled models: your wallet now holds a claim token (aUSDC, a vault share). The USDC itself is at the contract address. That is expected; it means you are a pool participant.
  • Wrapped models: your wallet holds the wrapper token. The backing is wherever the issuer's disclosures say it is.
  • Agent model: your wallet address still holds the balance or the position. On Deploy, the agent wallet is yours; the monitoring guide shows how to see the position, and the funding-agent-wallet concept page explains why the balance is reported the way it is.

Bookmark the wallet address on a block explorer. Check it once a week without logging into the product. If the explorer and the dashboard disagree, the explorer is right.

Step 7: Test the exit before you scale

A yield product is only as self-custodial as its worst-day withdrawal. Test it on a good day.

Withdraw a portion of the test deposit. Note what happens and how long it takes:

  • On a lending market, the withdrawal succeeds up to unborrowed liquidity. Note the utilization; at high utilization, a full exit would wait.
  • On a vault, note any cooldown, exit fee, or slippage from closing positions.
  • On a wrapped token, redeem through the issuer once and once on a DEX, and compare.
  • On Deploy, stop the agent, confirm funds return to the wallet, then withdraw to an external address. The withdrawal tips page lists what to expect on timing.

Only after the exit works should the deposit grow. Increase in steps, and repeat the review of permissions each time you add: an approval granted to a contract months ago is still live unless you revoked it. The review-permissions guide is the checklist.

What this method will not do

It will not make any of the yield safe. A lending market can accrue bad debt, a vault's strategy can lose, a wrapper can depeg, and a funding agent can face negative funding or a venue outage. Custody decides who can move your USDC; it does not decide whether the strategy works. Read the risks page for the agent model and each product's own disclosures for the rest.

It also will not give you the highest headline rate. The highest headline rate is nearly always attached to the arrangement that fails one of the checks above.

Verdict

Decide the custody arrangement first, pick the yield model that matches it, confirm you can export the key and revoke the permission, send a test amount to the right chain, verify the balance on a block explorer, and withdraw once before you scale. Every step is boring. Skipping any of them is how people who "earned yield on USDC" discover they held a claim on someone else's balance sheet.

Learn more

Start with Deploy Finance

Create a self-custodial Deploy Finance wallet and review the live agents.