Every screen in Earn and Rewards functions. No two screens agree on what product they belong to.
Earn drains the main balance to zero. Rewards leads with a penny. The home banner advertises a rate no one can get. Each feature shipped on time. They shipped into different products.
A user opens Ramp Wallet with $29.40. The app tells them to earn. They tap Earn. They deposit. Their balance reads zero.
The activity feed shows -$29.39, identical to spending money. The "Earn with your stablecoin!" banner still shows on a zero balance. The user has $50.58 across three tabs. No tab shows the total.
The deposit works. The vault works. Each balance is correct in its own tab. But the app, as a whole, tells a user with $50 that they have nothing.
A product vision exists. It was written down. Below are the quotes, then the screens.
This is what we said we'd build.
Direct quotes from the product vision document. Read them before scrolling further.
"Every cent you hold earns, moves like a message, and can be spent with a card — with no trade-offs on safety, speed, or fees."
"From the moment you top up, every cent earns yield every second."
"No 'move to savings', no vaults, no clicks. Money shouldn't nap."
"One clean app surface: balance, card, send, earn."
"Under the hood: yield, multi-chain routing, best-route swaps, programmable money. The user sees simplicity."
"Neobank users who want better rewards, yield and crypto upside without scary UX."
"$100 in rewards waiting in your Ramp wallet."
"Get 50% of the swap fee back on each of your first 3 swaps."
"Activate your card. Spend $2,000 in 2 months to earn $40."
"Stake $100+ and receive $10–$15 in rewards."
One balance. Yield runs from the moment you deposit. Complexity stays backstage. Every reward has a dollar sign. That's the app described above. Below is what shipped.
What shipped, held against what was written.
"From the moment you top up, every cent earns yield every second. No 'move to savings', no vaults, no clicks."
Earn is a separate screen with a manual deposit. After depositing, the main balance reads $0.00. The feed records -$29.39. Three tabs show three different numbers. No tab shows the sum.
"Under the hood: yield, multi-chain routing, best-route swaps. The user sees simplicity."
The deposit screen displays: protocol name (Morpho), vault manager (Steakhouse), network (Base), spending cap, contract address (0xa59B...321E71), wallet hex (0xbeef...c7D048), and a "Powered by Morpho" footer.
More of what the user sees:
29.393484 USDC instead of $29.390xa59B...321E71, 0xbeef...c7D048The Earn screen before any deposit shows "0 USDC" on a blank page. No explanation of what Earn is. No projection of returns.
"Earn returns between 3-7% APY" — home screen, visible on every session.
One vault. One option. 3.53% APY. No path to 7%. No second vault. No choice. The range on the banner corresponds to nothing the user can access.
The vision says "money shouldn't nap." The target user has alternatives. To find them, pull every USDC pool from DefiLlama's yield aggregator, filter for stablecoin deposits over $100M TVL, remove leveraged positions and perps vaults (Avantis, Gains, Yo Protocol show 10-17% but carry liquidation risk), and sort by APY. What's left is what a money-app user could actually deposit into today:
| Provider | Chain | TVL | APY |
|---|---|---|---|
| Maple | Ethereum | $3.0B | 4.56% |
| Jupiter Lend | Solana | $541M | 4.15% |
| Sky Savings Rate | Ethereum | $5.8B | 4.00% |
| Spark Savings | Ethereum | $341M | 4.00% |
| Fluid Lending | Ethereum | $225M | 3.63% |
| Ramp Wallet (Steakhouse USDC) | Base | $408M | 3.55% |
Live on-chain rates via DefiLlama Yields API, March 6, 2026. Coinbase advertises 4.1% USDC rewards (custodial, not on-chain). Coinbase Wallet claims 4.7%. These are what the target user sees when comparing.
"$100 in rewards waiting in your Ramp wallet." "$40 reward." "50% fee refund." "$10–$15 in partner tokens." Every step of the activation ladder names a number.
Four missions with progress counters (0/2, 0/3, 0/2, 0/1) and no dollar amount on any of them. The headline number after engaging with Rewards: 0.01 USDC. The loyalty gauge says 1/9. What happens at 9 is never explained.
The vision describes a money app. What shipped is a DeFi dashboard with a to-do list.
The protocol names, the hex addresses, the missions that pay a penny and promise nothing — they all got there one decision at a time. The document that should have caught them was written. It just wasn't in the room when the decisions were made.