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

# Serve a status page on your own domain

> Point status.yourdomain.com at Observer with automatic TLS.

Add a custom domain so the public status page lives at
`status.yourdomain.com` instead of `something.use.observer`. Observer
provisions a TLS certificate automatically. The default subdomain
keeps working as a fallback.

## Prerequisites

* A Starter plan or higher. Free accounts cannot configure custom
  domains.
* A status page already created.
* Permission to add a CNAME record on the domain you want to use.

## Pick a subdomain, not the root

CNAME records cannot be set on the root of a domain. Use
`status.yourdomain.com`, not `yourdomain.com`. If your status page is
the only thing on that domain, `www.yourdomain.com` is a reasonable
choice.

## Steps

**1. Add the custom domain in Observer**

In the console, open the status page and go to the **Custom domain**
section. Enter the hostname in **Subdomain** (for example
`status.yourdomain.com`) and click **Add custom domain**.

The domain starts in **Waiting for DNS** and Observer starts
checking every 30 seconds for the CNAME you'll add next.

**2. Add the CNAME at your DNS provider**

Create a CNAME record with these values:

| Field | Value |
| - | - |
| Type | `CNAME` |
| Name | the subdomain (`status` if your domain is `status.yourdomain.com`) |
| Value | `cname.use.observer` |
| TTL | `300` (or "automatic") |

The Observer UI shows provider-specific notes for Cloudflare,
Route 53, GoDaddy, Namecheap, Vercel, and Netlify under the
**DNS provider** dropdown.

> [!WARNING]
>
> **DNS on Cloudflare:** the CNAME record must be DNS-only (grey cloud),
> not proxied. A proxied CNAME ends in Cloudflare error 1014 ("CNAME
> Cross-User Banned").

**3. Verify**

Wait a minute or two for DNS to propagate, then click **Check now**
in the **Custom domain** section. The status walks through:

* **Waiting for DNS**: Observer hasn't seen the record yet.
* **DNS not pointing at Observer**: your CNAME exists but points
  somewhere else. Fix the record and click **Check now**.
* **DNS verified**: DNS is right. Observer requests a certificate
  automatically.
* **Issuing certificate**: certificate issuance in progress (usually
  under a minute, sometimes longer while the certificate authority
  validates the hostname).
* **Active**: your domain serves the status page with a valid TLS
  cert.

Two failure states can also appear: **Certificate issuance failed**
and **Error**. See [Common failures](#common-failures).

## After it's active

The page serves at your custom hostname. The original
`*.use.observer` URL keeps working. Feel free to redirect from it
in your own infrastructure if you want a single canonical URL.

Observer renews the certificate automatically about 30 days before
expiry. The UI shows the next expiry date in the **Custom domain**
section.

## Common failures

**Waiting for DNS for more than 30 minutes.** Your DNS provider's TTL
may be aggressive (1 hour or more). Wait it out, or temporarily
lower the TTL.

**DNS not pointing at Observer.** Your CNAME
is pointing at the wrong target. The correct value is
`cname.use.observer`.

**Certificate issuance failed.** Certificate issuance did not complete. The most common cause is the CNAME flipping away
from `cname.use.observer` after DNS was verified, or a proxied
(orange-cloud) Cloudflare record blocking validation. Confirm the
record is DNS-only and points at `cname.use.observer`, then click
**Check now**. Observer retries issuance automatically on its background
schedule.

**Error.** Setup stopped; the section shows the reason under the
status. One cause is an active
domain whose CNAME has not pointed at `cname.use.observer` for more
than seven days. Fix the record, then remove the custom domain and
add it again.

**Cloudflare error 1014.** Your CNAME is proxied. Switch the record
to DNS-only (grey cloud) in the Cloudflare DNS panel.

## Removing a custom domain

Click **Remove custom domain** in the **Custom domain** section and
confirm. The page
stops serving on the custom hostname immediately and reverts to the
default `*.use.observer` URL.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.