Wallet-less onboarding (Experimental concept)

One of the main findings of the UX research my colleague Travis has conducted over the last couple of months, was that the most common blocker of user adoption is Polkadot’s poor onboarding. The majority of parachain teams see the onboarding experience as too complex and worse than that of other ecosystems. A usual onboarding flow would involve the user signing-up to an exchange first, possibly going through some kind of KYC process, and adding payment methods in order to then purchase DOT or a parachain token. To interact with the network in a decentralized manner, it would furthermore involve installing a browser wallet and transferring the funds to a newly created address. Only then are they able to connect to dapps and interact with them. This is a long and cumbersome process for any average Web2 user. If we want to improve Polkadot’s onboarding experience, we need to ask: how can we get users to action quicker?

Leveraging Gifts

We already introduced a crypto-native way of onboarding new users in the form of Gifts. Polkadot Gifts allows current users of the ecosystem to send DOT or KSM to family and friends in the form of 16-digit vouchers. The recipients can then go ahead, create an address in the app and redeem their voucher to fund their new address – all this is completely stateless and does not require them to sign up anywhere. Here is a video of how Gifts currently works:

This is quite a powerful concept, but I feel that we are not leveraging this alternative on-ramp enough. Both, users and builders, are maybe not aware of the possibility, and we are relying on the generosity of the community, too. Additionally we have four different deployments, depending on the relay chain and type of gift. Furthermore, it is conceivable that we offer not only gifts in the form of native tokens or NFTs, but also for things like eg. membership to a society or keys to an event etc. There are many unexplored ideas here Parachains could leverage on to attract a new group of users. It would be also thinkable to sponsor those gifts as onboarding campaigns through the respective treasuries. Or reward the most generous community members with status badges.

Wallet-less onboarding

However, what seems straightforward to us, still might feel a bit overwhelming for new users. We introduce new concepts like a seed phrase, an on-chain voucher and a browser extension as a wallet with its own onboarding flow to them. One radical idea that has been emerging during the UX research process is the concept of a wallet-less onboarding. The idea being, that we create a temporary address under the hood, and let the user focus purely on the action (eg. claiming some NFTs or become members of a society or any other type of interaction). We are fully aware that this is horrible from a security point of view, but are willing to do that tradeoff as we talk about low-value assets or interactions explicitly here; this in-browser address is meant to be temporary and should not be used to hold vast amounts of assets. In a way, it is an in-browser burner wallet. Eventually, the user will be asked to export their address (or rather create a new one) and install an extension to import it into. We could write a timer after which the temporary wallet is deleted from the browser.

Here is a little prototype of how a wallet-less onboarding flow might look like in the Gifts app:

And here is a potential flow for a fictional NFT game:

Again, we are aware that this is contrary to security best practices, but considering we are talking of a different audience, it might actually be the right approach for them. We wanted to share this concept to provoke some discussion, also on how feasible this is from a technical point of view, too. Excited to hear what you think!

14 Likes

I have a lot of ideas from this thread, so thanks for posting it :slight_smile:

First, Tips from the treasury has been a pretty successful way to onboard users without having to go through an exchange. We should perhaps look to create more ways for users to earn their “first DOT” in ways that don’t involve purchasing from the exchange, but through community interaction. We already have the tip bot which is automatically opening tips for users who open PRs to Github, but there is probably many more ways we can enable this:

  • Give monthly rewards to users who have the highest quality posts on StackExchange and this Polkadot Forum.
  • More “learn to earn” systems like Coinbase, but funded by the treasury, and backed by simple de-sybil systems like phone or email.
  • Treasury proposals which places larger amounts of funds in the control of trusted entities, who then can distribute to their communities, perhaps using the Gifts system.

Regarding wallet-less onboarding, it is interesting to me, but feels like there are only a hand full of specific use cases where I would encourage this flow first.

For example, wallet-less onboarding makes a lot of sense to me in scenarios where no balances by the end user are involved. This could be for triggering meta-transactions, which is something we hope to bring to Substrate soon, or for interacting with Web 2 services using just a Web 3 key, for example making a post on Polkassembly.

Maybe it would make sense for things like gifts where the gift is under a certain DOT amount, but I would think we would really quickly want to transition away from this once losing that wallet would result in losing some significant amount of value.

9 Likes

I like the idea of earning your first DOT (or other asset), starting with small, easy tasks and potentially working you way up to more meaningful interactions with the network and the community. It probably makes sense to look at these different initiatives and ideas depending on where they are in their engagement with Polkadot.

Completely new users

They are completely new to Polkadot, don’t have a wallet yet and are not familiar with Polkadot’s core concepts. Here, wallet-less onboarding makes sense, potentially paired with low-value / non-transferable NFTs. Also, as you mentioned, Coinbase-Earn-like education campaigns (1-minute videos, multiple choice quizzes, micro rewards). At the end, we want to make sure those users go on and install a proper wallet before they proceed to more meaningful interactions.

I believe Unique Network was also thinking of a similar wallet-less onboarding flow. So it’s also a possibility to enter the journey from the parachain layer.

Becoming an engaged community member

They are already active in the Polkadot ecosystem. They have a wallet and know the core concepts, but maybe they are not aware of Tips yet. How can we make sure they become aware of Tips? How can we make sure they are also aware of Parachains utilising their treasury for Tips?

And what would be a step between those to levels of engagement? Claiming a NFT or finishing a multiple choice quiz is a low-barrier interaction. Receiving a Tip requires much more pro-activeness. I remember earn.com / 21.co before it was acquired by Coinbase and it was centered around paid messages, surveys and user tests. So maybe one good intermediary step between complete newbie and proactive member of the Polkadot community could be receiving tips or gifts by participating in surveys, product demos or sharing post on social media. I will think about this some more and sketch out some designs.

  • Treasury proposals which places larger amounts of funds in the control of trusted entities, who then can distribute to their communities, perhaps using the Gifts system.

Absolutely agree. I can see something like an onboarding fund or something similar.

3 Likes

I think this is a really important discussion for user onboarding, but not only in the currency aspect and in regards to the relays, I believe a massively overlooked aspect of web2 → web3 onboarding is allowing users to seamlessly male use of the parachain utilities.
To give an example, over at InvArch we have been researching possible methods of allowing GitHub users to naturally onboard into GitArch (our decentralized git hosting platform running on Tinkernet) without having to acquire TNKR tokens and having to sign a bunch of transactions. If possible, the ecosystem would greatly benefit from ways of letting users use these complex and incredibly novel applications without going through the burden of even having to understand that they are running on a blockchain.

4 Likes

Hey @michel

Thank you for the long post and prototype. Sounds interesting to me.
Another solution to make it easier to onboard Web2 users to Web3 space is through their social media accounts (emails, Twitter, Facebook, …). An example of this is Web3 Auth (https://web3auth.io/).

What is your take on this?

Verso is a mobile wallet that was originally developped on polygon with this purpose (crypto cashback rewards + no-kyc ramps). Check get-verso.com and let me know if it would make sense to port it to polkadot.

:point_up_2::point_up_2::point_up_2:

I do agree that private key comfort / security is one of the biggest blockers of mainstream Polkadot adoption (and the rest of web3, I would argue). I will never be able to convince my sister, father, aunt, and brother to store any assets of meaningful value* in an account whose keys are written down on a piece of paper.

*But who decides “what” or “how much” is meaningful? If a hacker can gain access to the private keys stored in the browsers of tens of thousands of users, then it becomes a meaningful bounty even with a low threshold for individual users.

1 Like

I see your point; One of the major blockers is the conversion of fiat money through an on-ramp like a centralized exchange.

If the community could incentivize positive commerce/productive behaviour to then get cashback or reward points denominated in tokens, onboarding is done from retroactive airdrop rather than from dealing with a crytocurrency exchange. In the mind of a non-Web3 user, the path is much simpler for being converted into Web3 through claims.

2 Likes

We’re absolutely on the same page. Focus on action rather than acquiring tokens.

That’s why I advocate for not focussing on native tokens. If a hacker gets access to a large amount of eg. society memberships, that society becomes meaningless.

Exactly. In the web2 space it’s also quite a common practise to grow the user base (PayPal initially gave money out to new users to grow, or betting platforms giving out a starting amount to bet etc.).

I remember playing “centsports” where they would give you ten cents to bet on any sporting event and could (in theory) withdraw after you reached $50 (or something like this). You’d get ten cents if you went back to zero and started over again.

I could see a key-less onboarding for something like this - when you reach $50 (or something like this), you are required to self-custody to continue.

:100:

Banks love giving out cash for new checking accounts, credit cards, etc.

1 Like

Interesting post, think it’s a great area to focus on and the problems are clearly there from a security perspective however one way to think about this problem is if you take the problem away - ie entirely remove the assets issue - give them nothing worth stealing…

One example of this in practice is a non-transferable token.

For example with Kabocha, we are building the project around ‘Seeds’ - minting RMRK non-transferable tokens to a users burner makes sense, the only value created is personal value, based on the actions of that address, which plays a little more like a game, since the seed evolves based on emerging on-chain actions / interactions.

I tend to this think this approach of creating an identity first - that emerges based on your actions, is a nice way to ease people in.

2 Likes

Hi, I think this is a great idea. I understand how worrisome it is for security, but we can compromise and “meet users where they are”. In the beginning, the economic value of a new user’s account is low, so the corresponding risk is low AS LONG AS there is a user journey to full self-custody.

We are building Hashed Network (parachain) and it has a funded/budgeted new user faucet that is gated by verification of SMS or a Google account. The basic Google experience saves the Substrate secret within the user’s Google Drive API and then retrieves it when a signature is needed. The faucet is available to approved origins that are trusted to protect against Sybil attacks, such as ours that forces SMS verification and uniqueness, web2 integration APIs, etc.

Each user has their own on-chain account and actions of course, and just needs a path to re-key or transfer assets when they are ready to graduate to self-custody.

You can see a demo of the Sign with Google UX starting about the 7m mark of this video. It would be great to hear any feedback, thanks!
Hashed Network Asset Creation and Login with Google - YouTube.

1 Like

What do you think of the torus solution? It allows you to easily get onboarded with simple social logins. Check out the example they did for Solana: Solana wallet
From the user’s perspective that looks like magic.

1 Like

This is very interesting from a frictionless onboarding perspective. The problem is in terms of centralization access to private keys. I would recommend this as a migration activity, meaning that you use facebook login or google login to generate a set of private keys and then incentivize them to use their private keys as a new way of logins looking-forward.

Using Web2 social logins as a permanent solution may eventually lead to censorship (whether justifiable or not).

1 Like