Your company’s GitHub profile is a great way to show off some of the high quality work produced internally, and attract new potential developers. Additionally, all the usual benefits of sharing your code with others apply, and you’ll be helping the open source community!

However without a verified domain there’s no way for any visitors to know that you are who you say you are. To resolve this issue, GitHub recently introduced organization domain verification. The verification process only takes a few minutes, so is definitely worth doing if your organization has an associated domain!

To complete this tutorial you’ll need Owner permissions for the GitHub organization, and access to your company’s DNS records. Note that completing domain verification will notify all other Owners of the organization. There is also an official GitHub tutorial.

Adding organization email / domain

  1. First, go to your organization’s page.
  2. Next, click the “Settings” tab.
  3. You can now add a public email and a URL, these must both be verified so use the same domain if possible.
  4. Save the changes.

Your URL will now be shown on your organization’s profile, but without the pretty verified tag!

Verifying domain

Now go to the “Verified domains” section on the Settings sidebar. We have to verify that we own the domains we listed on our profile in the earlier step.

  1. Click “Add a domain”.
  2. Enter your URL. Note that www.example.com and example.com are different, so use the raw domain (example.com).
  3. You’ll be taken to a page with information on the DNS record you need to add. The verification code is unique and expires in 7 days.

Note that the TXT record format is: _github-challenge-<your organization name>.<your domain>.

Adding DNS record

Next, in a new tab you need to go to whoever handles your DNS, in my case Cloudflare. Under the DNS tab, add the TXT record from the previous step.

Note that once the TXT domain is added your domain suffix will disappear, this is normal!

Verifying

Go back to your GitHub domain verification tab (or renavigate to it), and click the “Verify” button. Whilst DNS propagation can take up to 72 hours, with a service like Cloudflare this is almost instant.

Congratulations, your domain is now verified! Developers using your libraries are now certain that they are yours.

In addition to the verified tag, you can now view your member’s email addresses (so long as they are at your domain). For example, if a user has multiple emails registered, and one of them is at your domain, you’ll now be able to see that email!

Note that all members with “Owner” role are emailed to notify them of this change: