The Situation
Every customer needed hand-holding. Every single one.
AvaCloud is blockchain-as-a-service — think AWS, but for launching custom blockchains called L1s. The setup flow was so complex that no one could do it alone. Support walked every customer through it manually. For a platform trying to scale, that’s a dead end.
Then ACP-77 happened — a protocol upgrade that reduced the cost of launching an L1 by 99%. For the first time, self-service was actually possible. This was our window to redesign everything.
I owned the end-to-end redesign of the L1 setup experience.

The North Star
Our business goal was a funnel:
Every design decision tied back to moving users through this funnel. The target: smaller startups who could self-serve. Enterprise clients had sales teams. This was about unlocking the long tail.
The funnel existed as a business goal across infrastructure, marketing, and product teams. My job was to translate it into a design framework — every interaction, every visual state, every moment of feedback tied back to moving users one step further.
What ACP-77 actually changed
The setup process before ACP-77 was brutal. Here’s what a user had to go through — and what it became after the upgrade.
Eliminated: 2,000 AVAX stake · Cross-chain transfers · Validator pending state · Multi-hour waits
The difference is stark. Most of the old steps weren’t just slow — they were points where users gave up entirely. The redesign wasn’t about making each step faster. It was about eliminating the steps that shouldn’t exist.
Design Principles
From support conversations, I knew why customers chose AvaCloud: the chain’s reputation for reliability. They trusted the infrastructure. But switching from hand-held onboarding to self-service meant that trust had to be earned by the interface itself — not by a human on a call. That gap defined two principles that guided every decision.
Build trust through transparency
Blockchain is intimidating. Users are configuring infrastructure that handles real assets. They need to feel in control, see what’s happening, and never feel lost.
- Full control — let users choose their own path
- Clear steps — no hidden states, no mystery loading screens
- Communicate proactively — tooltips, progress indicators, timing expectations
Use emotion to drive conversion
Feelings move people through funnels faster than features do.
- Celebrate wins — make progress feel real, not transactional
- Incomplete states feel incomplete — motivate the next action visually
- Urgency before it’s too late — prevent churn at the moments that matter
Solution 1: The Setup Flow
What was broken
Users landed in a technical interface with no guidance, multiple waiting phases with zero feedback, and no sense of whether the system was working or broken. Smaller users just gave up.
What I designed
Every design decision maps to an intention:
The single-page form
I collapsed a multi-step wizard into a single scrollable page. Everything is visible upfront — name, token configuration, region selection. No surprises, no hidden steps.

The hardest design question wasn’t what to show — it was the order. Setting up Stripe payment is a major friction point, and we debated where it belonged in the flow. Asking for payment while users are still configuring their L1 would create a drop-off wall at the worst moment — before they’ve seen any value. The free trial solved this: let users configure, deploy, and experience their running chain first. We were confident in the technology — once someone sees their L1 live, they’re far more likely to add payment and keep going. The flow became progressive: build trust first, then convert.
From session recordings, we noticed advanced users trying to jump between configuration sections and getting stuck in a linear flow. We added section navigation — a small change that made the difference between “this respects how I work” and “this is fighting me.”
Celebration & guided tour
When the blockchain finishes deploying, users don’t just see a success toast. They get a moment — a celebration screen that makes the achievement feel real. Then a 3-step guided tour orients them on what to do next.

Solution 2: The L1 Card
The card is where users live after setup. It’s the primary touchpoint they return to. I redesigned it to do three jobs — each tied directly to the funnel.
The anatomy

Job 1 — Show progression clearly
The visual treatment of the card changes at every stage. Users should always know exactly where they are and what’s next.

Each state feels different — not just looks different. The deploying state shows estimated time remaining. The free trial state glows with a fading border and surfaces a teardown countdown. The paid state shows service badges and health indicators.

Job 2 — Drive ecosystem discovery
To convert to Paid Testnet, users need 1,000 transactions. They need to actually use their L1 — not just set it up.
I added service badges — Gas Relayer, Interoperability — that appear “unlit” by default. When users enable a service, the badge lights up. The visual incompleteness creates an instinct to explore and complete the card.

It worked. Users clicked on unlit badges just to see what they’d unlock. The completion instinct drove exactly the behavior we needed — service adoption that leads to transaction volume.
Job 3 — Prevent churn
When a free trial ends, the L1 dies. Permanently. A churned user never converts.
I designed a multi-touch warning system that escalates in urgency:
| Touchpoint | Timing | Tone |
|---|---|---|
| Email + in-app banner | Day 1 of trial | Gentle reminder |
| Email + in-app banner | Days 3, 4, 5 | Escalating urgency |
| Email + in-app banner | Before expiration | Final warning |
We designed the warning system with the client support and marketing teams. AvaCloud isn’t a daily-use product — users come back only when they need to change configuration or grab an RPC URL. So email was essential to reach them where they actually are. The escalating urgency wasn’t arbitrary: when a free trial ends, the L1 is gone permanently. There’s no recovery. That irreversibility justified the aggressive timing — better to over-communicate than let a user lose their chain because they missed a notification. Plus in-app prompts to set up payment before it’s too late.
Impact
Web3-native companies preferred self-service over talking to us. Some never contacted support at all.
One client set up their L1 at 2am and never reached out to us. That was the win.
Reflection
What was hardest: Translating technical complexity into something users could trust and act on. Blockchain is intimidating — my job was to make it approachable without dumbing it down.
What I’d do differently: The trial expiration is too harsh. A grace period to recover expired L1s would reduce anxiety and might actually improve conversion — users who lose their work don’t come back. I’d also explore intent-based onboarding: survey goals upfront, then recommend the right tools instead of showing everything.
What this taught me: Web3 is built on “trustlessness” — the protocol doesn’t require trust. But the UX is entirely about trust. Showing users exactly what’s happening and letting them choose their own path — that skill isn’t domain-specific.


