Switching from UptimeRobot? Import your monitors in one click with a read-only API key.Start free →
  1. Home
  2. Monitoring
  3. DNS monitoring

DNS monitoring: know when a record changes or stops resolving

Resolve A, AAAA, CNAME, MX, NS or TXT records through public resolvers and compare the answer with the values you expect.

  • From $7 a month on Starter
  • Free plan: 30 monitors for HTTP(S), keyword, ping and port
  • No credit card for Free
clienta.comA record · expected 203.0.113.10
Up
  • Amsterdam10msA
  • London14msA
  • RecordA
  • TTL300 s
  • Lookup10 ms

Illustrative example

Try it

Check it now, in your browser

No account. DNS monitoring: type a target and see roughly what it looks at. Nothing you type is stored.

Asks Cloudflare 1.1.1.1 over DNS-over-HTTPS from your browser. A monitor asks Google and Cloudflare from our regions.

The result appears here.

Create this monitorOpen the full tool

What it checks

What a dns monitor looks at

Expected values

List one or more values. The check fails when any of them is missing from the answer, for example the IP a site must resolve to.

Resolution failure

No such record, SERVFAIL and timeouts all fail the check with the specific error.

Six record types

A, AAAA, CNAME, MX, NS and TXT. MX values can be given as the priority and host, or just the host.

Public resolvers

Queries go through Google (8.8.8.8) and Cloudflare (1.1.1.1), so you see what the public internet sees, cache included.

Alerts

DNS monitoring: what an alert looks like

The same event arrives as an e-mail, a Telegram message or a Slack card. This is the wording the channels send; the host, times and numbers are made up.

To [email protected]

Subject [DOWN] clienta.com — DNS A record for clienta.com is 198.51.100.7, expected 203.0.113.10

DOWN

clienta.com

clienta.com · DNS A record for clienta.com is 198.51.100.7, expected 203.0.113.10 · confirmed from Amsterdam (AMS), London (LON)

ErrorDNS A record for clienta.com is 198.51.100.7, expected 203.0.113.10
Confirmed byAmsterdam (AMS), London (LON)
Since14:02:11 UTC
Targetclienta.com
Next stepCheck the server / hosting panel. Acknowledge so the team knows you are on it.

AcknowledgeOpen incident

Tenium · checked from Amsterdam · 14:02 UTC

Tenium alerts

🔴 DOWN · clienta.com · DNS A record for clienta.com is 198.51.100.7, expected 203.0.113.10 · confirmed from Amsterdam (AMS), London (LON)

TTenium APP 2:02 PM

DOWN · clienta.com
clienta.com · DNS A record for clienta.com is 198.51.100.7, expected 203.0.113.10 · confirmed from Amsterdam (AMS), London (LON)

  • Error: DNS A record for clienta.com is 198.51.100.7, expected 203.0.113.10
  • Confirmed by: Amsterdam (AMS), London (LON)
  • Target: clienta.com

AcknowledgeOpen incident

Check the server / hosting panel. Acknowledge so the team knows you are on it. · checked from Amsterdam

DNS monitoring: e-mail, Discord and Google Chat work on every plan; Slack, Telegram, Teams and Mattermost start on Starter. There are no SMS or voice-call alerts.

Response time

Response time with a threshold

Every check stores how long the response took. DNS monitoring: drag the threshold and see when a slow-response alert would have fired.

Response time Threshold illustrative data
Response time with a threshold. Illustrative data. 050100150200 Threshold 100 ms 00:0006:0012:0018:0024:00 Response time (ms)
Rule. DNS monitoring: the alert fires when the average of the last 3 checks is above the threshold (Pro and Agency).
Speed

How fast you find out

Pick a plan to see its check interval and how long a failure takes to reach you, including the confirmation round.

Checks every30 s
On average you hear after15 s
At worst90 s
Checks everyConfirmation window (up to 60 s)

DNS monitoring: a failure lands at a random moment between two checks, so on average you wait half an interval, and the worst case is a whole interval plus the confirmation window. A single failing region is not enough: all two regions must agree before an incident opens. The other regions are asked straight away, and we allow up to 60 seconds for the answers.

Setup

How to set up dns monitoring in 30 seconds

1

Enter the target

Add the domain, choose the DNS type and the record type, and Tenium fills in a sensible timeout and default confirmation settings.

2

Pick an interval

Fastest check interval: 30 s on Pro and Agency, 1 min on Starter, 5 min on Free. Slower intervals are available on every plan.

3

Set the expected value

Choose who is told. Email, Discord and Google Chat work on every plan, Slack, Telegram, Teams and Mattermost start on Starter, webhooks on Pro.

4

Save

The first check runs within seconds. If a check ever fails, other regions re-check it before an incident opens, so one bad route does not page you.

Failure modes

What each error means

This is the text an incident shows in its Error line, the usual cause, and the first thing to look at.

NOT_FOUNDNo A record found for clienta.com

The record is gone (NXDOMAIN or an empty answer). Someone deleted it, or the zone moved without it.

Shown as: No A record found for clienta.com

MISMATCHDNS A record for clienta.com is 198.51.100.7, expected 203.0.113.10

The name resolves but to something else: a hijack, a stale cutover, or a zone edited by mistake. This catches it within one interval.

Shown as: DNS A record for clienta.com is 198.51.100.7, expected 203.0.113.10

SERVFAILDNS error: SERVFAIL

The resolver could not get an answer from your nameservers: a dead nameserver, broken DNSSEC, or a provider outage.

Shown as: DNS error: SERVFAIL

TIMEOUTDNS error: query timeout

The authoritative servers did not answer in time. If all of them are slow, your DNS provider has a problem.

Shown as: DNS error: query timeout

Plans

DNS monitoring by plan

Free
$0/mo
Starter
$7/mo
Pro
$29/mo
Agency
$59/mo
Available—✓✓✓
Monitors301003001000
Fastest interval5 min1 min30 s30 s
Regions1222
Custom headers——✓✓
Response-time alerts——✓✓
Escalation to a second contact——✓✓
Status pages1310Unlimited

This check starts on the Starter plan. HTTP(S), keyword, ping and port checks are on every plan.

Full pricing

What the check queries

A DNS monitor asks public recursive resolvers, Google at 8.8.8.8 and Cloudflare at 1.1.1.1, for the record type you chose and compares the answer with what you told Tenium to expect. It tries twice with a timeout of up to 10 seconds, and the time the lookup took is stored as the response time. The record types are A, AAAA, CNAME, MX, NS and TXT.

Because the questions go through recursive resolvers, you see what the public internet sees, including cached answers. You cannot query one specific authoritative nameserver, and you will not see a propagation map. The upside is that a check passing here means real visitors resolve the name; the downside is that changes show up only after the record's TTL expires.

Expected values: subset, not exact

Put one or more values in the expected field, separated by commas or new lines. Each must appear in the answer; additional records in the answer are fine. Comparison ignores case and trailing dots. So an A monitor expecting 203.0.113.10 passes when the answer is 203.0.113.10 and 203.0.113.11, and fails the moment 203.0.113.10 disappears. The failure message prints what was found, which makes a hijack or a mistaken edit easy to read.

Some formats deserve a note. MX answers are matched on the host name alone or on priority plus host ("10 mx1.clienta.com"). TXT chunks are joined into one string before comparing, so long DKIM keys compare as written; a TXT monitor needs the whole value. If you leave the expected field empty, the check only requires that the record exists, which catches deletion but not substitution. Set the expected value when you want protection against change.

Records worth watching

A short list gives most of the safety:

  • A or AAAA of the apex and www: the classic "someone pointed the site elsewhere" detector.
  • NS of the domain: set both nameservers as expected; this is also the best available alarm for a nameserver hijack, since the registration data itself is not watched.
  • MX: mail that silently stops arriving is worse than a site that is visibly down.
  • TXT at _dmarc.clienta.com and for SPF: verifies that policy records survive a DNS provider migration.
  • CNAME of a status or shop subdomain pointing to a SaaS: catches dangling records that could be taken over.

Cloudflare, CDNs and flattened records

If a hostname is proxied, its A record shows the provider's addresses, which are shared and can change without notice. Expecting those is brittle. Watch the NS record to see that the zone is still delegated to the provider, and use website monitoring to see that traffic reaches your origin. CNAME flattening, used by some providers at the apex, makes a CNAME answer look like an A record, so choose the record type that the public sees.

Planned changes without noise

When you migrate a site you will change records deliberately, and the monitor will fail in the minutes between your edit and the new value being served everywhere, because different resolvers hold different cached answers. Two habits help. Lower the TTL a day ahead so caches turn over quickly, and put the monitor into a maintenance window during the switch, then update the expected value and end the window. If you forget to update the expected value, the monitor keeps pointing to the old address and will keep reporting an incident, which is the correct behaviour.

Failures are specific: no record found, SERVFAIL (the zone's servers are failing or DNSSEC is broken), a query timeout, or "record is X, expected Y". DNS monitoring starts on the Starter plan, and check intervals follow your plan, from 1 min on Starter to 30 s on Pro. The 2 regions that run checks all use the same two public resolvers.

DNS monitoring questions

Can I monitor a record on a subdomain?

Yes, enter the full name, for example _dmarc.clienta.com or shop.clienta.com, and pick the record type that name has.

Will it tell me when any record changes?

It tells you when the answer stops containing your expected values, or when the record disappears. It does not store a before-and-after history of arbitrary changes, so list the values you care about.

Is DNSSEC validated?

Validation is done by the public resolvers. A zone with broken DNSSEC typically comes back as SERVFAIL, and that is reported as a failure.

Can I query my own nameserver?

Not at present; queries go to the two public resolvers. A UDP monitor on port 53 tells you whether your authoritative server answers at all.

Try dns monitoring on Starter

This check starts on the Starter plan at $7 a month. The Free plan, no card needed, covers 30 monitors with HTTP(S), keyword, ping and port checks.