GoDaddy is not free to register a domain. To get a free domain name, you need to transfer the domain to GoDaddy before registering it. You also need to purchase an annual GoDaddy hosting or WordPress hosting plan. There is a $0.18 ICANN fee per domain per year for registration, renewal or transfer. GoDaddy shared hosting plans start at $1.99/month and go up to $12.99/month. The cheapest web domain depends on the domain extension.
After a GoDaddy domain expires, you can purchase domain protection services. Basic privacy protection is free. More advanced plans cost $9.99 and $19.99. You get one free domain name with any GoDaddy hosting plan purchase. But you need to renew it yearly at $11.99. Buying just a domain costs $11.99 the first year, then $17.99 on renewal. Generally .com domains are more expensive than domains like .biz.
You can build a website for free with GoDaddy. But you won’t get a custom domain or all features. Paid plans start at $10/month. They include a custom domain and more features. For domain registration only, Google Domains is cheaper than GoDaddy. But GoDaddy is cheaper if you need web hosting too.