DNS propagation checker
See which resolvers around the world have picked up your DNS change, and which are still holding on to the old answer.
Results for example.com
Propagating
No resolver has the current answer yet
0 of 48 resolvers return your expected value; 47 return a different answer; 1 failed or did not answer.
Waiting will not help yet: the authoritative nameserver does not return your expected value, so the change is not published at the source.
Compared with the value you expect: 93.184.216.34
47 old · 1 silent
How long a resolver keeps this answer
NTT Global DNS
104.20.23.154,172.66.147.243(old)44 of 48188.114.98.0,188.114.99.0(old)2 of 488.47.69.0,8.6.112.0(old)1 of 48- No answer1 of 48
30 resolvers on the map. 18 anycast resolvers are listed, not pinned: they answer from many places at once.
- The authoritative nameserver does not return your expected value, so the change may not be published at the source yet (or it went to a different DNS provider).
- Cloudflare Families (malware + adult blocking), Quad9 (malware blocking, DNSSEC), OpenDNS FamilyShield, AdGuard DNS (ad and tracker blocking), CleanBrowsing Security Filter, CIRA Canadian Shield (protected) filter content by policy; a missing or different answer there can be a block rather than a stale cache.
By region48
Anycast1818 not yetthe nearest of many sites, not pinned to a city
| Resolver | Location | Status | Answer | TTL | Time |
|---|---|---|---|---|---|
| Cloudflare | US | Old answer | 104.20.23.154172.66.147.243 | 211 s | 16 ms |
| Cloudflare Families (malware + adult blocking) Cloudflare Filters content | US | Old answer | 104.20.23.154172.66.147.243 | 207 s | 19 ms |
| Google Public DNS Google | US | Old answer | 104.20.23.154172.66.147.243 | 300 s | 11 ms |
| Quad9 (malware blocking, DNSSEC) Quad9 Filters content | CH | Old answer | 104.20.23.154172.66.147.243 | 190 s | 23 ms |
| Quad9 unfiltered Quad9 | CH | Old answer | 104.20.23.154172.66.147.243 | 187 s | 22 ms |
| Cisco OpenDNS | US | Old answer | 104.20.23.154172.66.147.243 | 136 s | 9 ms |
| OpenDNS FamilyShield Cisco OpenDNS Filters content | US | Old answer | 104.20.23.154172.66.147.243 | 38 s | 9 ms |
| AdGuard DNS (ad and tracker blocking) AdGuard Filters content | CY | Old answer | 104.20.23.154172.66.147.243 | 63 s | 14 ms |
| AdGuard DNS unfiltered AdGuard | CY | Old answer | 104.20.23.154172.66.147.243 | 63 s | 14 ms |
| CleanBrowsing Security Filter CleanBrowsing Filters content | US | Old answer | 104.20.23.154172.66.147.243 | 149 s | 6 ms |
| Control D (unfiltered) Control D | CA | Old answer | 104.20.23.154172.66.147.243 | 70 s | 10 ms |
| NextDNS | US | Old answer | 104.20.23.154172.66.147.243 | 160 s | 9 ms |
| DNS4EU (unfiltered) DNS4EU (Whalebone) | CZ | Old answer | 104.20.23.154172.66.147.243 | 200 s | 10 ms |
| DNS.SB | DE | Old answer | 104.20.23.154172.66.147.243 | 162 s | 7 ms |
| Hurricane Electric | US | Old answer | 104.20.23.154172.66.147.243 | 192 s | 34 ms |
| Lumen (Level 3) Lumen | US | Old answer | 104.20.23.154172.66.147.243 | 220 s | 19 ms |
| Vercara UltraDNS Public Vercara | US | Old answer | 104.20.23.154172.66.147.243 | 178 s | 33 ms |
| NTT Global DNS NTT | US | Old answer | 104.20.23.154172.66.147.243 | 231 s | 4 ms |
North America33 not yet
| Resolver | Location | Status | Answer | TTL | Time |
|---|---|---|---|---|---|
| CIRA Canadian Shield (protected) CIRA Filters content | Ottawa, CA | Old answer | 104.20.23.154172.66.147.243 | 31 s | 94 ms |
| Bell Canada | Montreal, CA | Old answer | 104.20.23.154172.66.147.243 | 146 s | 98 ms |
| AT&T (PSINet legacy cache) AT&T | Dallas, US | Old answer | 104.20.23.154172.66.147.243 | 89 s | 119 ms |
Europe88 not yet
| Resolver | Location | Status | Answer | TTL | Time |
|---|---|---|---|---|---|
| Digitalcourage Digitalcourage e.V. | Bielefeld, DE | Old answer | 104.20.23.154172.66.147.243 | 123 s | 12 ms |
| Freifunk München Freie Netze München e.V. | Munich, DE | Old answer | 104.20.23.154172.66.147.243 | 167 s | 10 ms |
| DNS.WATCH | Frankfurt, DE | Old answer | 104.20.23.154172.66.147.243 | 291 s | 832 ms |
| CZ.NIC Open DNSSEC Validating Resolver CZ.NIC | Prague, CZ | Old answer | 104.20.23.154172.66.147.243 | 101 s | 11 ms |
| Swisscom | Bern, CH | Old answer | 104.20.23.154172.66.147.243 | 140 s | 15 ms |
| Atman | Warsaw, PL | Old answer | 104.20.23.154172.66.147.243 | 246 s | 23 ms |
| Yandex DNS (basic) Yandex | Moscow, RU | Old answer | 8.47.69.08.6.112.0 | 78 s | 57 ms |
| TEKNET | Antalya, TR | Old answer | 104.20.23.154172.66.147.243 | 23 s | 58 ms |
Asia1111 not yet
| Resolver | Location | Status | Answer | TTL | Time |
|---|---|---|---|---|---|
| Shecan | Tehran, IR | Old answer | 188.114.98.0188.114.99.0 | 196 s | 80 ms |
| Electro | Tehran, IR | Old answer | 188.114.98.0188.114.99.0 | 85 s | 69 ms |
| Ooredoo Oman (Nawras) Ooredoo Oman | Muscat, OM | Old answer | 104.20.23.154172.66.147.243 | 56 s | 126 ms |
| Bharat Public DNS (NIC) National Informatics Centre | New Delhi, IN | Old answer | 104.20.23.154172.66.147.243 | 68 s | 116 ms |
| Mango Teleservices | Dhaka, BD | Old answer | 104.20.23.154172.66.147.243 | 216 s | 208 ms |
| National Telecommunication Corporation NTC | Islamabad, PK | Old answer | 104.20.23.154172.66.147.243 | 300 s | 228 ms |
| KT Corporation KT | Seoul, KR | Old answer | 104.20.23.154172.66.147.243 | 179 s | 296 ms |
| 114DNS | Nanjing, CN | Old answer | 104.20.23.154172.66.147.243 | 64 s | 4 ms |
| AliDNS Alibaba Cloud | Hangzhou, CN | Old answer | 104.20.23.154172.66.147.243 | 297 s | 5 ms |
| HiNet Chunghwa Telecom | Taipei, TW | Old answer | 104.20.23.154172.66.147.243 | 156 s | 214 ms |
| Telkom Indonesia | Jakarta, ID | Old answer | 104.20.23.154172.66.147.243 | 108 s | 197 ms |
Oceania11 not yet
| Resolver | Location | Status | Answer | TTL | Time |
|---|---|---|---|---|---|
| Telstra | Sydney, AU | Old answer | 104.20.23.154172.66.147.243 | 28 s | 296 ms |
South America33 not yet
| Resolver | Location | Status | Answer | TTL | Time |
|---|---|---|---|---|---|
| UOL | São Paulo, BR | Old answer | 104.20.23.154172.66.147.243 | 300 s | 200 ms |
| Colombia Telecomunicaciones Colombia Telecomunicaciones (Telefónica) | Bogotá, CO | No answer | – | – | 2,001 ms |
| GTD Internet GTD | Santiago, CL | Old answer | 104.20.23.154172.66.147.243 | 71 s | 246 ms |
Africa44 not yet
| Resolver | Location | Status | Answer | TTL | Time |
|---|---|---|---|---|---|
| MTC Namibia Mobile Telecommunications Ltd (MTC) | Windhoek, NA | Old answer | 104.20.23.154172.66.147.243 | 64 s | 990 ms |
| Safaricom | Nairobi, KE | Old answer | 104.20.23.154172.66.147.243 | 100 s | 277 ms |
| MTN Nigeria | Lagos, NG | Old answer | 104.20.23.154172.66.147.243 | 88 s | 153 ms |
| ONATEL Burkina Faso ONATEL | Ouagadougou, BF | Old answer | 104.20.23.154172.66.147.243 | 145 s | 143 ms |
Authoritative1
| Nameserver | Address | Answer | SOA serial |
|---|---|---|---|
| hera.ns.cloudflare.com | 172.64.32.162 | 104.20.23.154172.66.147.243 | – |
Speed it up
Public resolvers keep an answer until its TTL runs out. These pages ask some of them to let go sooner. Your own resolver and your browser keep theirs.
Structured result (JSON) · 19 KB
{
"name": "example.com",
"type": "A",
"reference": {
"source": "expected",
"answers": [
"93.184.216.34"
]
},
"authoritative": [
{
"ns": "hera.ns.cloudflare.com",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 15,
"ip": "172.64.32.162",
"ttl": 300
}
],
"resolvers": [
{
"id": "cloudflare",
"name": "Cloudflare",
"provider": "Cloudflare",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 16,
"ttl": 211
},
{
"id": "cloudflare-families",
"name": "Cloudflare Families (malware + adult blocking)",
"provider": "Cloudflare",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 19,
"filtering": true,
"ttl": 207
},
{
"id": "google",
"name": "Google Public DNS",
"provider": "Google",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 11,
"ttl": 300
},
{
"id": "quad9",
"name": "Quad9 (malware blocking, DNSSEC)",
"provider": "Quad9",
"country": "CH",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 23,
"filtering": true,
"ttl": 190
},
{
"id": "quad9-unfiltered",
"name": "Quad9 unfiltered",
"provider": "Quad9",
"country": "CH",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 22,
"ttl": 187
},
{
"id": "opendns",
"name": "Cisco OpenDNS",
"provider": "Cisco OpenDNS",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 9,
"ttl": 136
},
{
"id": "opendns-familyshield",
"name": "OpenDNS FamilyShield",
"provider": "Cisco OpenDNS",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 9,
"filtering": true,
"ttl": 38
},
{
"id": "adguard",
"name": "AdGuard DNS (ad and tracker blocking)",
"provider": "AdGuard",
"country": "CY",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 14,
"filtering": true,
"ttl": 63
},
{
"id": "adguard-unfiltered",
"name": "AdGuard DNS unfiltered",
"provider": "AdGuard",
"country": "CY",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 14,
"ttl": 63
},
{
"id": "cleanbrowsing-security",
"name": "CleanBrowsing Security Filter",
"provider": "CleanBrowsing",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 6,
"filtering": true,
"ttl": 149
},
{
"id": "controld",
"name": "Control D (unfiltered)",
"provider": "Control D",
"country": "CA",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 10,
"ttl": 70
},
{
"id": "nextdns",
"name": "NextDNS",
"provider": "NextDNS",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 9,
"ttl": 160
},
{
"id": "dns4eu",
"name": "DNS4EU (unfiltered)",
"provider": "DNS4EU (Whalebone)",
"country": "CZ",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 10,
"ttl": 200
},
{
"id": "dns-sb",
"name": "DNS.SB",
"provider": "DNS.SB",
"country": "DE",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 7,
"ttl": 162
},
{
"id": "hurricane-electric",
"name": "Hurricane Electric",
"provider": "Hurricane Electric",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 34,
"ttl": 192
},
{
"id": "lumen",
"name": "Lumen (Level 3)",
"provider": "Lumen",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 19,
"ttl": 220
},
{
"id": "vercara",
"name": "Vercara UltraDNS Public",
"provider": "Vercara",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 33,
"ttl": 178
},
{
"id": "ntt",
"name": "NTT Global DNS",
"provider": "NTT",
"country": "US",
"kind": "global",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 4,
"ttl": 231
},
{
"id": "ca-cira-shield",
"name": "CIRA Canadian Shield (protected)",
"provider": "CIRA",
"country": "CA",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 94,
"city": "Ottawa",
"filtering": true,
"ttl": 31
},
{
"id": "ca-bell",
"name": "Bell Canada",
"provider": "Bell Canada",
"country": "CA",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 98,
"city": "Montreal",
"ttl": 146
},
{
"id": "us-att",
"name": "AT&T (PSINet legacy cache)",
"provider": "AT&T",
"country": "US",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 119,
"city": "Dallas",
"ttl": 89
},
{
"id": "br-uol",
"name": "UOL",
"provider": "UOL",
"country": "BR",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 200,
"city": "São Paulo",
"ttl": 300
},
{
"id": "co-colombia-telecomunicaciones",
"name": "Colombia Telecomunicaciones",
"provider": "Colombia Telecomunicaciones (Telefónica)",
"country": "CO",
"kind": "isp",
"status": "timeout",
"rcode": "TIMEOUT",
"answers": [],
"ms": 2001,
"city": "Bogotá",
"error": "no reply within 2000 ms"
},
{
"id": "cl-gtd",
"name": "GTD Internet",
"provider": "GTD",
"country": "CL",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 246,
"city": "Santiago",
"ttl": 71
},
{
"id": "de-digitalcourage",
"name": "Digitalcourage",
"provider": "Digitalcourage e.V.",
"country": "DE",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 12,
"city": "Bielefeld",
"ttl": 123
},
{
"id": "de-freifunk-muc",
"name": "Freifunk München",
"provider": "Freie Netze München e.V.",
"country": "DE",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 10,
"city": "Munich",
"ttl": 167
},
{
"id": "de-dnswatch",
"name": "DNS.WATCH",
"provider": "DNS.WATCH",
"country": "DE",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 832,
"city": "Frankfurt",
"ttl": 291
},
{
"id": "cz-nic-odvr",
"name": "CZ.NIC Open DNSSEC Validating Resolver",
"provider": "CZ.NIC",
"country": "CZ",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 11,
"city": "Prague",
"ttl": 101
},
{
"id": "ch-swisscom",
"name": "Swisscom",
"provider": "Swisscom",
"country": "CH",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 15,
"city": "Bern",
"ttl": 140
},
{
"id": "pl-atman",
"name": "Atman",
"provider": "Atman",
"country": "PL",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 23,
"city": "Warsaw",
"ttl": 246
},
{
"id": "na-mtc",
"name": "MTC Namibia",
"provider": "Mobile Telecommunications Ltd (MTC)",
"country": "NA",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 990,
"city": "Windhoek",
"ttl": 64
},
{
"id": "ru-yandex",
"name": "Yandex DNS (basic)",
"provider": "Yandex",
"country": "RU",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"8.47.69.0",
"8.6.112.0"
],
"ms": 57,
"city": "Moscow",
"ttl": 78
},
{
"id": "ir-shecan",
"name": "Shecan",
"provider": "Shecan",
"country": "IR",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"188.114.98.0",
"188.114.99.0"
],
"ms": 80,
"city": "Tehran",
"ttl": 196
},
{
"id": "ir-electro",
"name": "Electro",
"provider": "Electro",
"country": "IR",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"188.114.98.0",
"188.114.99.0"
],
"ms": 69,
"city": "Tehran",
"ttl": 85
},
{
"id": "om-ooredoo",
"name": "Ooredoo Oman (Nawras)",
"provider": "Ooredoo Oman",
"country": "OM",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 126,
"city": "Muscat",
"ttl": 56
},
{
"id": "tr-teknet",
"name": "TEKNET",
"provider": "TEKNET",
"country": "TR",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 58,
"city": "Antalya",
"ttl": 23
},
{
"id": "ke-safaricom",
"name": "Safaricom",
"provider": "Safaricom",
"country": "KE",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 277,
"city": "Nairobi",
"ttl": 100
},
{
"id": "ng-mtn",
"name": "MTN Nigeria",
"provider": "MTN Nigeria",
"country": "NG",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 153,
"city": "Lagos",
"ttl": 88
},
{
"id": "bf-onatel",
"name": "ONATEL Burkina Faso",
"provider": "ONATEL",
"country": "BF",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 143,
"city": "Ouagadougou",
"ttl": 145
},
{
"id": "in-nic-public-dns",
"name": "Bharat Public DNS (NIC)",
"provider": "National Informatics Centre",
"country": "IN",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 116,
"city": "New Delhi",
"ttl": 68
},
{
"id": "bd-mango",
"name": "Mango Teleservices",
"provider": "Mango Teleservices",
"country": "BD",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 208,
"city": "Dhaka",
"ttl": 216
},
{
"id": "pk-ntc",
"name": "National Telecommunication Corporation",
"provider": "NTC",
"country": "PK",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 228,
"city": "Islamabad",
"ttl": 300
},
{
"id": "kr-kt",
"name": "KT Corporation",
"provider": "KT",
"country": "KR",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 296,
"city": "Seoul",
"ttl": 179
},
{
"id": "cn-114dns",
"name": "114DNS",
"provider": "114DNS",
"country": "CN",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 4,
"city": "Nanjing",
"ttl": 64
},
{
"id": "cn-alidns",
"name": "AliDNS",
"provider": "Alibaba Cloud",
"country": "CN",
"kind": "regional",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 5,
"city": "Hangzhou",
"ttl": 297
},
{
"id": "tw-hinet",
"name": "HiNet",
"provider": "Chunghwa Telecom",
"country": "TW",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 214,
"city": "Taipei",
"ttl": 156
},
{
"id": "id-telkom",
"name": "Telkom Indonesia",
"provider": "Telkom Indonesia",
"country": "ID",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 197,
"city": "Jakarta",
"ttl": 108
},
{
"id": "au-telstra",
"name": "Telstra",
"provider": "Telstra",
"country": "AU",
"kind": "isp",
"status": "stale",
"rcode": "NOERROR",
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"ms": 296,
"city": "Sydney",
"ttl": 28
}
],
"counts": {
"total": 48,
"answered": 47,
"current": 0,
"stale": 47,
"empty": 0,
"nxdomain": 0,
"servfail": 0,
"refused": 0,
"timeout": 1,
"error": 0
},
"consensus": {
"withData": 47,
"agreeing": 44,
"distinctAnswerSets": 3,
"groups": [
{
"answers": [
"104.20.23.154",
"172.66.147.243"
],
"resolvers": 44,
"ids": [
"cloudflare",
"cloudflare-families",
"google",
"quad9",
"quad9-unfiltered",
"opendns",
"opendns-familyshield",
"adguard",
"adguard-unfiltered",
"cleanbrowsing-security",
"controld",
"nextdns",
"dns4eu",
"dns-sb",
"hurricane-electric",
"lumen",
"vercara",
"ntt",
"ca-cira-shield",
"ca-bell",
"us-att",
"br-uol",
"cl-gtd",
"de-digitalcourage",
"de-freifunk-muc",
"de-dnswatch",
"cz-nic-odvr",
"ch-swisscom",
"pl-atman",
"na-mtc",
"om-ooredoo",
"tr-teknet",
"ke-safaricom",
"ng-mtn",
"bf-onatel",
"in-nic-public-dns",
"bd-mango",
"pk-ntc",
"kr-kt",
"cn-114dns",
"cn-alidns",
"tw-hinet",
"id-telkom",
"au-telstra"
],
"current": false
},
{
"answers": [
"188.114.98.0",
"188.114.99.0"
],
"resolvers": 2,
"ids": [
"ir-shecan",
"ir-electro"
],
"current": false
},
{
"answers": [
"8.47.69.0",
"8.6.112.0"
],
"resolvers": 1,
"ids": [
"ru-yandex"
],
"current": false
}
]
},
"summary": "0 of 48 resolvers return your expected value; 47 return a different answer; 1 failed or did not answer.",
"flushLinks": [
{
"name": "Google Public DNS",
"url": "https://developers.google.com/speed/public-dns/cache"
},
{
"name": "Cloudflare 1.1.1.1",
"url": "https://one.one.one.one/purge-cache/"
},
{
"name": "Cisco OpenDNS",
"url": "https://cachecheck.opendns.com/"
}
],
"incomplete": false,
"pending": [],
"notes": [
"The authoritative nameserver does not return your expected value, so the change may not be published at the source yet (or it went to a different DNS provider).",
"Cloudflare Families (malware + adult blocking), Quad9 (malware blocking, DNSSEC), OpenDNS FamilyShield, AdGuard DNS (ad and tracker blocking), CleanBrowsing Security Filter, CIRA Canadian Shield (protected) filter content by policy; a missing or different answer there can be a block rather than a stale cache."
],
"expected": "93.184.216.34",
"eta": "Waiting will not help yet: the authoritative nameserver does not return your expected value, so the change is not published at the source.",
"minTtl": 23
}What this checker shows
After you change a DNS record, some people see the new value straight away while others keep seeing the old one for hours. This checker asks 48 public resolvers, from big services such as Google and Cloudflare to ISP and regional resolvers in about 25 countries, for the same record. It also asks the domain's own nameserver, then lines the answers up side by side. A resolver that gives the same answer as the nameserver is up to date. One that doesn't is probably still serving a cached copy.
How to use it
- Enter the name and record typeUse the exact hostname people visit, not just the domain. For a website check
AorCNAME, for email checkMXon the domain, and for a verification token checkTXT. The type menu is in More options and starts onA. - Add the value you expect (optional)In More options, enter what you changed the record to: an IP address for
AorAAAA, a hostname forCNAME,NSorMX, or any piece of the text forTXT. Resolvers that return it count as current, so you can see at a glance whether your change has arrived. Without it, resolvers are compared with the nameserver's answer. - Check the nameserver firstThe Authoritative tab shows what the domain's own nameserver returns. If that is not your new value (the result says so when you entered one), the change is not published at your DNS host yet, and waiting for caches will not help.
- Run it againResolvers switch from old to new as their caches expire. Use Check again every few minutes (a result is cached for up to two minutes) and watch the count of current resolvers. You don't need every one. What matters is the resolvers your visitors use.
How to read the results
The top of the result is a headline such as “Almost there: 43 of 48 are current”, with a sentence beneath it that says what the resolvers were compared with. Beside it are a roll call with one dot per resolver, the answers grouped with a count for each, and a map, so a split between old and new is easy to spot. Three tabs hold the detail: the resolvers by region, the authoritative nameserver, and links to refresh the big public caches.
| Result | Meaning | What to do |
|---|---|---|
| Current | The resolver gives the same answer as the nameserver, or contains the value you expect. | Nothing. |
| Old answer | The resolver still has a cached copy. It reads Different answer when there is no nameserver answer or expected value to compare with. | Wait for the old TTL, shown beside it, or use the refresh links on the Speed it up tab. |
| Several different answers | Load balancing, a CDN or geo-DNS (DNS that answers by location) can give each resolver a different valid address. Without an expected value the checker cannot tell that from a stale cache, but it adds a note when it sees three or more answers. | For your own records, enter the value you expect. For CDN-hosted names, differences are normal. |
| Not found or No records | The resolver believes the name does not exist, or has no record of this type, possibly from a cached negative answer. | Wait for the zone's negative-cache time (the SOA minimum), shown in the SOA lookup. |
| Server failure, Refused, No answer or Error | The resolver could not complete the lookup. | Check the domain's nameservers and DNSSEC. One slow resolver is not a global problem. |
When the nameserver returns your expected value, or the record has been removed, the result adds a Fully settled in time. That is the longest remaining TTL among the resolvers still on the old answer. Without one of those two, a different answer could be perfectly legitimate, so the checker does not promise a time.
The longest anyone should wait is roughly the old record's TTL after the change. Nameserver changes are slower. The registry publishes your nameservers with its own TTL, two days for .com and .net (some endings use less), so resolvers can keep using the old ones for that long.
When it still looks wrong
- The nameservers disagree. If your DNS host runs several nameservers, one may not have the update yet. LookupOwl asks one of them, chosen at random, so compare them all with
dig +nssearchand look at the serial numbers (command below). - The new record isn't showing anywhere. You may have edited the zone at a host that is not the delegated one. Check the NS records and your registrar.
- The resolvers are right but your computer isn't. Your operating system, browser and router cache DNS too. Flush them with the commands below.
- The site still shows old content. The address may be new, but a CDN, your browser's cache or an entry in your
hostsfile can still send you to the old server. - A filtering resolver is the odd one out. Six of the 48 block malware, ads or adult content by policy and are marked Filters content. A missing answer there can be a block rather than a stale cache.
- An anycast resolver differs from what a visitor sees. Services such as 8.8.8.8 and 1.1.1.1 are many servers behind one address. The checker reaches the one nearest LookupOwl's servers, so someone in another country could briefly see something else.
- A long TXT answer comes back cut short. Resolvers sometimes return only part of a big set of records. The checker notes when a resolver returned only part of the nameserver's set, because that is not a stale cache.
# Compare the serial number on every nameserver
dig +nssearch example.com
# Windows
ipconfig /flushdns
# macOS
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
# Linux (systemd-resolved)
resolvectl flush-caches
# Chrome's internal cache
chrome://net-internals/#dnsThe big public resolvers also let you ask them to forget one name. Google Public DNS and Cloudflare 1.1.1.1 have cache purge pages, and Cisco OpenDNS has a cache check page. All three are linked from the Speed it up tab.
How the check works
LookupOwl asks the domain's own nameserver, with no cache in between, to get the baseline. At the same time it sends the same question to the 48 resolvers, 16 at a time, and gives each two seconds to answer. A resolver that fails becomes a row in the table, not an error. If the whole check hits its limit of about eight seconds, you get whatever has finished, marked incomplete. Results are cached for up to two minutes, so repeat checks stay fresh without hammering anyone. Fresh checks of any one domain are limited to 30 a minute across all callers, so the tool cannot be used to flood someone's nameservers.
Background: how DNS propagation works. Standards: RFC 1034 and RFC 1035 (resolution and caching), RFC 2308 (negative caching), RFC 8767 (serving stale data) and RFC 9499 (terminology).
Questions people ask
How long does DNS propagation take?
Usually minutes to a few hours: as long as the old record's TTL. If the old TTL was 300 seconds, expect about five minutes, and if it was a day, plan for a day. Changing nameservers is the slow case and can take up to 48 hours.
Why do different locations show different results?
Each resolver has its own cache, filled at different times, so in the hours after a change some hold the new value and others the old one. Some answers also depend on location by design, as with CDNs and geo-DNS, and that is not a propagation problem.
Can I speed up DNS propagation?
Not for caches you don't control, but you can prepare. Lower the TTL a day or two before a planned change, make the change, then raise the TTL again. Afterwards, flush your own device's DNS cache and use the purge pages of the big public resolvers, which are linked from the result.
Do I have to wait for 100 percent?
No. Once the nameserver returns the right value and the resolvers your users rely on have updated, you can carry on. Long-tail resolvers with large TTLs will catch up on their own, and a few of the 48 may time out on any given run.
Why is my email still going to the old server?
Sending mail servers and their resolvers cache your MX records until the old TTL runs out, so some mail keeps going to the old server until then. Keep the old mailbox running for at least that long, and check the MX record here to see who has updated.
Does it check both IPv4 and IPv6?
It checks one record type at a time, so run A for IPv4 and AAAA for IPv6 separately. A site can be updated for one and not the other. A site with no AAAA record at all simply does not use IPv6, which is normal.
Is this tool free to use through the API?
Yes. The dns_propagation tool is on the free REST API and the MCP server, with no key needed and fair-use limits. You can call the API once per record type, or ask an assistant in plain language, as in the tip above. See the terms.
Use it from AI, the API or the command line
Every LookupOwl tool is also a free API and an MCP tool, with no key and no account. This one is dns_propagation. Please be kind to the rate limits.
curl "https://lookupowl.com/api/v1/tools/dns-propagation?q=example.com"claude mcp add --transport http lookupowl https://lookupowl.com/mcp