Crypto Wallet User Guide

The Complete Crypto Wallet User Guide

A visual walkthrough and comparison of features

--

In the field of blockchain, one of the first experiences that users typically have is with a “crypto wallet.” While cryptocurrency is one of many use cases for blockchain, it is the most popular and interesting for new participants. Even in the early days of this technology, there is already an overwhelmingly broad variety of crypto wallet providers. Their feature sets are vast, as is their approach to user experience and security.

To understand user experience (UX) is to appreciate the power and nuance behind the forces that shape human behavior. Great UX evokes a feeling of ease & delight. Designing an elegant experience requires careful thought for every moment and movement in the user’s journey.

When it comes to asset management tools such as crypto wallets, or even Venmo accounts, the bottom line is that they must provide value to the user. To understand and compare how effectively these crypto wallets perform their job, let’s look at the experience of using a crypto wallet in 6 distinct user journeys. When using a crypto wallet for the first time, you will have to:

  1. Set-up your account
  2. Get familiar with the home screen
  3. Receive funds
  4. Send funds (i.e. sign a transaction)
  5. View wallet activity (i.e. transaction history)
  6. Configure some settings

In this article, we will explore many of today’s popular crypto wallets and discuss noteworthy differences and similarities between them. This analysis covers 18 crypto wallets, with a focus on those created primarily for securing and transacting cryptocurrency (not the more advanced, developer-focused “smart contract wallets”). Coverage includes most crypto wallet types such as desktop, web/online, mobile and hardware wallets, as well as multi- and single-currency variations therein. The purpose of this article is to serve as a visual reference of crypto wallets and to provide a comprehensive feature matrix comparing them all so that people can make informed choices about where to secure their own valuable digital assets.

tl;dr — see image below

(View a high-resolution version here.)

THE UX OF MONEY

Before we dive into the world of crypto, let’s take a brief look at the most common means by which people typically transfer value.

First, we have good old-fashioned paper money, backed by your local government. The UX for hard cash isn’t so bad, especially at a small scale. Paper isn’t too heavy and it comes in some convenient denominations. A major UX flaw, however, is its physical form. Using cash typically means you have to leave your house and physically exchange it with another human within your preferred travel range.

The UX features of cash were then improved by bank checks. Although they are still physical in form, checks can be written in any denomination and one paper check always weighs the same, no matter how much it's worth. Again, its physical form (plus tons of forgery) produced sub-optimal results from a UX perspective. Just listen to this Planet Money podcast episode to learn about the insane process for settling checks.

This brings us to credit cards, an invention from the 1950s, which we’ve come to embrace. Now, when you want to purchase something online today, all you have to do is:

  • Enter your first & last name
  • Enter your personal email address
  • Enter your home shipping address
  • Enter your phone number (usually)
  • Enter your billing address
  • Enter your credit card info: 16 digit credit card number + 4 digit expiration date + 3 or 4 digit security code

This is a lot of personally identifiable information. Not only that, the user experience is cumbersome & time consuming. Further, people continue to repeatedly endure this process of exposing some of their most valuable personal information with many merchants all over the internet. To this day, there still exists a clear opportunity to further improve the UX of money.

Attempting to influence established human behavior is often a futile effort. However, a brief look at the history of credit card adoption in the 1950s draws clear parallels to the state of cryptocurrency adoption today. Before reaching widespread adoption, credit cards faced numerous challenges including a lack of infrastructure, security vulnerabilities, an uneducated user base, fierce competition, and a lack of regulations.

So which of the credit card’s established conventions should be preserved in crypto wallets, and which need reinventing? While some crypto wallets draw heavily from familiar UX conventions, others completely reimagine asset management. However, there is a costly tradeoff between familiarity and novelty. People don’t like adapting their behaviors, but if the added value of doing so is great enough, then you can establish a new “normal.”

SO WHAT DOES A “CRYPTO WALLET” DO?

The single attribute that constitutes a “crypto wallet” is that it stores private keys. That’s it. (A more accurate term would be “private key custody mechanism,” but that isn’t as catchy.) Any other feature that a crypto wallet provides is simply an attempt to either make it easier to use or harder to hack.

This relationship between usability (ease of use) and security (difficulty to hack) is what defines the whole crypto wallet landscape. For the most part, usability and security are inversely related. To make something more secure, it will likely require more complex or obscure operations to access, resulting in poorer usability. Think of these two dimensions as being measured on a spectrum. The ideal crypto wallet is effortless to use and impossible to hack. However, since the ideal crypto wallet doesn’t exist, we have to settle for the reality of tradeoffs.

CUSTODY AS A SERVICE

As the name implies, cryptocurrency is a form of currency, and there are countless ways to use and store it. You likely keep some money in a physical wallet, a bank account, under your mattress, in a PayPal / Venmo account, or in a variety of investment vehicles such as stocks or bonds. Each of these “custody mechanisms” performs a specific job. Accordingly, some are easier to use and others are more secure. Similarly, we will likely experience a future in which each person uses a variety of cryptocurrency custody mechanisms, each of which will serve a different purpose.

Until that future is realized, here’s a guide to today’s competitive landscape of crypto wallets.

The 18 crypto wallets evaluated are:

WEB WALLETS
Coinbase (multi-currency)
Portis (multi-currency)
BitGo (multi-currency)
MetaMask (Ethereum only)
MyEtherWallet CX (Ethereum only)
Dapper (Ethereum only)
Bitski Beta (Ethereum only)

DESKTOP WALLETS
Coinomi (multi-currency)
Exodus (multi-currency)
Jaxx (multi-currency)
Electrum (Bitcoin only)

MOBILE WALLETS
Trust Wallet (multi-currency)
Coinbase Wallet (multi-currency)
Enjin (multi-currency)
Argent (Ethereum only)
Mycelium (Bitcoin only)
Spot (Bitcoin only)

HARDWARE WALLET
Ledger Live with Nano S (multi-currency)

USER JOURNEY 1: ACCOUNT SET-UP

This user journey is critical for establishing account security. The security scheme employed here will have a significant effect on both UX and security of your crypto wallet. Just about every security scheme offers two key features to protect an account from unwanted access:

  1. Some sort of log-in method.
  2. Some sort of recovery method.

Regardless of whether you are using a web wallet, a desktop wallet, a mobile wallet or a hardware wallet, the way in which you access and protect your private keys will likely fall into one of three security scheme categories. We will examine a few examples from each of these account setup security schemes. To illustrate each scheme, the following crypto wallets will be examined:

Scheme 1: Username and password + 2-step verification

  • Coinbase (web hosted)
  • Portis (mobile): Email & password

Scheme 2: Password + recovery phrase

  • Trust Wallet (mobile)
  • Coinomi (desktop)
  • MetaMask (web)

Scheme 3: Other novel approaches

  • Argent (mobile): Password + social recovery with “Guardians”

Note: For completeness, we are showing all account setup screens including those that display private recovery phrases. This will provide any reader with sufficient information to control the displayed account. These are throwaway accounts with no assets stored within them. Do not store any of your own assets within them.

Scheme 1: Username and password + 2-step verification

This scheme is hugely popular across the wider internet. It is a very familiar scheme for the average person and has resulted in relatively wide adoption of Coinbase, making it the preferred crypto wallet for non-technical users. As the market leader in the United States, Coinbase has also earned the subjective value that comes with institutional trust. While institutional trust may not add security, it does make some people feel better when adopting new technologies. In fact, the whole banking industry is based on the idea of “Trust as a Service.”

This scheme does carry some significant security holes:

  • Anytime a password can be reset via email, you are substantially expanding your attack surface.
  • Recovery via email ties your identity to your crypto assets, making the probability & ultimate success of social engineering attacks far more likely.
  • 2-step verification via text is proven to be an unreliable security scheme and should be avoided entirely. Instead, consider 2-step verification via some authenticator app.
  • With hosted wallets like Coinbase, your private keys are secured by a third-party who may be unregulated.
  • You may not have access to your private keys at all. (From the Coinbase website: “As Coinbase is a hosted wallet, it’s not feasible to provide the private keys to individual wallet addresses.”)

In short, you are not in total control. For some people, this is an acceptable security tradeoff for the benefit of usability. However, if you are reading this article, then you probably don’t fall into that category.

Account Set-up: Coinbase, web wallet, 5 screens

From the coinbase.com homepage select “Get Started,” fill in the required fields, accept the User Agreement, select “Create account”
Verify your email address
Set up two-step verification
Enter authentication code
Verify your identity (depending on state of residence)

Account Set-up: Portis, web wallet, 1 screen

From the portis.io homepage, select “Get Started.” Fill in email and password to Register your account

Scheme 2: Password + recovery phrase

This scheme is the most prevalent across the leading crypto native wallet providers. It uses cryptography specs BIP32 and BIP39, which are generally regarded as the standard for key pair derivation among the blockchain community.

Recovery here is not associated with your e-mail or identity, but rather a seed phrase. This is a cryptographically assigned sequence of 12 or 24 words (BIP39) that is a more human-friendly version of your master key (BIP32). The output of BIP32 is effectively a randomly generated string of characters and numbers. This master key can be used to quickly create additional key pairs as well as to restore your crypto wallet on a separate device.

The seed phrase is the single point of failure/recovery for your crypto wallet and should only ever be known by you. A best practice is to store this highly confidential seed phrase in a very secure place that only you can access. Recovery at this point is your sole responsibility.

Account Set-up: Trust Wallet, mobile wallet, 5 screens

Download the Trust Wallet app, select “Create a new wallet”
Accept responsibility for securing your recovery phrase
Privately record and secure the 12 recovery words
Verify recovery phrase
Wallet created confirmation screen. Select “Done”

Account Set-up: Coinomi, desktop wallet, 6 screens

Download the desktop app from coinomi.com, select “Create new wallet”
Privately record and secure the 24 recovery words
Verify recovery phrase
Set a password for regular wallet access
Select coins to use with the wallet
Accept terms of service

Account Set-up: MetaMask, web wallet, 8 screens

Download the Chrome extension from metamask.io
Accept the extension permissions
Select “Get Started”
Select “Create a Wallet”
Create a password, accept the Terms of Use
Privately record and secure the 12 recovery words
Verify recovery phrase
Wallet created confirmation screen. Select “All Done”

Scheme 3: Other novel approaches

Social recovery: This is an interesting approach wherein the wallet owner can designate known and trusted individuals in their real-world network to trigger a recovery. This is similar to a multi-signature contract flow in which some designated number of parties (eg. 2 out of 3, or all) must each perform an operation (ie. authorize recovery) in order to activate the terms of the contract (ie. trigger wallet recovery).

Account Set-up: Argent, mobile wallet, 18 screens

Download the Argent app, scroll through the marketing screens
Select “Create new wallet”
Create a unique Ethereum name
Submit phone number
Enter authentication code
Submit email address
Verify your email address
Registration completion screen. Select “Open Argent”
Waitlist notification
Notification that your wallet is ready to use
Choose a passcode
Confirm passcode
Decide whether to use face recognition
Enable push notifications
Navigate to the Security tab to add Guardians as recovery method
Scroll through the Guardian informational screens
Select Guardian recovery method (3 options)
If “Friends & family,” then choose your desired Argent member as Guardian

Time-based recovery: In this approach, a wallet owner would be able to specify that if no transactions are made for a period of time (e.g. one year), then another designated account can trigger a command and recover the wallet.

USER JOURNEY 2: HOME SCREEN FAMILIARITY

After completing the one-time process of Account setup, users will land on some home screen interface. This home screen will be the main reference point in your crypto wallet life. All other user journeys will originate from this screen. Effective home screens feel like an anchor point from which the user can intuitively navigate to anywhere within their wallet. The home screen view is also the easiest way to compare the visual identity systems of all crypto wallets. Let’s glance through the home screens for all 18 crypto wallets covered in this guide. Pay attention to what kinds of information frequently appear as well as the design styles that feel most comfortable to you.

Web Wallets

Home Screen: Coinbase, multi-currency
Home Screen: Portis, multi-currency
Home Screen: BitGo, multi-currency
Home Screen: MetaMask, Ethereum only
Home Screen: MyEtherWallet, Ethereum only
Home Screen: Dapper, Ethereum only
Home Screen: Bitski, Ethereum only

Desktop Wallets

Home Screen: Coinomi, multi-currency
Home Screen: Exodus, multi-currency
Home Screen: Jaxx, multi-currency
Home Screen: Electrum, Bitcoin only

Mobile Wallets

Home Screen: Trust Wallet, multi-currency
Home Screen: Coinbase Wallet, multi-currency
Home Screen: Enjin, multi-currency
Home Screen: Argent, Ethereum only
Home Screen: Mycelium, Bitcoin only
Home Screen: Spot, Bitcoin only

Hardware Wallet

Home Screen: Ledger Live with Nano S, multi-currency

USER JOURNEY 3: RECEIVE FUNDS

In order to receive cryptocurrency, all you need to know is the public key of the receiving wallet. Once this key is known, it must be shared with the sender, and that person will complete the process of sending funds (see User Journey 4). The receiver does not need to do anything else. As long as the sender properly sends funds, the receiving account will automatically accept the transfer. As a result of these limited requirements, the user interface (UI) for receiving crypto is pretty uniform.

The most minimal approach is to display just the public key in text form so that it can be copied and shared.

Receive Funds: MyEtherWallet, web wallet, 1 screen

From the main “My Wallets” tab select the “Copy it” button

The large majority of crypto wallets go a little bit further to also provide a QR code.

Receive Funds: Bitski, web wallet, 2 screens

From the main screen select the “Receive” button
Select “Copy Address” or use QR code

Receive Funds: Jaxx, desktop wallet, 3 screens

From the main screen select the desired cryptocurrency
Select “Receive” button
Select “Copy Address” or use the QR code

Receive Funds: Spot, mobile wallet, 2 screens

From the main screen select the down-arrow button near the upper-right corner
Select “Copy my address,” “Share my address,” or use the QR code

Other crypto wallets go even further and provide an alternate option to buy crypto with your credit card via some exchange.

Receive Funds: MetaMask, web wallet, 2 screens

From the main screen select the “Deposit” button
Select a 3rd party site to buy crypto

Receive Funds: Dapper, web wallet, 2 screens

From the main screen select the “Get ETH!” button
Select a 3rd party site to buy crypto

Finally, for those with heightened security preferences, the Ledger Live desktop app paired with the Ledger Nano hardware wallet can provide greater peace of mind.

Receive Funds: Ledger Live with Nano S, 6 screens

From the main screen select the “Receive” button
Select an available cryptocurrency account
Connect and unlock your Ledger Nano hardware wallet, navigate to the designated app
Acknowledge verification procedure
Verify that the public key displayed on the desktop wallet matches the public key displayed on the hardware wallet
If the hardware wallet is disconnected at any point, the process must be restarted

This added step of verifying synchronicity between displayed addresses is a countermeasure against attack vectors such as a “man-in-the-middle” attack. This occurs when an attacker secretly relays and possibly alters the communications between two parties. This means that the displayed addresses on your computer screen could be manipulated without your knowledge. Given the current state of computer security, it is difficult to be certain that your computer is not compromised. A best practice for verifying that a transaction is properly received by the intended recipient is to always send a small “test” amount first.

USER JOURNEY 4: SEND FUNDS (SIGN A TRANSACTION)

While it is relatively easy to receive funds into a crypto wallet, sending funds introduces many more possible variables for control. And this is a good thing. When it comes to accessing and moving your valuable assets, you want to feel secure and in control. Similar to the security schemes discussed in the Account Set-up user journey, we now need to consider the tradeoffs between the opposing forces of usability and control. Let’s look at a variety of methods for sending funds, organized from beginner to advanced.

The simplest interface requires just two inputs: the recipient’s address and the amount to send. This is a similar approach to most other non-crypto peer-to-peer wallets such as Venmo.

Send Funds: Exodus, desktop wallet, 4 screens

From the “Wallet” tab, select the desired cryptocurrency, select “Send”
Enter the recipient’s address, the amount to send and an optional message. Select “Send”
Confirm transaction details, select “Send”
Success screen. Select “OK”

Send Funds: Coinbase Wallet, mobile wallet, 5 screens

From the main screen, select the desired cryptocurrency and select “Send”
Enter the amount to send and select “Next”
Enter the recipient’s address, confirm the transaction details and select “Send”
Authorize the transaction with a passcode or Face ID
View the transaction result and status

Introducing a little more control, we now have a few configurable settings such as gas fee or transaction priority.

Send Funds: MetaMask, web wallet, 4 screens

From the main screen select “Send”
Enter the recipient’s address, the amount to send and choose transaction fee preference. Select “Next”
Confirm transaction details, select “Confirm”
Return to the main screen and view recent transaction status

Send Funds: BitGo, web wallet, 6 screens

Select the desired cryptocurrency wallet
Select “Send”
Enter the recipient’s address, the amount to send and choose transaction priority. Select “Send”
Confirm transaction details. Select “Send Funds”
Authenticate the transaction with your wallet password and two-step verification code. Select “Authenticate”
Return to the wallet screen and view transaction history

For those seeking total control when signing transactions, there are a few open source crypto wallets that are built by developers for developers. With these wallets, you can preview and configure just about anything such as data inputs/outputs, transaction ID, size, time to life and more.

Send Funds: MyEtherWallet, web wallet, 5 screens

From the main screen, toggle to the “Send Ether & Tokens” tab
Enter the recipient’s address, the amount to send and the gas limit. Select “Generate Transaction”
View Raw and Signed Transaction fields. Select “Send Transaction”
Confirm transaction details. Select “Yes, I am sure! Make transaction.”
View transaction status banner in footer

Send Funds: Electrum, desktop wallet, 5 screens

From the main screen, toggle to the “Send” tab
Enter the recipient’s address, the amount to send and choose transaction fee preferences
Select “Preview” to display transaction details before signing
Select “Send,” enter password, select “OK”
Success screen

Remember, with more control comes more responsibility. Be mindful of your own experience level and needs when deciding which crypto wallet to use for sending funds.

USER JOURNEY 5: VIEW WALLET ACTIVITY

Upon sending funds, people want to track the status of their transaction as well as view relevant details related to it. Since the blockchain is an open and decentralized ledger, you might see a few different types of information than you would see in a typical bank statement. In addition to basic details such as date, recipient, and value of the transaction, we may also see gas fee or confirmation depth. Of course, some details are more useful than others, and most crypto wallet providers have organized these details into a hierarchy.

Most crypto wallets show account history with three levels of detail:

  1. The first level shows account history in a table view with basic transaction details.
  2. The second level expands upon a selected transaction to show greater detail.
  3. The third level often links the user to a block explorer tool.

As the name implies, block explorers allow anyone to explore or audit all the public data recorded in every block of the entire blockchain. You can see the transaction details or the balance of any account, so long as you know the transaction ID or the account’s public key. For example, here is the first bitcoin transaction and here is the public key for Vitalik Buterin’s Ethereum account.

Here are a few different ways in which some crypto wallets have designed the user experience for viewing wallet activity.

View Activity: MetaMask, web wallet, 3 screens

Account history shown in table view with basic transaction details
Expand a transaction to view greater detail; see gas used and participant addresses
Link to block explorer Etherscan for complete detail view

View Activity: BitGo, web wallet, 3 screens

Wallet history shown in table view with basic transaction details
Expand a transaction to view greater detail; see transaction ID & progress states
Link to block explorer SmartBit for complete detail view

View Activity: Coinomi, mobile wallet, 3 screens

Account history shown in table view with basic transaction details
Expand a transaction to view greater detail; see number of confirmations & transaction ID
Link to block explorer Etherscan for complete detail view

View Activity: Jaxx, desktop wallet, 4 screens

Account history shown in table view with basic transaction details
Expand a transaction to view greater detail; see value now & transaction status
Select “View transaction details” to view greater detail
Select the block number to view all other transactions included in the same block

View Activity: Electrum, desktop wallet, 2 screens

Wallet history shown in table view with basic transaction details
Double-click a transaction to view greater detail; see inputs, outputs, size & lock time

USER JOURNEY 6: CONFIGURE SETTINGS

The experience of transacting on the blockchain may feel complicated and unfamiliar. Many crypto wallet providers have taken extra steps to offer settings that can be configured to accommodate the varied preferences of their diverse user base. Here are a few of the interesting settings that you might want to configure in your crypto wallet.

Settings: Enjin, mobile wallet

Many wallets enable localization with currency & language selection, as well as the ability to change passwords and view your recovery phrase

Settings: Exodus, desktop wallet

Change the interface display theme with color options
Connect your software wallet to a hardware wallet

Settings: Ledger, hardware wallet

Select a preferred rate provider and designate wallet auto-lock options

Settings: Coinbase, web wallet

Most crypto wallets that require email addresses also support 2-step verification

Settings: BitGo, web wallet

Specify time-boxed spending limits and manage a list of approved recipients with a whitelist of addresses

Settings: Electrum, desktop wallet

Generate a new public key address for every transaction
Specify a server from which to pull data such as transaction history

Settings: MetaMask, web wallet

Connect to your own custom network

THE CRYPTO WALLET FEATURE MATRIX

Bringing it all together, we have a comprehensive feature matrix to easily compare all 18 crypto wallets.

* Note: Some features may be listed as unavailable if they are hard to find or access.

View a high-resolution version of the complete feature matrix comparing all crypto wallets here.

CONCLUSION

How people custody their assets in the future will continue to evolve. The creativity in thinking, style, and functionality of these crypto wallets demonstrate how established conventions can be challenged. When it comes to your own assets, do you want more or less control? More or less security? More or less convenience? In this world of choices and tradeoffs, no one will know which solution matches your preferences better than you. Good luck, and may this guide be your compass in navigating the crypto wallet landscape.

We’re also on: Twitter | Linkedin | Github| Reddit| Discord

--

--