This guide will give you step-by-step instructions of how to import a DNS domain name you already own into ENS.
Before you get started
1) Are you wanting to register a .ETH name on ENS?
Then this is not the guide for you! Use this guide instead.
2) You must already own on DNS the name you wish to import into ENS
E.g. if you want to import example.com to ENS, you must first own example.com on DNS. You cannot claim a DNS name on ENS that you don’t currently own on DNS.
While you can use any DNS registrar that supports DNSSEC, this guide will demonstrate with Google Domains.
3) You’ll need an Ethereum account
ENS names, including DNS names imported to ENS, are owned and controlled by Ethereum accounts. To create and manage an Ethereum account, there are many Ethereum wallet providers to choose from.
This guide will demonstrate with the Ethereum browser extension MetaMask, though you’ll likely be able to follow along if you’re using a different wallet.
4) You’ll need some ETH
Although there is no ENS protocol fee for DNS names imported into ENS, the importing process requires paying an Ethereum network gas fee in ETH.
Given that the importing process uses a lot of gas, combined with high gas prices lately, it means that it can be kind of pricey right now. You may want at least a few hundred dollars worth of ETH in your wallet. We are actively working on vastly lowering this cost.
Ok, let’s get started!
Step 1: Connect your wallet to the ENS Manager App
In your web browser, navigate to the ENS Manager App, app.ens.domains.
Click “Connect” on the upper-left part of the page, select the wallet or wallet connect method you are using, and then follow the prompts in your wallet to approve connecting to the ENS Manager App.
Step 2: Find the name
Search for the DNS domain name you’d like to import into ENS and click it in the search results.
You should find a page that looks like the screenshot below. It show the steps of the importing process. Keep this tab open, as you will be coming back to it later in the process.
Step 3: Enable DNSSEC
Go to your DNS Registrar, navigate to the options for your domain name, and enable DNSSEC (if it’s not already enabled).
You can find this in Google Domains by clicking “DNS” in the menu on the left-hand side of the page. Google Domains usually will have DNSSEC enabled by default. If it is not already enabled, though, enable it.
Step 4: Set TXT record
In the “Custom Records” section, set a new record that has “_ens” as the host name, “TXT” as the type, and the data as “a=[your Ethereum address]”.
The Ethereum address you put in the data section in the format above will be the Ethereum address that controls your DNS name.
If, in the future, you want to change which Ethereum account owns your DNS name on ENS, you will need to come back here and change the address in the data field.
Note: Do not copy the Ethereum address in the data section in the screenshots below; it’s just an example. Use your own Ethereum address.
Step 5: Check back in the ENS Manager App
Go back to your name’s page in the ENS Manager App. (If you closed your tab from earlier, go to app.ens.domains and search for your name.)
Refresh the page to check to see if it can find that your name has DNSSEC enabled and that your TXT record exists.
Even if you have everything set up correctly on the DNS side, it may take some time — anywhere from a few minutes to several hours — for your DNS records to propagate and show up (this is just how DNS works).
Feel free to either leave the tab open or close it in the meantime, as you can always go back to app.ens.domains and search for your name to get back to the same page and check the status.
When your records do finally propagate and you refresh the page, this is what the page will look like:
Step 6: Register the name on ENS
Once the steps “Enable DNSSEC” and “Add Text” have turned green, click the blue “Register” button.
(If the “Register” button is still greyed out even though the first two steps are green, it’s likely because you need to connect your wallet. To do that, click “Connect” on the left-hand side of the page and follow the prompts to connect your Ethereum wallet.)
After you click “Register”, your wallet will ask you to confirm a transaction to import the DNS name into ENS. This is where things can get pricey.
Note that there is no ENS protocol fee for using a DNS name on ENS. The cost for importing is entirely the Ethereum network gas fee, *which can be very high right now* (we are actively working to greatly decrease it). Once you have imported the name, there is no ongoing ENS fee.
If the estimated gas price that your wallet shows you is acceptable to you and you have enough ETH in your wallet to cover the cost, click “Confirm” to submit the transaction.
Once the transaction confirms on the Ethereum network, the importing process is complete and you now have your DNS name on ENS!
Step 7: Manage the Name
Clicking “View in Manager” on the bottom right will show you the ENS records for your name. It should look like this:
You can see that your ETH Address record is already set up automatically. This means that right away you can start using your name to receive ETH or any Ethereum-based token or NFT in supported wallets.
If you’d like to set other records, such as a BTC address or an avatar text record, click “Add/Edit Record”.
Then fill in any records that you’d like.
If you’d like to make a record for something that doesn’t already have a field displayed by default, e.g. a cryptocurrency like ETC, then click the drop down button “add record” and then next to it select the kind of record you’d like to create, then finally enter the data for the record and click “Save”.
Once you’ve filled out all the records you’d like, scroll to the bottom of the page and click “Confirm”. The ENS Manager App will show you the records you are setting and ask you to confirm again. Then your wallet will ask you to confirm to submit the transaction to set the records.
Once the transaction is confirmed on the Ethereum network, your records are set.
Step 8: Set your reverse record
Last step! Click “My Account” on the left-hand side of the page.
If you don’t already have a reverse record set, and/or if you’d like to set it to the name you just registered, select your name from the drop down in the middle of the page, then click Save. You will then be prompted by your wallet to confirm to submit the transaction.
Your reverse record designates one of your ENS names as your Ethereum account’s cross-platform web3 username. Once it is set, you will start to see it show up in dapps.
For example, once your reverse record is set and confirmed on the Ethereum network, visit app.uniswap.org and connect your wallet. You’ll see your name where the connect button was!
…and you’re done! Congrats on having successfully imported and set up a DNS name to ENS.