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

# Custom Domains

> Connect your own domain to your Pageo profile

Connect your own domain to your Pageo profile so your link-in-bio lives at a URL you own (e.g. `links.yourname.com` or `yourname.com`). Pageo handles verification and routing—you add a couple of DNS records and we do the rest.

## Overview

With custom domains you can:

* Use your own domain or subdomain for your Pageo profile
* Keep your brand in the URL (e.g. `links.yourcompany.com`)
* Rely on automatic verification—we check every few seconds once you add the records
* Remove or change the domain anytime from the admin

## Prerequisites

Before you begin, make sure you have:

* A Pageo account (free or Pro)
* Access to your domain's DNS settings at your registrar or DNS provider (e.g. Cloudflare, Namecheap, GoDaddy, Vercel)
* Your domain or subdomain in mind (e.g. `example.com` or `links.example.com`)

## Supported Setups

* **Root/apex domain**: `yourdomain.com` → you'll add an **A** record and a **TXT** record.
* **Subdomain**: `links.yourdomain.com`, `bio.yourdomain.com`, etc. → you'll add a **CNAME** record and a **TXT** record.

## Step 1: Add Your Domain in Pageo

1. Log in to your Pageo account and open the **admin dashboard**.
2. Open **Custom Domains** (or the domain settings section).
3. Enter your domain (e.g. `links.example.com` or `example.com`).
4. Click **Add Domain**.

Pageo will reserve the domain and generate a **verification token** and the **routing record** you'll add in DNS.

## Step 2: Add DNS Records at Your Provider

You'll add two records at the place where your domain's DNS is managed (registrar, Cloudflare, Vercel, etc.):

1. **Verification record (TXT)**\
   Proves you control the domain. Pageo shows:
   * **Type**: `TXT`
   * **Host**: (shown in the modal—e.g. `_pageo-verification` for root, or `_pageo-verification.links` for `links.example.com`)
   * **Value**: the long token Pageo gives you (copy from the modal)

2. **Routing record (A or CNAME)**\
   Sends traffic to Pageo:
   * **Root domain** (`example.com`):
     * **Type**: `A`
     * **Host**: `@` (or leave blank if your provider uses "root")
     * **Value**: the IP address shown in Pageo (e.g. `216.198.79.1`)
   * **Subdomain** (e.g. `links.example.com`):
     * **Type**: `CNAME`
     * **Host**: the subdomain only (e.g. `links`)
     * **Value**: `cname.pageo.me`

### Tips

* Copy the **Value** from Pageo with the copy button to avoid typos.
* If your provider has a TTL setting, default (e.g. 300–3600) is fine.
* Some providers use "Name" or "Host" instead of "Host"; use exactly what Pageo shows for that record.

## Step 3: Wait for Verification

* Pageo **checks automatically every few seconds** while the Custom Domains modal is open. You don't need to click "Verify" repeatedly.
* DNS changes can take **a few minutes to an hour** to propagate. If it's not verified right away, leave the modal open or come back later and open it again.
* When verification succeeds, you'll see a success state and your profile will be available on your custom domain.

You can also click **Verify Domain** once you've added the records if you want to trigger a check immediately.

## Step 4: Visit Your Profile

Once verified:

* Open `https://<your-domain>` (or `https://<subdomain>.<your-domain>`) in a browser.
* Your Pageo profile will load on your custom URL.
* Your default `pageo.me/username` URL continues to work as well.

## Removing or Changing Your Domain

* To **remove** the custom domain: open Custom Domains in the admin and use **Remove Domain**. Confirm when prompted. The modal will close after the removal finishes.
* To **use a different domain**: remove the current one, then add the new domain and repeat the DNS steps above.

<Warning>
  Removing the domain only disconnects it from Pageo. It does not delete the DNS
  records at your provider. You can remove or change those in your DNS dashboard
  if you no longer want the domain to point to Pageo.
</Warning>

## Troubleshooting

### Verification never succeeds

* **Wait longer**: Propagation can take 5–30 minutes (sometimes more).
* **Check the records**: Host and value must match exactly what Pageo shows (no extra spaces, correct subdomain for TXT host).
* **Root vs subdomain**: For `example.com` use the root/apex instructions; for `links.example.com` use the subdomain (CNAME) instructions.
* Try **Verify Domain** manually after waiting a few minutes.

### "Verification failed" or "Domain verification failed"

* Confirm the **TXT** record's value is the full token from Pageo and the host matches (e.g. `_pageo-verification` for root).
* Confirm the **A** or **CNAME** record points to the correct target (IP or `cname.pageo.me`).
* Use a DNS lookup tool (e.g. [DNS checker](https://dnschecker.org)) to see what the rest of the internet sees for your domain.

### Site doesn't load or shows wrong page

* Give it a few minutes after verification; SSL and routing can take a short time to activate.
* Clear cache or try an incognito window.
* Ensure you're visiting `https://` and the exact host you added (e.g. `links.example.com`).

### CNAME for root domain

* Some providers don't allow CNAME on the root. Pageo's flow uses an **A** record for root domains; use the A record and IP shown in the admin. If your provider only supports CNAME at root (e.g. CNAME flattening), their docs will describe how that maps to an A target; use the IP Pageo gives you as the target if possible.

## Summary

1. Add your domain in Pageo (admin → Custom Domains).
2. Add the **TXT** (verification) and **A** or **CNAME** (routing) records at your DNS provider.
3. Wait for automatic verification (or use **Verify Domain**); propagation usually takes 5–10 minutes.
4. Visit your custom URL to confirm your profile loads.

For more on DNS and your specific provider, check their documentation. For product updates, see the [changelog](https://pageo.me/changelog).
