Go to primary.ens.domains, pick the chain (Base, Arbitrum, OP Mainnet, Linea, or Scroll), and select Set. You approve once on the L2 to set the primary name. Then, if the chain's address doesn't already point at that wallet, you approve again on Ethereum Mainnet to set it. Once it syncs, yourname.eth shows on that chain instead of your 0x address.
Good to know
You need a little ETH on the L2 to set the primary name, and ETH on Ethereum Mainnet for the address record — records live on Ethereum Mainnet whichever chain the name is for, and a Default primary name is set there too. If the address already points at that wallet, the second step doesn't come up. Gas only, no other cost.
It only works once both pieces are set — the primary name on the chain, and that chain's address on Ethereum Mainnet.
.ethnames and their onchain subnames only. Project names likeyourname.base.ethcan't be set at primary.ens.domains.
Should you set a Default or a Network primary name?
You can set one name that covers all EVM chains, or a different name per chain. Pick one before you start:
Type | What it does | Pick this when |
Default primary name | Set once on Ethereum Mainnet. Works on any EVM chain where you use the same wallet. | You want the same |
Network primary name | Set per chain. | You want a different name on Base, Arbitrum, or another L2, or your contract lives at a different 0x address per chain. |
If you're a regular wallet, set a Default first, then add a Network primary name only where you want something different. If you're a contract, see Set a primary name for your smart contract.
What is a primary name?
A primary name tells apps to show yourname.eth instead of 0x123...abcd. For the basic case on Ethereum Mainnet, see Set your primary name.
How to set the Default primary name
Note: onchain changes cost gas — the network fee Ethereum charges to process a transaction. It is paid in ETH from your connected wallet and goes to the network, not to ENS. Your wallet shows the exact fee before you approve.
You need a bit of ETH on Ethereum Mainnet for gas; there's no other cost. The Manager is the wallet that controls a name's records; it can change the ETH Address, set text records, and so on. If you're not on the Manager wallet, the app prompts you to switch when it's time to update the Default address.
Go to primary.ens.domains and connect your wallet.
Search your ENS name.
In the Default section, select Set (or Update if one's already there).
Pick the wallet you want as your Default primary name.
Pick the chains you want this name to cover. Greyed-out chains already point at this wallet; selected chains will get the new Default address.
Approve the primary name transaction in your wallet.
If the Default address doesn't already point at the wallet you picked, approve that transaction too. If you're not the Manager, the app prompts you to switch wallets here.
Most confirm in 1–2 blocks; busy networks can take longer. Once both land, your Default primary name is active.
How to set a Network (L2) primary name
You need a bit of ETH on the L2 (Base ETH on Base, and so on) for the primary name transaction, and ETH on Ethereum Mainnet for the chain's address record if it doesn't already point at that wallet. The L2 flow runs on those chains, not Ethereum Mainnet. Address records always live on Ethereum Mainnet.
Go to primary.ens.domains and connect your wallet.
Search your
.ethname.Find the chain: Base, Arbitrum, OP Mainnet, Linea, or Scroll.
Select Set (or Update) and pick the wallet you want for that chain.
Select Switch connection to move to the L2. If the primary name uses a different wallet from the one you're on, the app also asks you to switch wallets — connect the one you want this primary name to belong to.
Approve the primary name transaction on the L2.
If the chain's address doesn't already point at that wallet, switch back to Ethereum Mainnet to set it. Select Switch connection, connect the Manager wallet (only the Manager can change records), and approve.
Wait for syncing. Sync times vary by chain — see L2 sync times. The name won't show until syncing finishes and the chain's address is set on Ethereum Mainnet.
L2 sync times
After the primary name transaction on the L2 confirms, syncing starts on its own. These times apply to Network primary names:
Chain | Sync time |
Ethereum Mainnet | ~1 block |
Base | ~6 hours |
Arbitrum | ~6 hours |
OP Mainnet | ~6 hours |
Linea | 8–24 hours |
Scroll | ~1 hour |
Status indicators
Status | What it means | What to do |
Incomplete | The Default primary name is set, but the matching Default address isn't on the name yet. | Set the Default address on the name; you need to be the name's Manager to do that. Waiting won't clear this. If you just want your wallet to stop showing the name, clear the primary name instead. See How to clear a Network primary name. |
Resolved from Default | No Network primary name is set on this chain, so apps fall back to your Default. | Nothing, unless you want a different name on this chain. |
Syncing | A Network primary name was just set or changed. The change is spreading across the L2. | Wait. See the sync times above. |
Active | The primary name is live on that chain. | Nothing. |
How to clear a Network primary name
Go to primary.ens.domains and connect your wallet.
Search your
.ethname.Find the chain.
Select the bin icon.
Approve the transaction.
If you have a Default primary name, that one takes over as the fallback. Clearing a primary name doesn't touch the name's address records — to change or remove those, use app.ens.domains. See Edit your ENS profile.
Clearing when the name has moved to another wallet. Your primary name belongs to your wallet, so you can clear it whether or not you manage the name; you only need to be the Manager to change the name's address records.
You can also clear it at tools.ens.xyz/setprimary rather than primary.ens.domains: connect the wallet, tick Clear primary name, enter the wallet address, and approve. See Clear your primary name for both methods.
Viewing primary names in the ENS App
Go to app.ens.domains.
Search for an ENS name (or a 0x address).
Open the More tab.
The primary name section shows the active Default and Network primary names with the wallet each one points at.
You can also search a 0x address to see if a primary name is set.
Common questions
How do I check the primary name of an address or ENS name?
Open app.ens.domains, search the ENS name or the 0x address, and open the More tab. For a deeper view, go to primary.ens.domains.
Does setting a primary name on an L2 cost anything?
Gas only; there's no other fee. You need a bit of ETH on the L2 for the primary name transaction (Base ETH on Base, and so on) and ETH on Ethereum Mainnet for the chain's address record.
I use the Coinbase or Base app and only have ETH on Base — can I set a primary name?
Yes. If the address already points at your wallet, Base ETH is enough. If it doesn't, you need a little ETH on Ethereum Mainnet as well — address records live there, and so does a Default primary name. Bridge a little across and try again. It covers gas, not a fee.
How many transactions are needed to set a primary name?
One on the L2 to set the primary name, and one on Ethereum Mainnet to set that chain's address — the second only if the address isn't already pointing at your wallet. A Default primary name runs entirely on Ethereum Mainnet: set the name, then the Default address if it isn't set.
Why doesn't my primary name show on Etherscan or other sites?
Check the status at primary.ens.domains and wait for syncing to finish if it's still going. Make sure both the primary name and the matching address record are set. Etherscan doesn't read Network primary names yet, so an L2-only setup won't show there. Each site picks up changes on its own schedule — wallets and dApps that read ENS records in real time see them right away; cached sites can sometimes take a day or two. For developers, see docs.ens.domains/web/reverse.
Can I test this on Sepolia?
Yes. Use sepolia.primary.ens.domains with Sepolia test ETH. The steps are the same, but Sepolia syncs more slowly. The ENSv2 apps also run on Sepolia, and L2 primary-name setting will be part of the ENS Explorer app at explorer.ens.dev.



















