> ## Documentation Index
> Fetch the complete documentation index at: https://help.hoopai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Custom domain for the client portal

> Connect your own domain to the client portal so clients access their portal at a branded URL on your domain.

By default, the Client Portal is accessible at a subdomain provided by the HoopAI platform. Connecting a custom domain replaces that URL with a domain you own — for example, `portal.yourbusiness.com` or `members.yourbrand.com`. This makes the portal feel like a native part of your brand's web presence rather than a third-party tool.

## Why use a custom domain

* **Brand consistency** — clients see your domain in the browser address bar, not a platform subdomain
* **Client trust** — a URL that matches your brand reduces hesitation when clients log in
* **Email deliverability** — invitation and login emails link to your domain, which may improve open rates with some audiences
* **Professional positioning** — a custom domain reinforces that your client portal is an owned, polished product

## Prerequisites

Before connecting a custom domain, ensure you have:

* Ownership of the domain you want to use (or access to its DNS settings through your registrar)
* Access to the portal's domain settings in your HoopAI account
* A subdomain chosen for the portal (e.g., `portal`, `members`, `app`, `client`)

Using a subdomain (like `portal.yourdomain.com`) is strongly recommended over using a root domain (like `yourdomain.com`) to avoid conflicts with your main website.

## Step 1 — Enter the custom domain in portal settings

<Steps>
  <Step title="Open Client Portal settings">
    Navigate to **Sites > Client Portal**, then click **Settings** and go to **Domain Setup**.
  </Step>

  <Step title="Select Custom Domain">
    Choose the **Custom Domain** option instead of the default subdomain.
  </Step>

  <Step title="Enter your domain">
    Type the full subdomain you want to use (e.g., `portal.yourbusiness.com`). Do not include `https://` — enter only the hostname.
  </Step>

  <Step title="Click Update Domain">
    Click **Update Domain** to save. The platform will display the DNS records you need to add at your domain registrar.
  </Step>
</Steps>

## Step 2 — Add DNS records at your domain registrar

Log in to your domain registrar (GoDaddy, Namecheap, Cloudflare, Google Domains, etc.) and add the following DNS records for the subdomain you chose:

| Record type | Host / Name                                | Value                          | TTL               |
| ----------- | ------------------------------------------ | ------------------------------ | ----------------- |
| **A**       | `portal` (or your chosen subdomain prefix) | `162.159.140.166`              | Automatic or 3600 |
| **CNAME**   | `portal` (or your chosen subdomain prefix) | `clientportal.ludicrous.cloud` | Automatic or 3600 |

<Note>
  Some registrars require the full subdomain in the Host field (e.g., `portal.yourdomain.com`) while others only require the prefix (e.g., `portal`). Refer to your registrar's documentation if you are unsure.
</Note>

### Example: Cloudflare setup

1. Log in to Cloudflare and select your domain
2. Click **DNS** in the top navigation
3. Click **Add Record**
4. Add the A record: Type = A, Name = `portal`, IPv4 address = `162.159.140.166`, Proxy status = **DNS only** (orange cloud OFF)
5. Add the CNAME record: Type = CNAME, Name = `portal`, Target = `clientportal.ludicrous.cloud`, Proxy status = **DNS only**
6. Save both records

<Note>
  If you use Cloudflare, set the DNS records to **DNS only** (gray cloud) rather than **Proxied** (orange cloud). Proxying the records through Cloudflare may interfere with SSL certificate provisioning for the custom domain.
</Note>

### Example: GoDaddy setup

1. Log in to GoDaddy and go to **My Products > DNS**
2. Click **Add** to add a new record
3. Add the A record: Type = A, Host = `portal`, Points to = `162.159.140.166`, TTL = 1 hour
4. Add the CNAME record: Type = CNAME, Host = `portal`, Points to = `clientportal.ludicrous.cloud`, TTL = 1 hour
5. Save both records

## Step 3 — Wait for DNS propagation

DNS changes typically propagate within 1–4 hours, but can take up to 48 hours in some cases. During this time:

* The custom domain may not resolve consistently
* Some visitors may still see the old URL or a DNS error
* This behavior is normal and not an indication of an error in your setup

You can check propagation status using a free tool like [dnschecker.org](https://dnschecker.org). Search for your subdomain and verify the A record resolves to `162.159.140.166` from multiple locations worldwide.

## Step 4 — Verify the domain is live

Once propagation is complete:

1. Open a private/incognito browser window
2. Navigate to your custom portal domain (e.g., `https://portal.yourbusiness.com`)
3. Confirm the Client Portal login page loads correctly with your branding
4. Test login using a test contact's magic link

## SSL certificate

The HoopAI platform provisions an SSL certificate for your custom domain automatically after the DNS records propagate. The certificate ensures the portal is served over HTTPS. This process typically completes within a few minutes of successful DNS propagation.

If the portal loads over HTTP rather than HTTPS, wait an additional 15–30 minutes. If HTTPS is still not active after 48 hours, contact support with your custom domain URL for assistance.

## Updating the domain

If you ever need to change the custom domain for the portal, return to **Settings > Domain Setup**, enter the new domain, click **Update Domain**, and add the DNS records for the new domain at your registrar. Remove the old DNS records after the new domain is confirmed working to keep your DNS configuration clean.

<Tip>
  Include the custom portal URL in your welcome email sequence, client onboarding documents, and account profile page. The more touchpoints that mention the portal URL, the easier it is for clients to find and use it — reducing support requests for access.
</Tip>
