Earn Yield on Shielded USDC, SOL, and USDT
Your dollars shouldn't have to sit idle to stay private. Loyal routes your shielded USDC, SOL, and USDT into Kamino lending vaults, so your balance earns yield the entire time it stays shielded. You don't un-shield to earn, and you don't reveal your balance to collect.

How yield on shielded assets works
Deposit into a shared Vault. Send USDC, SOL, or USDT to Loyal and your tokens join a shared on-chain Vault: one pool per token mint, holding everyone's real SPL tokens commingled. Your position is tracked as a confidential deposit account against that pool, not as coins sitting at your own address.
Your balance stays private. Inside the Vault, balances aren't attributable to any address. Transfers between shielded users don't move real tokens at all; they're arithmetic on deposit accounts, run inside MagicBlock's ephemeral runtime where only the account owner can see or touch the balance.
The pooled tokens earn in Kamino. Because the real tokens sit commingled in the Vault, they don't have to sit idle. The Vault deploys them into Kamino's single-asset lending vaults on Solana to earn yield, while every balance on top stays shielded.
Un-shield to exit. When you withdraw, the Vault pulls the tokens back from Kamino and releases real SPL tokens from the pool to your address. Because deposits and withdrawals both go through the shared pool, there's no on-chain link between the two. Commingled isn't custodial: only your own key can withdraw your balance.
Why your shielded dollars shouldn't sit idle
Shielding a balance just to make it private doesn't stand on its own. Almost nobody parks capital purely to keep it confidential, and privacy needs a crowd: your own transaction volume isn't enough to hide behind. A privacy layer with no other reason to hold funds never attracts the activity that makes it work.
Utility brings the deposits. People park dollars somewhere that also pays them, and once enough capital is parked, the privacy gets stronger for everyone.
Most privacy protocols lock funds that then sit idle for the entire time they're shielded. The dollars backing a shielded balance on Loyal don't. They're deposited into Kamino and earn while the balance stays private. For the same routing logic on open (unshielded) balances, see /earn.
Why this works on Solana
Solana has a deep bench of on-chain native protocols that compose with each other. Loyal's Vault can deposit its underlying tokens straight into Kamino, a major Solana lending protocol, and pull them back on demand, all on-chain, all in code. There's no off-chain bridge, no custodian moving funds between venues, no manual rebalancing desk.
The shielded layer and the yield layer are both Solana programs talking to each other. Composability, backed by large, established DeFi protocols, is what lets Loyal put your idle shielded dollars to work automatically. Transaction costs stay low enough that routing even small balances to yield is economical.
Where the yield comes from
Kamino. Specifically, Kamino's single-asset lending vaults on Solana, the same infrastructure used by Phantom, Pendle, Anchorage, and others. When you earn APY on shielded USDC, SOL, or USDT, your assets are deployed into Kamino's strategies. We don't run our own yield strategies and we don't promise magic numbers.
Rates float with Kamino's lending markets, so the live APY moves with on-chain supply and demand. You don't have to take our word for what it is: the underlying market rate is public on Kamino, and the current rate for your assets shows in the app before you deposit.
Risk: what you can lose and what stays safe
Your principal carries Kamino's risk
A Loyal-side compromise does not move your funds
You hold the keys
Every part is open-source
Who earns private yield with Loyal
Treasury managers
Teams holding runway
DAOs and on-chain orgs
Everyday holders
How it's built
Loyal's shielding runs in open-source on-chain programs, not on a server you have to trust. The shield and un-shield machinery lives in two Anchor programs on Solana mainnet. Transfer privacy comes from MagicBlock's ephemeral runtime, where the per-user accounting happens. The underlying tokens are deposited into Kamino to earn yield.
The whole stack is in the loyal-app monorepo; read how the Vault, the shielding, and the Kamino routing fit together.

Start earning
Deposit USDC, SOL, or USDT, shield it, and it starts earning. Loyal lives in four places, all on the same Squads-based smart account: web app, Chrome extension, Telegram mini-app, and the Android app.

Questions?
Answers.
Deposit USDC into Loyal and shield the balance. Loyal routes the underlying USDC into Kamino's single-asset lending vaults on Solana, so it earns yield while your balance stays shielded: individual balances and movements aren't attributable to your address. You collect yield without un-shielding and without revealing your balance on-chain. Withdraw any time by un-shielding.
Kamino. Specifically, Kamino's single-asset lending vaults on Solana, the same infrastructure used by Phantom, Pendle, Anchorage, and others. When you earn APY on shielded USDC, SOL, or USDT, your assets are deployed into Kamino's strategies. We don't run our own yield strategies and we don't promise magic numbers.
No. The underlying tokens are deployed to Kamino while your balance stays shielded, so yield accrues without you exposing your balance or moving back to a public position. You only un-shield when you want to withdraw to ordinary USDC, SOL, or USDT.
A variable, market rate, not a fixed promise. Yield comes from Kamino's lending markets, so the rate floats with on-chain supply and demand. Loyal doesn't run its own strategies and doesn't quote magic numbers. The underlying rate is public on Kamino, and the current rate shows in the app before you deposit.
Yield carries risk. Your principal is deployed to Kamino's lending vaults while shielded, so a Kamino smart-contract exploit or bad-debt event could affect it, the same risk any Kamino lender takes. Like any DeFi lending position, deposits aren't covered by deposit insurance. A compromise of Loyal's own signing layer does not move your funds, because your private key signature is required on every transfer and withdrawal.
Loyal hasn't commissioned its own standalone audit yet, but it's built on primitives that have been audited heavily. The smart accounts use Squads, the most-deployed smart-account framework on Solana, and transfer privacy runs on MagicBlock's ephemeral runtime. Both have been through multiple independent audits, and the funds earn in Kamino, one of Solana's most-used lending protocols. The full Loyal stack is open-source, so you can review it directly.
Un-shielding pulls your funds back from Kamino first. In normal market conditions this is fast; like any lending market, it can be delayed if the underlying Kamino market is at unusually high utilization, with most supplied liquidity borrowed out. That's standard DeFi lending behavior, not a Loyal-specific lockup.
Yes, without exposing your keys. Loyal supports hierarchical viewing keys: you can grant a read-only view of your balance and history to an accountant, a tax tool, or an auditor, without ever revealing your private key or giving up the ability to move funds. Proof of earnings is opt-in and granular.
No. Keys live in your Telegram passkey, Chrome extension, or web app session. The signing layer is a co-processor running in a hardware-isolated Confidential VM, not a key custodian. Your private key signature is still required to move funds, including to withdraw from the yield position. Pooling tokens in a shared Vault isn't custody either: this is not a centralized exchange, and only your key can withdraw your balance.
No. Balances are encrypted inside the Vault and only readable by the holder of the corresponding key. Loyal team members running the infrastructure see encrypted values and aggregate flow metrics, nothing tied to a specific user, including the portion deployed to Kamino.