Web3 온보딩은 지갑 문제가 아니라 신뢰 문제다.
출처: Dev.to
대부분의 Web3 온보딩 조언은 같은 지점에서 시작합니다:
지갑 연결을 더 쉽게 만들라.
그것은 도움이 되지만 충분하지 않습니다. 지갑 연결은 눈에 보이는 첫 번째 실패일 뿐입니다. 더 깊은 문제는 Web3가 사용자에게 “아무도 믿지 말라”는 메시지를 반복해서 전달하는 시스템을 신뢰하라고 요구한다는 점입니다. 그 모순은 설계하기 어렵습니다.
Web2에서는 온보딩이 주로 마찰을 줄이는 것이었습니다. Web3에서는 위험을 숨기지 않으면서 불확실성을 줄이는 것이 목표입니다. 두 일은 동일하지 않습니다.
사용자가 지갑을 연결하기 전에 스스로에게 조용히 묻는 질문들:
- 이게 진짜인가?
- 안전한가?
- 클릭하면 무슨 일이 일어나지?
- 비싼 서명을 하게 되는 건가?
- 아무것도 잃지 않고 떠날 수 있는가?
- 누가 만들었는가?
- 왜 이 인터페이스를 믿어야 하는가?
대부분의 암호화 제품은 영웅적인 헤드라인, 토큰 로고, 그리고 “지갑 연결” 버튼으로 그 질문에 답합니다.
그것만으로는 충분하지 않습니다.
“지갑 연결” 버튼은 일반 SaaS에서의 CTA가 아니라 신뢰 경계입니다. 사용자가 웹사이트를 읽는 단계에서 주소를 노출하고, 확장 프로그램을 열고, 완전히 이해하지 못한 권한에 서명하려는 순간으로 이동하는 지점이죠. 디자이너는 이 순간을 뉴스레터 가입보다 은행 승인에 더 가깝게 다뤄야 합니다.
흔히 저지르는 실수는 DeFi 앱을 핀테크처럼 보이게 만들어 문제는 해결됐다고 가정하는 것입니다.
- 깔끔한 카드
- 둥근 버튼
- 멋진 차트
- 현대 은행 앱 같은 대시보드
이것은 도움이 될 수 있지만, 잘못된 자신감을 심어줄 위험도 있습니다.
사용자가 불변 계약, 브리지 위험, 슬리피지, 청산, 잠금 해제 기간, 토큰 승인 등과 상호작용한다면, 인터페이스는 이러한 요소들을 보여줄 책임이 있습니다. 복잡성을 숨기면 단기적으로 전환율이 오를 수 있지만, 나중에 숨겨진 비용을 발견했을 때 신뢰는 크게 손상됩니다.
목표는 Web3를 Web2처럼 만드는 것이 아니라, Web3를 이해하기 쉽게 만드는 것입니다.
강력한 Web3 온보딩 흐름은 사용자의 약속을 요구하기 전에 네 가지 질문에 답해야 합니다.
카테고리나 프로토콜 구조가 아니라 실제 사용자 결과에 초점을 맞춥니다.
잘못된 예:
A decentralized liquidity coordination layer for next-generation asset primitives.
개선된 예:
Deposit stablecoins, earn variable yield, and withdraw any time unless a pool is locked.
평이한 언어가 덜 세련된 것이 아니라, 더 유용한 것입니다.
사용자에게 지갑, 특정 체인, 가스, 토큰 잔액, 서명, 브리지가 필요하다면 초기에 명시하세요. 첫 번째 오류 메시지에 설명을 맡기지 마세요.
좋은 온보딩 화면 예시:
- Works on Base
- Requires ETH for gas
- No deposit required to explore
- Wallet connection is read‑only until you deposit
이렇게 하면 알려지지 않은 요구사항이 알려진 단계로 바뀌어 불안감이 줄어듭니다.
많은 팀이 위험을 보여주면 전환율이 떨어진다고 생각해 주저합니다. 하지만 숙련된 사용자는 이미 위험이 존재한다는 전제를 가지고 있습니다. 인터페이스가 위험을 숨기면 프로젝트는 덜 신뢰받게 됩니다.
위험은 극적으로 보여줄 필요가 없습니다. 구체적으로 보여주면 됩니다.
예시:
- Yield changes over time.
- Withdrawals can take up to 24 hours.
- Bridging may require a second transaction.
- Token approvals can be revoked later.
- Liquidation can happen if collateral value drops.
좋은 위험 설계는 경고 벽이 아니라 맥락적 정직입니다.
각 서명에는 명확한 전·후 상황이 있어야 합니다.
서명 전:
- You are allowing this contract to spend up to X.
- This does not move funds yet.
- You can revoke this later.
서명 후:
- Approval confirmed.
- You can now deposit.
- Estimated gas was X.
사용자는 지갑 팝업을 혼자 해석할 필요가 없습니다. 많은 팀이 지갑 상호작용까지 설계하고, 그 뒤를 MetaMask, Phantom, Rabby, WalletConnect 등 사용자가 선택한 지갑에 넘겨버립니다. 이는 실수입니다.
지갑 팝업도 사용자 여정의 일부이며, 설계자가 직접 제어하지 않더라도 대비할 수 있습니다. 팝업이 나타나기 전에 사용자를 준비시키고, 닫힌 뒤에 무슨 일이 일어났는지 확인해 주세요.
앱이 “Sign message”라고 표시하고 지갑이 암호 같은 문구를 보여주면, 사용자는 앱이 불명확하다고 느낍니다. 인터페이스는 지갑 행동을 인간적인 표현으로 프레이밍해야 합니다:
- “Confirm ownership of your wallet.”
- “Approve USDC spending.”
- “Deposit into the ETH pool.”
- “Claim rewards.”
기술적인 트랜잭션이 사용자의 의도가 아닙니다. 의도에 맞춰 디자인하세요.
일부 제작자는 “온보딩을 단순화하라”는 말을 듣고 중요한 세부 정보를 제거하려 합니다. 그렇지 않습니다.
점진적 공개(progressive disclosure)는 적절한 순간에 적절한 세부 정보를 보여주는 것입니다.
첫 화면에서는 사용자가 방향성을 잡아야 합니다.
연결 전에는 요구사항과 안심 요소가 필요하고,
서명 전에는 결과가,
서명 후에는 확인 및 복구 경로가 필요합니다.
고급 사용자는 여전히 트랜잭션 해시, 계약 주소, 문서, 감사 보고서, 탐색기 링크 등에 접근할 수 있어야 합니다. 하지만 이러한 상세 정보는 첫 화면을 압도하지 않고 여정을 보조하는 역할을 해야 합니다.
출시 전 스스로에게 물어보세요:
- 지갑을 연결하지 않아도 제품을 이해할 수 있는가?
- “Connect wallet” 버튼이 어떤 접근 권한을 요구하는지 설명하고 있는가?
- 체인, 가스, 토큰 요구사항이 실패 전에 보이는가?
- 위험한 행동이 지갑이 열리기 전에 설명되는가?
- 모든 서명에 명확한 인간 친화적 라벨이 있는가?
- 서명 후 앱이 무엇이 바뀌었는지 확인해 주는가?
- 사용자가 문서, 감사 보고서, 계약 주소, 지원 경로를 찾을 수 있는가?
- 읽기 전용 또는 미리보기 모드가 있는가?
- 빈 상태(empty state)가 유용한가, 아니면 단순히 “connect wallet”만 표시하는가?
이 질문들에 대부분 “아니오”라면 문제는 지갑이 아니라 신뢰 설계입니다.
스마트 계약은 기술적 신뢰를 만들고, 인터페이스는 인간적 신뢰를 만듭니다.
프로토콜은 안전해도 의심스러울 수 있고, 제품은 강력해도 첫 서명에서 사용자를 잃을 수 있습니다. 대시보드는 정확해도 사용자가 무엇을 해야 하는지 모르면 실패합니다.
Web3 온보딩은 UX를 프로토콜을 감싸는 래퍼가 아니라, 프로토콜 신뢰 시스템의 일부분으로 대할 때 개선됩니다.
즉,
- 미스터리 버튼을 줄이고,
- 설명되지 않은 서명을 줄이며,
- 사용자가 위험 모델을 이미 이해하고 있다고 가정하는 대시보드를 줄이고,
사용자가 충분히 신뢰하고 행동할 수 있도록 진실을 명확히 전달하는 인터페이스를 늘려야 합니다.
저는 Web3 크리에이티브 디렉터로서, 복잡한 제품을 실제로 신뢰하고 사용할 수 있는 인터페이스로 바꾸는 일을 돕고 있습니다. 이 분야에서 작업하고 있다면, somaryuu.xyz 를 방문해 주세요.