Skip to content
LookupOwl

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.

A host name like www.example.com works too.

More options

Record type to compare across resolvers.

The value you expect to see after your change, e.g. a new IP address. Resolvers whose answers include it count as current. For address and name records the whole value must match; for TXT and other text records a substring is enough. Witho…

Results for google.com

Checked live lookup2010 ms

JSONCheck again

Propagating

Almost there: 43 of 48 are current

43 of 48 resolvers return the authoritative answer; 3 report no record; 2 failed or did not answer.

Compared with the authoritative answer: 10 smtp.google.com

Roll call

43 current · 3 without a record · 2 silent

Shortest cache time
6s

How long a resolver keeps this answer

Fastest
4ms

AliDNS

Answers seen
  • 10 smtp.google.com43 of 48
  • No record3 of 48
  • No answer2 of 48
Where they are

30 resolvers on the map. 18 anycast resolvers are listed, not pinned: they answer from many places at once.

By region48
Anycast181 not yetthe nearest of many sites, not pinned to a city
ResolverLocationStatusAnswerTTLTime
CloudflareUSCurrent
10 smtp.google.com
210 s17 ms
Cloudflare Families (malware + adult blocking)
Cloudflare
Filters content
USCurrent
10 smtp.google.com
105 s18 ms
Google Public DNS
Google
USCurrent
10 smtp.google.com
116 s6 ms
Quad9 (malware blocking, DNSSEC)
Quad9
Filters content
CHCurrent
10 smtp.google.com
48 s21 ms
Quad9 unfiltered
Quad9
CHNo answer––2,003 ms
Cisco OpenDNSUSCurrent
10 smtp.google.com
300 s30 ms
OpenDNS FamilyShield
Cisco OpenDNS
Filters content
USCurrent
10 smtp.google.com
300 s15 ms
AdGuard DNS (ad and tracker blocking)
AdGuard
Filters content
CYCurrent
10 smtp.google.com
254 s13 ms
AdGuard DNS unfiltered
AdGuard
CYCurrent
10 smtp.google.com
254 s12 ms
CleanBrowsing Security Filter
CleanBrowsing
Filters content
USCurrent
10 smtp.google.com
134 s7 ms
Control D (unfiltered)
Control D
CACurrent
10 smtp.google.com
160 s7 ms
NextDNSUSCurrent
10 smtp.google.com
166 s6 ms
DNS4EU (unfiltered)
DNS4EU (Whalebone)
CZCurrent
10 smtp.google.com
255 s6 ms
DNS.SBDECurrent
10 smtp.google.com
166 s7 ms
Hurricane ElectricUSCurrent
10 smtp.google.com
300 s55 ms
Lumen (Level 3)
Lumen
USCurrent
10 smtp.google.com
300 s18 ms
Vercara UltraDNS Public
Vercara
USCurrent
10 smtp.google.com
255 s28 ms
NTT Global DNS
NTT
USCurrent
10 smtp.google.com
300 s13 ms
North America3All current
ResolverLocationStatusAnswerTTLTime
CIRA Canadian Shield (protected)
CIRA
Filters content
Ottawa, CACurrent
10 smtp.google.com
194 s93 ms
Bell CanadaMontreal, CACurrent
10 smtp.google.com
300 s119 ms
AT&T (PSINet legacy cache)
AT&T
Dallas, USCurrent
10 smtp.google.com
300 s135 ms
Europe8All current
ResolverLocationStatusAnswerTTLTime
Digitalcourage
Digitalcourage e.V.
Bielefeld, DECurrent
10 smtp.google.com
300 s143 ms
Freifunk München
Freie Netze München e.V.
Munich, DECurrent
10 smtp.google.com
6 s10 ms
DNS.WATCHFrankfurt, DECurrent
10 smtp.google.com
54 s45 ms
CZ.NIC Open DNSSEC Validating Resolver
CZ.NIC
Prague, CZCurrent
10 smtp.google.com
115 s11 ms
SwisscomBern, CHCurrent
10 smtp.google.com
236 s9 ms
AtmanWarsaw, PLCurrent
10 smtp.google.com
282 s20 ms
Yandex DNS (basic)
Yandex
Moscow, RUCurrent
10 smtp.google.com
300 s94 ms
TEKNETAntalya, TRCurrent
10 smtp.google.com
300 s114 ms
Asia113 not yet
ResolverLocationStatusAnswerTTLTime
ShecanTehran, IRNo records––85 ms
ElectroTehran, IRNo records––119 ms
Ooredoo Oman (Nawras)
Ooredoo Oman
Muscat, OMCurrent
10 smtp.google.com
300 s243 ms
Bharat Public DNS (NIC)
National Informatics Centre
New Delhi, INCurrent
10 smtp.google.com
300 s150 ms
Mango TeleservicesDhaka, BDNo records––208 ms
National Telecommunication Corporation
NTC
Islamabad, PKCurrent
10 smtp.google.com
114 s161 ms
KT Corporation
KT
Seoul, KRCurrent
10 smtp.google.com
300 s317 ms
114DNSNanjing, CNCurrent
10 smtp.google.com
252 s5 ms
AliDNS
Alibaba Cloud
Hangzhou, CNCurrent
10 smtp.google.com
9 s4 ms
HiNet
Chunghwa Telecom
Taipei, TWCurrent
10 smtp.google.com
300 s210 ms
Telkom IndonesiaJakarta, IDCurrent
10 smtp.google.com
300 s208 ms
Oceania1All current
ResolverLocationStatusAnswerTTLTime
TelstraSydney, AUCurrent
10 smtp.google.com
101 s290 ms
South America31 not yet
ResolverLocationStatusAnswerTTLTime
UOLSão Paulo, BRNo answer––2,000 ms
Colombia Telecomunicaciones
Colombia Telecomunicaciones (Telefónica)
Bogotá, COCurrent
10 smtp.google.com
52 s187 ms
GTD Internet
GTD
Santiago, CLCurrent
10 smtp.google.com
24 s340 ms
Africa4All current
ResolverLocationStatusAnswerTTLTime
MTC Namibia
Mobile Telecommunications Ltd (MTC)
Windhoek, NACurrent
10 smtp.google.com
40 s257 ms
SafaricomNairobi, KECurrent
10 smtp.google.com
300 s402 ms
MTN NigeriaLagos, NGCurrent
10 smtp.google.com
207 s154 ms
ONATEL Burkina Faso
ONATEL
Ouagadougou, BFCurrent
10 smtp.google.com
300 s332 ms
Authoritative1
NameserverAddressAnswerSOA serial
ns1.google.com216.239.32.10
10 smtp.google.com
–
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) · 17 KB
{
  "name": "google.com",
  "type": "MX",
  "reference": {
    "source": "authoritative",
    "answers": [
      "10 smtp.google.com"
    ]
  },
  "authoritative": [
    {
      "ns": "ns1.google.com",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 11,
      "ip": "216.239.32.10",
      "ttl": 300
    }
  ],
  "resolvers": [
    {
      "id": "cloudflare",
      "name": "Cloudflare",
      "provider": "Cloudflare",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 17,
      "ttl": 210
    },
    {
      "id": "cloudflare-families",
      "name": "Cloudflare Families (malware + adult blocking)",
      "provider": "Cloudflare",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 18,
      "filtering": true,
      "ttl": 105
    },
    {
      "id": "google",
      "name": "Google Public DNS",
      "provider": "Google",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 6,
      "ttl": 116
    },
    {
      "id": "quad9",
      "name": "Quad9 (malware blocking, DNSSEC)",
      "provider": "Quad9",
      "country": "CH",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 21,
      "filtering": true,
      "ttl": 48
    },
    {
      "id": "quad9-unfiltered",
      "name": "Quad9 unfiltered",
      "provider": "Quad9",
      "country": "CH",
      "kind": "global",
      "status": "timeout",
      "rcode": "TIMEOUT",
      "answers": [],
      "ms": 2003,
      "error": "no reply within 2000 ms"
    },
    {
      "id": "opendns",
      "name": "Cisco OpenDNS",
      "provider": "Cisco OpenDNS",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 30,
      "ttl": 300
    },
    {
      "id": "opendns-familyshield",
      "name": "OpenDNS FamilyShield",
      "provider": "Cisco OpenDNS",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 15,
      "filtering": true,
      "ttl": 300
    },
    {
      "id": "adguard",
      "name": "AdGuard DNS (ad and tracker blocking)",
      "provider": "AdGuard",
      "country": "CY",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 13,
      "filtering": true,
      "ttl": 254
    },
    {
      "id": "adguard-unfiltered",
      "name": "AdGuard DNS unfiltered",
      "provider": "AdGuard",
      "country": "CY",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 12,
      "ttl": 254
    },
    {
      "id": "cleanbrowsing-security",
      "name": "CleanBrowsing Security Filter",
      "provider": "CleanBrowsing",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 7,
      "filtering": true,
      "ttl": 134
    },
    {
      "id": "controld",
      "name": "Control D (unfiltered)",
      "provider": "Control D",
      "country": "CA",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 7,
      "ttl": 160
    },
    {
      "id": "nextdns",
      "name": "NextDNS",
      "provider": "NextDNS",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 6,
      "ttl": 166
    },
    {
      "id": "dns4eu",
      "name": "DNS4EU (unfiltered)",
      "provider": "DNS4EU (Whalebone)",
      "country": "CZ",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 6,
      "ttl": 255
    },
    {
      "id": "dns-sb",
      "name": "DNS.SB",
      "provider": "DNS.SB",
      "country": "DE",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 7,
      "ttl": 166
    },
    {
      "id": "hurricane-electric",
      "name": "Hurricane Electric",
      "provider": "Hurricane Electric",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 55,
      "ttl": 300
    },
    {
      "id": "lumen",
      "name": "Lumen (Level 3)",
      "provider": "Lumen",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 18,
      "ttl": 300
    },
    {
      "id": "vercara",
      "name": "Vercara UltraDNS Public",
      "provider": "Vercara",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 28,
      "ttl": 255
    },
    {
      "id": "ntt",
      "name": "NTT Global DNS",
      "provider": "NTT",
      "country": "US",
      "kind": "global",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 13,
      "ttl": 300
    },
    {
      "id": "ca-cira-shield",
      "name": "CIRA Canadian Shield (protected)",
      "provider": "CIRA",
      "country": "CA",
      "kind": "regional",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 93,
      "city": "Ottawa",
      "filtering": true,
      "ttl": 194
    },
    {
      "id": "ca-bell",
      "name": "Bell Canada",
      "provider": "Bell Canada",
      "country": "CA",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 119,
      "city": "Montreal",
      "ttl": 300
    },
    {
      "id": "us-att",
      "name": "AT&T (PSINet legacy cache)",
      "provider": "AT&T",
      "country": "US",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 135,
      "city": "Dallas",
      "ttl": 300
    },
    {
      "id": "br-uol",
      "name": "UOL",
      "provider": "UOL",
      "country": "BR",
      "kind": "isp",
      "status": "timeout",
      "rcode": "TIMEOUT",
      "answers": [],
      "ms": 2000,
      "city": "São Paulo",
      "error": "no reply within 2000 ms"
    },
    {
      "id": "co-colombia-telecomunicaciones",
      "name": "Colombia Telecomunicaciones",
      "provider": "Colombia Telecomunicaciones (Telefónica)",
      "country": "CO",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 187,
      "city": "Bogotá",
      "ttl": 52
    },
    {
      "id": "cl-gtd",
      "name": "GTD Internet",
      "provider": "GTD",
      "country": "CL",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 340,
      "city": "Santiago",
      "ttl": 24
    },
    {
      "id": "de-digitalcourage",
      "name": "Digitalcourage",
      "provider": "Digitalcourage e.V.",
      "country": "DE",
      "kind": "regional",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 143,
      "city": "Bielefeld",
      "ttl": 300
    },
    {
      "id": "de-freifunk-muc",
      "name": "Freifunk München",
      "provider": "Freie Netze München e.V.",
      "country": "DE",
      "kind": "regional",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 10,
      "city": "Munich",
      "ttl": 6
    },
    {
      "id": "de-dnswatch",
      "name": "DNS.WATCH",
      "provider": "DNS.WATCH",
      "country": "DE",
      "kind": "regional",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 45,
      "city": "Frankfurt",
      "ttl": 54
    },
    {
      "id": "cz-nic-odvr",
      "name": "CZ.NIC Open DNSSEC Validating Resolver",
      "provider": "CZ.NIC",
      "country": "CZ",
      "kind": "regional",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 11,
      "city": "Prague",
      "ttl": 115
    },
    {
      "id": "ch-swisscom",
      "name": "Swisscom",
      "provider": "Swisscom",
      "country": "CH",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 9,
      "city": "Bern",
      "ttl": 236
    },
    {
      "id": "pl-atman",
      "name": "Atman",
      "provider": "Atman",
      "country": "PL",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 20,
      "city": "Warsaw",
      "ttl": 282
    },
    {
      "id": "na-mtc",
      "name": "MTC Namibia",
      "provider": "Mobile Telecommunications Ltd (MTC)",
      "country": "NA",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 257,
      "city": "Windhoek",
      "ttl": 40
    },
    {
      "id": "ru-yandex",
      "name": "Yandex DNS (basic)",
      "provider": "Yandex",
      "country": "RU",
      "kind": "regional",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 94,
      "city": "Moscow",
      "ttl": 300
    },
    {
      "id": "ir-shecan",
      "name": "Shecan",
      "provider": "Shecan",
      "country": "IR",
      "kind": "regional",
      "status": "empty",
      "rcode": "NOERROR",
      "answers": [],
      "ms": 85,
      "city": "Tehran"
    },
    {
      "id": "ir-electro",
      "name": "Electro",
      "provider": "Electro",
      "country": "IR",
      "kind": "regional",
      "status": "empty",
      "rcode": "NOERROR",
      "answers": [],
      "ms": 119,
      "city": "Tehran"
    },
    {
      "id": "om-ooredoo",
      "name": "Ooredoo Oman (Nawras)",
      "provider": "Ooredoo Oman",
      "country": "OM",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 243,
      "city": "Muscat",
      "ttl": 300
    },
    {
      "id": "tr-teknet",
      "name": "TEKNET",
      "provider": "TEKNET",
      "country": "TR",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 114,
      "city": "Antalya",
      "ttl": 300
    },
    {
      "id": "ke-safaricom",
      "name": "Safaricom",
      "provider": "Safaricom",
      "country": "KE",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 402,
      "city": "Nairobi",
      "ttl": 300
    },
    {
      "id": "ng-mtn",
      "name": "MTN Nigeria",
      "provider": "MTN Nigeria",
      "country": "NG",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 154,
      "city": "Lagos",
      "ttl": 207
    },
    {
      "id": "bf-onatel",
      "name": "ONATEL Burkina Faso",
      "provider": "ONATEL",
      "country": "BF",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 332,
      "city": "Ouagadougou",
      "ttl": 300
    },
    {
      "id": "in-nic-public-dns",
      "name": "Bharat Public DNS (NIC)",
      "provider": "National Informatics Centre",
      "country": "IN",
      "kind": "regional",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 150,
      "city": "New Delhi",
      "ttl": 300
    },
    {
      "id": "bd-mango",
      "name": "Mango Teleservices",
      "provider": "Mango Teleservices",
      "country": "BD",
      "kind": "isp",
      "status": "empty",
      "rcode": "NOERROR",
      "answers": [],
      "ms": 208,
      "city": "Dhaka"
    },
    {
      "id": "pk-ntc",
      "name": "National Telecommunication Corporation",
      "provider": "NTC",
      "country": "PK",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 161,
      "city": "Islamabad",
      "ttl": 114
    },
    {
      "id": "kr-kt",
      "name": "KT Corporation",
      "provider": "KT",
      "country": "KR",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 317,
      "city": "Seoul",
      "ttl": 300
    },
    {
      "id": "cn-114dns",
      "name": "114DNS",
      "provider": "114DNS",
      "country": "CN",
      "kind": "regional",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 5,
      "city": "Nanjing",
      "ttl": 252
    },
    {
      "id": "cn-alidns",
      "name": "AliDNS",
      "provider": "Alibaba Cloud",
      "country": "CN",
      "kind": "regional",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 4,
      "city": "Hangzhou",
      "ttl": 9
    },
    {
      "id": "tw-hinet",
      "name": "HiNet",
      "provider": "Chunghwa Telecom",
      "country": "TW",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 210,
      "city": "Taipei",
      "ttl": 300
    },
    {
      "id": "id-telkom",
      "name": "Telkom Indonesia",
      "provider": "Telkom Indonesia",
      "country": "ID",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 208,
      "city": "Jakarta",
      "ttl": 300
    },
    {
      "id": "au-telstra",
      "name": "Telstra",
      "provider": "Telstra",
      "country": "AU",
      "kind": "isp",
      "status": "current",
      "rcode": "NOERROR",
      "answers": [
        "10 smtp.google.com"
      ],
      "ms": 290,
      "city": "Sydney",
      "ttl": 101
    }
  ],
  "counts": {
    "total": 48,
    "answered": 46,
    "current": 43,
    "stale": 0,
    "empty": 3,
    "nxdomain": 0,
    "servfail": 0,
    "refused": 0,
    "timeout": 2,
    "error": 0
  },
  "consensus": {
    "withData": 43,
    "agreeing": 43,
    "distinctAnswerSets": 1,
    "groups": [
      {
        "answers": [
          "10 smtp.google.com"
        ],
        "resolvers": 43,
        "ids": [
          "cloudflare",
          "cloudflare-families",
          "google",
          "quad9",
          "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",
          "co-colombia-telecomunicaciones",
          "cl-gtd",
          "de-digitalcourage",
          "de-freifunk-muc",
          "de-dnswatch",
          "cz-nic-odvr",
          "ch-swisscom",
          "pl-atman",
          "na-mtc",
          "ru-yandex",
          "om-ooredoo",
          "tr-teknet",
          "ke-safaricom",
          "ng-mtn",
          "bf-onatel",
          "in-nic-public-dns",
          "pk-ntc",
          "kr-kt",
          "cn-114dns",
          "cn-alidns",
          "tw-hinet",
          "id-telkom",
          "au-telstra"
        ],
        "current": true
      }
    ]
  },
  "summary": "43 of 48 resolvers return the authoritative answer; 3 report no record; 2 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": [],
  "minTtl": 6
}

Next step

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

  1. Enter the name and record typeUse the exact hostname people visit, not just the domain. For a website check A or CNAME, for email check MX on the domain, and for a verification token check TXT. The type menu is in More options and starts on A.
  2. Add the value you expect (optional)In More options, enter what you changed the record to: an IP address for A or AAAA, a hostname for CNAME, NS or MX, or any piece of the text for TXT. 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.
  3. 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.
  4. 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.

ResultMeaningWhat to do
CurrentThe resolver gives the same answer as the nameserver, or contains the value you expect.Nothing.
Old answerThe 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 answersLoad 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 recordsThe 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 ErrorThe 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 +nssearch and 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 hosts file 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.
Shell
# 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/#dns

The 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
curl "https://lookupowl.com/api/v1/tools/dns-propagation?q=example.com"
MCP
claude mcp add --transport http lookupowl https://lookupowl.com/mcp