Guides

How to set up a public status page on your own domain

Put your status page on an address like status.example.com with two DNS records, one to prove the domain is yours and one to send visitors.

Keep customers informed · 4 min read · Updated Oct 12, 2026

During an outage, customers look for one thing: a page that says you know, and what is happening. If that page lives at an address they have never seen, some will not trust it and most will not find it. status.example.com is where people look.

Putting a status page on your own domain takes two DNS records and about fifteen minutes, most of it waiting for DNS.

How it works

A status page is hosted by a service, at that service's address. To show it at your address, two things have to be true:

  • The service knows the domain is yours. You prove it by adding a TXT record that carries a value only you were given.
  • Visitors are sent to the service. A CNAME record points your host name at it.
https://status.example.com
All systems operational
Website
API
Checkout
The page your customers see at your own address.

The proof comes first for a reason. A certificate for your host name should only be issued once the domain is verified as yours, so that nobody else can attach your host name to their page.

Step 1: Choose the host name

  • Use a subdomain, and the conventional one: status.example.com.
  • Use one that serves nothing else. A host name can only point to one place.
  • Keep it away from what it reports on. A status page served by the same servers as your product goes down with it. That is the reason to let a separate service host it.

Use a subdomain, not the bare domain. A CNAME record cannot normally be placed on example.com itself.

Step 2: Prove the domain is yours

The service gives you a record to add at your DNS provider: a TXT record with a name and a long value.

Two things go wrong here more than anything else:

  • A doubled domain. Many providers add the domain to the name for you. If yours shows .example.com after the name field, enter only the part before it.
  • A changed value. Paste it exactly as given, and let the provider add any quotation marks.

To see what the outside world sees, ask for the record yourself:

dig +short TXT the-name-you-were-given.example.com

If nothing comes back, the record has not reached all DNS servers yet. Wait a few minutes. Keep the record in place after verification, in case the service checks it again.

Step 3: Send visitors

Once the domain is verified, add the second record: a CNAME from your host name to the target the service gives you.

If your DNS provider offers to proxy the record through its own network, as Cloudflare does, turn that off for this record unless the service says otherwise. Most status page services issue the certificate for your host name themselves, and a proxy in between prevents that.

Step 4: Check it, then tell people

  1. Open https://status.example.com in a browser. With some services the first visit takes a few seconds while the certificate is issued.
  2. Check the padlock: the certificate is for your host name.
  3. Open the page in a private window, signed out, to see what a customer sees.
  4. Make one of the checks behind the page fail on purpose, and watch the page change. A status page that cannot turn red is not telling customers anything.

Then put the link where customers will look for it during an outage: the footer of your site, your support page, and your login page. A status page nobody can find is not doing its job.

Common mistakes

  • Adding the CNAME first. Visitors then reach a host name that is not verified yet and get an error. Verify, then point traffic.
  • Using a host name that already serves something.
  • Leaving the provider's proxy on. The page fails with a certificate error.
  • Deleting the TXT record after verifying. Some services check it again later, and leaving it costs nothing.
  • A status page that is always green. If it is not fed by real checks, customers learn to ignore it.

Doing this in saysOK

A status page's Settings has a Custom domains list. A host name added there starts as pending and shows the two records to create.

1 · Prove the domain is yours
TypeTXT
Name_saysok-verify.status.example.com
Valueshown in saysOK
verified
2 · Then send visitors
TypeCNAME
Namestatus.example.com
Targetcname.saysok.com
Only after step 1 is verified.
The two records saysOK asks for, in this order.

Verify looks for the TXT record. saysOK also looks again by itself every five minutes for the first week, so you can leave the page and come back. Once the label reads verified, the CNAME record sends visitors, and the certificate is issued on the first visit.

Each component on the page takes its state from the monitors you link to it, so the page reflects what your checks see.

Custom domains are not in every plan; see pricing.

Next

A status page is only as good as what feeds it: monitor an API endpoint and check that a login or checkout flow still works. If you run status pages for several clients, see how to monitor client websites as an agency.

Set this up in saysOK

Start on the free plan. The guide says where a step needs a paid one.