Step-by-step guide to moving your domain from any registrar to any other — including GoDaddy, Namecheap, Cloudflare, and Porkbun.
A domain transfer typically takes 5-7 days and is straightforward if you follow these steps in order.
Time required: About 5-7 business days total. Most of the time is waiting for ICANN's 5-day transfer window.
ICANN rules prevent domains from being transferred within 60 days of initial registration or a recent transfer. If your domain is newer than 60 days, you must wait. Check your domain's "created date" in the WHOIS record. This is a hard rule — no registrar can bypass it.
Transfer confirmation emails will be sent to the registrant email address on file. Make sure this email is one you actively monitor and have access to. Log into your current registrar and update the email if needed before proceeding. If the email bounces, the transfer may fail or be significantly delayed.
Some registrars mask the registrant email behind a privacy proxy, which can interfere with transfer confirmation. Temporarily disable WHOIS privacy to ensure your actual email is used for transfer communications. You can re-enable it at the new registrar after transfer completes.
Only disable privacy temporarily — re-enable it at the new registrar immediately after transfer. Most good registrars include privacy free, so this costs you nothing.
Domains have a "Registrar Lock" or "Transfer Lock" that prevents unauthorized transfers. You must disable this before initiating a transfer. Log into your current registrar's control panel, find your domain's settings, and look for "Domain Lock," "Registrar Lock," or "Transfer Lock" — set it to unlocked/off.
The Authorization code (also called EPP code, transfer code, or auth code) is a unique security token that proves you have authorization to transfer the domain. Request this from your current registrar — it's usually in the domain management panel under "Transfer" or "Authorization Code." It's typically a random string of 8-16 characters.
If your registrar doesn't show it in the panel, contact their support to have it emailed to your registrant address.
At your new registrar (e.g., Cloudflare, Namecheap, Porkbun), start a domain transfer. You'll enter your domain name and the auth/EPP code from step 5. You'll typically pay 1 year of renewal at this point (ICANN requires at least 1 year be added on transfer). Complete the checkout process.
Transfer pricing is usually the same as the registrar's standard renewal rate. The year added is on top of any existing registration time — it doesn't restart your expiry date, it extends it by 1 year.
Within a few hours, you'll receive a confirmation email at your registrant address asking you to approve the transfer. Click the approval link. Without this, the transfer will wait the full 5-day window before auto-completing. Approving immediately speeds it up to complete within a few hours.
Some registrars also send a transfer request to the current registrar, which can approve or deny. Most good registrars auto-approve after the 5-day window if no response is received.
You forgot to disable the Registrar Lock (Step 4). Log back into your current registrar, disable the lock, and restart the transfer.
Check your spam folder. If WHOIS privacy is still enabled, the email may have gone to the privacy service's address. Disable privacy (Step 3) and re-request the confirmation email from the new registrar.
Auth codes expire quickly (usually 3-30 days) or can be one-time use. If it's been more than a day, request a fresh auth code from your current registrar. Copy/paste the code carefully — don't type it manually to avoid typos.
Don't transfer domains with less than 30 days until expiry. The transfer takes 5-7 days and an expired domain complicates the process significantly. Either renew at the current registrar first, or transfer well before expiry.