Skip to main content

Fix DNS import errors

Match your DNS-import symptom in the table, then run the fix: propagation, DNSSEC, offchain vs onchain records, custom TLD.

Your domain did not import, or the ENS App is showing something you did not expect. Match what the app says in the table, then run the fix.

Three words this article uses

  • DNSSEC: a setting at your domain provider that signs your DNS records, so ENS can trust them.

  • TXT record: a line of text you add in your domain's DNS settings. ENS reads it to find your wallet address.

  • Offchain and onchain: offchain import means ENS reads your domain straight from DNS, with nothing to manage in the ENS App. Onchain import creates a twin name on Ethereum Mainnet, which you manage in the App like a .eth name.


Find your symptom

Match what the app says in the first column.

What the app says

What it means

Go to

The app can't find your TXT record, but it looks right at your DNS host

DNS changes still spreading — or a typo in the record

Records not picked up

"DNSSEC is not enabled"

DNSSEC isn't on, or the chain is broken somewhere — the Analyzer tells you which

DNSSEC not detected

The app shows your offchain setup when you expected the onchain one

The offchain record is resolving, which keeps the claim window shut

Both TXT records set

"The team behind [].tld have customised their ENS experience"

TLD operator runs its own ENS integration

Custom TLD

You changed the TXT record and ENS still shows the old address

The change has not been picked up yet

Records not picked up

Good to know

  • DNS import needs a real DNS domain, one whose ending comes from the ICANN root, such as .com, .org, .xyz or a country code like .uk.

  • DNS changes can take 10–30 minutes to spread. If your records are correct, wait, then refresh.

  • WordPress.com does not support DNSSEC at all; move your DNS to another provider and keep WordPress for the site.

  • Not sure which route you took? Paste your domain into ens-resolution.vercel.app: what it shows points you to a section. See Can I use my DNS domain as an ENS name?

Important: DNS controls ENS. Whoever owns the DNS domain can reclaim the ENS name at any time by changing the TXT record. If your domain expires or you transfer it, the new owner can take the ENS name. Keep your DNS domain active to keep control.


Records not picked up

DNS changes do not reach every DNS server at once, so the ENS App may still be reading an older view. Wait 10–30 minutes and refresh the page. If you have waited longer, check the record at your DNS host against the table in Both TXT records set: Type, Name and Value all have to be exact. For offchain, confirm the lookup at ens-resolution.vercel.app. If the record is correct and 30 minutes have passed, the problem is probably DNSSEC. If the name is already imported onchain, ENS picks up a change to the _ens record on its own. If it has not after 30 minutes, open the name in the ENS App, go to the Ownership tab and select Refresh DNS.

DNSSEC not detected

On the Enable DNSSEC step the app shows "DNSSEC is not enabled", on both routes, without saying why. Run a DNSSEC analyser against your domain, such as dnssec-debugger.verisignlabs.com: it walks the chain of keys and signatures and names the break. Common causes:

  • A missing DS record at the parent zone. Your registrar usually sets this, but not always automatically.

  • The wrong key algorithm. Only RSA/SHA-256 and ECDSA work with ENS.

  • A host that charges extra for DNSSEC, so it is not actually on.

Fix what the analyser flags, wait 10–30 minutes, then select the refresh button beside the message in the app. It shows when it last checked.

Both TXT records set

Having both records set is not an error. They belong to two different routes, and the offchain one takes over until you remove it.

Route

The record

What happens

Offchain

Name: @ · Value: ENS1 dnsname.ens.eth 0xYourWalletAddress

Resolves in the app on its own. No import, no transaction.

Onchain

Name: _ens · Value: a=0xYourWalletAddress

Needs the import step first. It resolves once the import is done.

While the offchain record exists the app simply resolves the name, so the onchain claim window never opens. To move to onchain:

  1. At your DNS host, delete the offchain ENS1 … record at Name @.

  2. Add the onchain record if it is not there: Type TXT · Name _ens · Value a=0xYourWalletAddress.

  3. Wait 10–30 minutes for the change to spread.

  4. Open the name in the ENS App again. The claim window appears and asks how you want to import. Choose Onchain, then follow Onchain DNS import.

You can move from offchain to onchain, but not back. Once a name is imported onchain, it cannot revert to offchain.

Custom TLD

The app says "The team behind [].tld have customised their ENS experience", with your own domain ending in place of [].tld. Some endings, .box being the most common, run their own ENS integration outside the standard import flow. You cannot import the name through the ENS App, and ENS support cannot help with the specifics. Contact the team behind your domain ending; they run the integration and its support.

Did this answer your question?