← John Etokhana

MilkyWay: making liquid staking legible

(2023 to 2025)

Staking crypto locks your money up for days, behind validators and rules most people don't understand. I designed MilkyWay so someone could stake with confidence without becoming an expert first.

app.milkyway.zone
MilkyWay staking dashboard

Background

MilkyWay is a liquid staking app in the Cosmos ecosystem. Staking means locking up tokens to help run a network, and earning a return for it. Liquid staking gives you a token back that you can keep using while your stake earns. I led product design from before launch, working with an engineer and two product managers: the staking flow, how people choose a validator, a Lite and a Pro mode, and the reward dashboards. I also built MilkyWay’s atomic design system.

What’s the impact?

What’s the problem?

Liquid staking is useful and hard to follow: validators, unbonding periods, exchange rates, rewards that build up over days. Most apps show all of it raw and leave you to work it out. With real money involved, confusing design is a financial risk.

Is this a real problem?

The most common questions from the community and support were the same few: where do I see my stake, when can I claim my rewards, how does unbonding work, and why does my balance look different in another tool. People were leaving the app for outside dashboards just to understand their own money.

I had rough usage patterns, friction we saw in wallet connection and in finding your position, and what the team and community told us. I didn’t have formal user studies or a funnel that could isolate what design changed, so I treat these patterns as direction, not proof.

Challenges

  1. Two audiences pretending to be one. Experts want density and control. Everyone else wants an app that works like a normal app.
  2. The default carries their money. Everyone has to pick a validator, most people don’t know how, and hiding the choice would take control away from experienced stakers.
  3. Mistakes cost money, and time is invisible. Actions are often permanent, and unbonding and rewards happen off screen, over days.

What did we ship?

Newcomers can accept a sensible default in one step. Commission, uptime and voting power stay one tap away for people who check. Making a default people trust took more design work than showing every option.

MilkyWay validator list with stake, voting power and status

Lite by default, Pro one switch away

My rule for the split: the simple view holds the decision and what follows from it. How much, with whom, what you get back, and what you commit to. The advanced view holds the machinery. The test is whether someone can act correctly from the simple view alone.

I ran workshops leading up to a full plan, presented it to the team, and the team signed off on it.

Considered
One middle-of-the-road screen for everyone
  • Good: Simplest to build and maintain
  • Not so good: Too much for newcomers, too shallow for experts
✓ What we shipped
Lite by default, Pro on demand
  • Good: Lite gets a first-timer staked safely, with the hard choices made
  • Good: Pro shows pools, operators and restaking
  • Not so good: Two modes to design and keep consistent
  • Not so good: The step up to Pro can feel like a cliff
Lite: one form to stake, withdraw or claim, with the APR and token price beside it
Lite
Pro: pools, AVS and operators, with your balance and what is restaked beside the form
Pro

Your money, inside the app

I brought position, rewards and unbonding into MilkyWay, written in plain words. Unbonding says “claimable in 12 days” instead of protocol terms. I worked on this daily with backend, frontend and research, checking each screen against how people actually read their balances.

MilkyWay claim tab showing amounts claimable in 2, 12 and 23 days

How did we do?

I’m careful with those numbers. In crypto, money staked follows incentives and the wider market at least as much as design. I read them as the protocol doing well at a good time. What I’d put my name to is narrower: people could act without learning the machinery first, and experts didn’t lose anything. It’s the same skill an agentic product needs, where the machinery is more powerful and trust is harder to earn.

Nothing is quite final

Two things changed after launch. The app began with liquid staking at the centre. As the company pushed other products first, I proposed reworking the navigation, and staking moved down, even though it still carried the most money.

We also ended up with more advanced users than light ones, even though most of the money went through Lite. So we gave them more control over their settings, like choosing the gas they pay with so they could pay a lower fee.

One thing I’d do differently: I shipped the clarity work on judgement and observed friction, without the measurement to prove it. Next time I’d agree the design numbers before launch, such as how many people who connect a wallet go on to stake, where they drop off at validator choice, and how often they still need outside tools.

Takeaways

  1. Most people took the recommended validator, and experts could still choose their own. A good default lets beginners act without taking control away from anyone.
  2. Unbonding periods and rewards happen in time people can’t see. Write them in units people use, like “claimable in 12 days”.
  3. We shipped without the measurements to show what design moved. Decide how you’ll measure it before launch, not after.

On repeat

ForgivenessAsake
↑↓ to move ↵ to openLondon