---
title: Add a domain
description: Point a domain at your WHP hosting — whether you registered it with us or elsewhere.
sidebar:
  order: 1
---

import { Steps, Aside } from '@astrojs/starlight/components';
import SignIn from '~/content/partials/signing-in.mdx';
import Support from '~/content/partials/support-link.mdx';

## Before you start

- A **registered domain.** We sell domains through Namecheap, and you can also register with any other provider you like.
- **Access to the registrar's DNS settings** if you registered the domain elsewhere.
- About 5 minutes (plus DNS propagation time, which can be up to 24 hours).

<Aside type="tip">
  If you registered your domain with us, we can help with DNS, redirects, and email records directly. If you registered elsewhere, we can still help — you'll just need to make the actual changes at your registrar.
</Aside>

## Sign in to WHP

<SignIn />

## Steps

<Steps>

1. In the sidebar, click **Domains & DNS**. You'll see a searchable list of the domains on your account.
   ![WHP Domains & DNS page](~/assets/screenshots/whp/whp-domains.png)

2. Click **Add Domain** in the top right. In the dialog, type your domain (for example, `example.com`) — just the bare domain, with no `http://` or `www.`
   ![Add Domain dialog](~/assets/screenshots/whp/whp-dns-add-domain.png)

3. Click **Add Domain** to confirm. The domain appears in the list with a green **Active** status.

</Steps>

WHP creates a DNS zone with the standard set of records automatically for the new domain:

- **A record** for the apex domain → your server's IP
- **CNAME** for `www` → the apex
- **NS records** for the nameservers
- **MX record** → the mail server
- **TXT records** for SPF and DKIM

You can review and tweak any of these — click **Manage DNS** next to the domain to open the records editor. See [Manage DNS records](/whp/how-to/manage-dns-records/) for the full walkthrough.

## Point your DNS at us

There are two paths depending on where the domain is registered:

**Registered with us.** Nothing to do — we set DNS automatically when the domain was added. Skip ahead to verify.

**Registered elsewhere.** At your registrar, do one of the following:

- Set the **nameservers** to the values shown in **Manage DNS** (the **NS** records) — recommended, as it gives us full DNS control and is easier to support — **or**
- Keep your existing nameservers and add an **A record** pointing the domain to the IP shown on the **Dashboard** page under Server Information.

## Verify it worked

DNS changes can take up to 24 hours to propagate worldwide. To check:

- Run `dig example.com +short` from a terminal — once you see our server's IP in the result, you're live.
- Or use a web tool like [whatsmydns.net](https://www.whatsmydns.net/) to see propagation across many regions.

Once DNS resolves, visiting your domain in a browser will reach WHP — though you'll see a default placeholder until you create a site.

## Troubleshooting

**"Pending DNS" for more than 24 hours.** Re-check the nameservers or A record at your registrar — typos and trailing dots cause silent failures. Clear your local DNS cache to rule out client-side caching.

**Domain returns a generic placeholder.** DNS works but you haven't created a site yet. [Create one](/whp/how-to/create-a-site/) and bind this domain to it.

**Wrong site loads.** Another site on your account is bound to this domain. Open **Sites** in the sidebar and make sure the correct site is bound to it.

## Related

- [Manage DNS records](/whp/how-to/manage-dns-records/)
- [Create a site](/whp/how-to/create-a-site/)

## Still stuck?

<Support />
