How to Register a Solana Crypto Domain

In a previous post, I covered how to set up an ENS domain on the Ethereum blockchain. Today, I'm going to discuss a similar outcome, but for Solana - the (self-professed) fastest blockchain in the world. If you need a quick primer on DNS or ENS, check out my previous post. If you want to explore other networks, check out the complete guide to Web3 domain registrations.

What is Solana Name Service?

Bonfida is an ecosystem of products for Solana which includes the Solana Name Service (SNS). Much like ENS for Ethereum or DNS in the Web2 world, SNS is a service that allows mapping of human-readable names (e.g. YourDomain.sol) to a Solana address. The on-chain data can also include text, images, IPFS CID, Arweave address, BTC/ETH public keys and so on.

Solana Name Service

A key difference between Solana and Ethereum is that Solana domains are registered for life, while Ethereum domain registrations must be renewed annually. An obvious downside to this approach is domain squatting. While not really a deterrence, SNS uses a 7-day public auction system (with a 20 USDC minimum bid price) as a safeguard mechanism. It's effectiveness is questionable though - non-early adopters have absolutely no idea of ongoing auctions for domain names that match ones they own in the Web2 world. It is also interesting to note that SNS has chosen USDC for payment instead of its native token (FIDA) or SOL itself. This brings us to the Solana wallet.

Set up Your Solana Wallet

To get started, you'll first need a Solana wallet with some funds to buy and register the domain name. I recommend Phantom wallet for your browser. Once you download it, create a new wallet. Make sure to review and store the secret recovery phrase in a really secure location - this is literally the key to your Solana kingdom. Create a password, accept the terms of service and off you go. Well, almost.

Once your wallet is ready, you'll need to fund it. If you already have USDC in either a self-custodial wallet like Trust or a crypto exchange like FTX, send some to your Solana address. Note that this must be USDC issued on Solana, which is unfortunately not supported by most exchanges yet. If this is not an option, head over to Binance, Gate.io or Coinbase (or a crypto exchange of your choice) and create an account first. Use a credit card or bank/wire transfer to fund your account and buy some SOL. Next, send the SOL to your Solana address and wait for confirmation. Once your Phantom wallet is funded, swap some SOL for USDC. You'll need at least 20.01 USDC, but may need more if your desired domain is already being auctioned.

Register and Configure Solana Domain

Head over to Solana Name Service and search for your desired domain. If the domain is already registered, you'll see information like TLD, parent name, domain name, domain owner and content. If the domain is available but under an auction, you'll see the bid details and have the opportunity to bid yourself.

Solana Name Service domain search

If you're in luck and the domain is available, connect your Phantom wallet.

Select Phantom and click Connect on the Phantom wallet pop-up to approve transaction requests from this site. Next, click Register on the SNS page to start the registration process.

Solana domain registration

Click Next to create an auction for the domain, and click Confirm to proceed.

Solana domain registration auction

You'll now be taken to the domain auction and be able to place a bid by clicking on Bid. Approve the transaction in the Phantom wallet to proceed.

Solana ongoing domain auctions

The auction will last for 7 days - you may want to periodically check if you are being outbid. If there are no other bids, you'll win the auction and have to claim the domain by clicking on Claim.

Finally, you'll have to select the storage size for your Solana account - generally, the lowest option (1kB) should be sufficient for most users. Congratulations, you now own the Solana domain!

SNS Domain Attributes

SNS is compatible with the semantics of DNS - each domain name can hold associated records, which can be used to facilitate reverse lookups. Records are functionally identical to subdomains, and it is possible to transfer ownership of specific records to other users. Let's look at some of the Web3-specific records in the SNS domain:

  • IPFS: Contains an IPFS CID
  • ARWV: Contains an Arweave address
  • SNS: Contains a Solana naming service URL for redirection
  • SOL: A Solana public key
  • ETH: An Ethereum public key
  • BTC: A Bitcoin public key

Well, there you have it. Your Solana domain is now fully configured and ready to be used in wallets, dapps and a plethora of other Web3 resources.

If you found this fun, here are a couple of other things that you can do.