Solana is still one of the hottest blockchains in the space. It is by far one of the most performant ones–with some headaches around the uptime during the largest congestion periods, but it’s still released as a “Mainnet Beta”. That means with each and every new issue, there is clear room for improvement identified. Solana is also considered to be limited by the hardware used by validators which means that as the technology gets better, Solana can get better.
The numbers are still great. Thanks to the Proof of History consensus model, the network processes over 65,000 transactions per second with around 2,8 s transaction time. The theoretical limit is set at 710,000 TPS. After reaching that, Solana might provide all the upside of blockchain’s security, transparency, and the ability to be read/written by any honest participant–while not staying short of centralized systems’ speeds.
The most important statistic is the number of users. There are over 600,000 accounts active. Daily. The total number is likely to have already surpassed 10 million by far.
That is a huge market to serve with still much room for growth. If you consider this as an opportunity, almost any project that you’d like to build using Solana network will require integrating with at least one wallet that supports it.
In that case, which wallet one should you choose?
The research of available wallets should be accompanied by judging them by a set of rather objective criteria.
As users choose one solution over another, they often stay with them. This means that, for example, if you choose only Sollet, your application won’t serve Solflare users and so on. It doesn’t seem like a big issue, but from the UX perspective, requiring users to switch to other wallet than they’d use normally is a barrier that might push them away from the app. Hence, the user base is one of the factors.
One of the key aspects of interacting with Solana programs through wallets is security. Open-source software tends to be better off as the community works actively on spotting vulnerabilities and proposing their fixes. However, a security audit is even more critical. It’s the best way to ensure that the wallet provider does their best for the security of their solution. Still, any later update can create new vulnerabilities, so it’s best if the audits are conducted regularly–that would be an ideal situation that might not be viable for smaller companies as audits are often quite costly.
An additional measure of how seriously the security is taken by the developers is the bug bounty. Storing seed phrases in an insecure way can lead to serious financial damage, as some Slope users have learned. Audits sometimes cannot cover every case which is why an incentive for white hackers to find bugs and get rewards for revealing them for the greater good is a good idea.
However, wallets are much simpler developments than smart contracts, so it’s not a deal breaker.
The type of wallet is also a matter of consideration. The most secure are cold wallets. The most convenient, yet the least secure are extension wallets. There are also mobile wallets and desktop applications. If you’re designing a web application, it’s likely that a mobile wallet will be an additional hurdle. Fortunately, many wallets support multiple options –mobile, extensions, desktop apps, etc.
Some users choose to stay with custodial wallets while others prefer non-custodial ones. The choice is linked to security and ownership but also on the ideological standpoint on “not your keys, not your crypto” problem. The UX of custodial wallets is often great, though.
From the development perspective, a robust documentation is a very important part of the research. It shows the developers how to implement the wallet integration, what are the technical requirements, and answer many questions that could arise.
Although most wallets are free to use, you might wonder how do these companies make money? Crypto community is inclusive enough to allow anyone propose their solution and the open-source collaboration often ends up in free products. But the biggest wallets are businesses that aim for revenues. You could check if their pricing model affects your application–if they offer swaps at certain fees but you only facilitate transactions and they’re free–there’s no side effect on your users.
Which Solana wallet is the best?
Now, let’s jump to exploring the best Solana wallets out there. We want to stay as objective as we can be, therefore we leave the final judgement to you. However, we have gone through the 10 top Solana wallets, looking for information relevant to the mentioned criteria–so you don’t have to.
Phantom is by far the most popular wallet in Solana ecosystem and in fact, the fastest growing wallet in the whole space. Only in 6 months they had scaled to 2 million users. They are well-funded as well, with $9M series A investment and $109M series B from top VCs such as a16z and Jump Capital.
It is the go-to wallet for most users because of its simplicity and user friendliness. Yet, it offers all the necessary features, such as staking, swaps, NFTs, Ledger support, and biometric authentication on smartphones. And since we’re talking about those–Phantom has also put down the work to integrate universal links and deep links which enables a much greater, native user experience for iOS and Android users. An interesting addition is the option to burn spam NFTs that you might receive as airdrops.
Trust Wallet has been acquired by Binance in 2018 and is one of the most popular crypto wallets in the whole ecosystem. The total user count doesn’t refer to Solana only, though, as it supports thousands of different digital assets, on over 40 blockchains.
Trust Wallet offers great UX and while supporting so many cryptos, it’s not a custodial wallet. It doesn’t store keys on any servers, rather than on user devices. It supports staking of multiple tokens, including Solana. It will be a good choice to onboard a general crypto user in your app, although because of Trust Wallet only having mobile apps, it’s less popular choice for web-based dApps. Exchanges, NFT Marketplaces–it might not be it. Mobile apps–great. It can also be linked to a web app through WalletConnect.
Trustee Wallet is an open-source wallet that supports over 1,200 coins and tokens. The whole Android code is available on their GitHub and can be used to build a new wallet, with your own branding.
Surprisingly, we couldn’t find any implementation documentation. For the smoothness of the development process, you might want to use other wallets for your apps. Trustee Wallet might be more oriented on peer-to-peer transactions, rather than Web3 applications.
Solflare is a similar wallet to Phantom, still popular but with much less user base. It is designed for both first-time users and experienced crypto natives. It supports NFTs, SOL and SPL token swaps. It works with Ledger, allowing users to store larger sums securely in a hardware wallet.
Solflare swaps are a direct fork of Solarbeam which had been audited by Halborn and Certik, but the implementation of Solflare hasn’t been audited yet. The implementation is quite straightforward and similar to Phantom.
Sollet is a more feature-rich Solana wallet that is designed for more advanced users. It is open-source, however its UX is visibly worse than from all the other options. You might want to use it for your own project, such as decentralized trading bot as it’s the standard for interacting with smart contracts, but it may not be the best for general users.
Slope offers nice design and UX and supports SOL, SPL, and NFTs. It’s a mobile-first wallet that allows users to send, receive, and swap crypto seamlessly and can be implemented just as Phantom or Solflare which makes it easy for the developers.
However, the August 2022 draining of over 8,000 Solana wallets might be linked to misconfiguration of Slope’s extension wallet and as auditors from Zellic and OtterSec suggest the seed phrases could have been stored in plain text for over a week. It’s not been identified as the only reason for that exploit, but an extra care is advised for its users. On the other hand – Slope offered a 10% bounty for the hackers to return stolen funds to their owners.
Solareum is another wallet that is dedicated to using SOL and SPL tokens on mobile phones. It stands out with Lightning Rewards feature that allows users to post links to accept crypto. It seems like a good option for community-funded smaller projects.
PocketPay is a slightly different kind of non-custodial wallet that enables users to pay with SolanaPay. It has an interface for merchant accounts and has a built-in swap features, making it an interesting option for Web3 marketplaces and ecommerce. It also supports storing NFTs and works with dApps.
Glow is a new wallet but one that is beautifully designed and boasting great UX. It has a built-in NFT explorer, zero-fee token swaps, a nicely organized transaction history, biometric and much more. It even works as a Safari mobile extension, making it easy to use on iPad and iPhone.
It’s not yet well organized from the documentation standpoint, but you can find tutorials guiding you through integrations on GitHub and it is supported by Wallet Adapter.
How to Integrate Solana Wallet?
Most wallets can be integrated with dApps through either Wallet Adapter or Wallet Connect. How do they differ and what do you need to implement them?
Solana Wallet Adapter is a library that solves most problems with integrating wallets into Solana dapps. It can be implemented using React, Anchor framework which is most frequently used, and can be used with Next.JS, Material UI, Ant Design, Vue, Angular/RxJS, and Webpack/Gatsby.
Wallet Adapter has a built-in UI for showing the “Connect Wallet” button, although you can always style it differently. It covers all the cases your application needs–wallet connection, disconnection, and autoconnection.
To make it work, developers need to define mainly two things: the network that shall be used (mainnet, testnet, or devnet) and wallets to be supported by your own implementation. You can pick from a robust list of almost 40 different Solana wallets (which we might add to this article later).
Although Wallet Connect can be found on the list of adapters and its implementation can be similar as to any other supported wallet – through adding the required adapter – it offers slightly different functionality for users.
Wallet Connect works as a gateway that links mobile wallets and web applications. If present on a web app, it allows for connecting wallets and signing transactions through a QR code or deep linking. It supports multiple wallets–not only on Solana–and solves the problems of using mobile wallets on desktop apps. However, it doesn’t work with any wallet, so it’s reasonable to verify if the one that users might want to use is supported.
Should you include only a limited number of wallets or maybe add all available, to capture the largest possible share of users?
The solution is always somewhere in the middle. We’re for the user-centric approach and taking whatever steps lead to a better user experience of your application. Wallet integration is quite straightforward. This means that integrating with more wallet options doesn’t heavily influence your development and resources. This, again, leads us to the decision being made based on the UX mostly.
You’d serve most of the users with Phantom and WalletConnect to enable some mobile wallets such as TrustWallet. You could use more wallets to allow their users connect seamlessly with your solution but making the list too long will force users to search for their wallet of choice for longer. Of course, you can still organize the wallets in a way that supports both the most popular ones as well as provides a wide choice, but that’s a story for another post.
Want to build a Solana project with any of the wallets? Or maybe create a new one? Let's talk!