You just moved your website to a new host. The migration finished, your developer says everything is live — but when you open your site, you still see the old one. Meanwhile your friend, on a different network, sees the new site perfectly. Nothing is broken. Your computer is simply remembering the old address, and it needs to be told to forget it. That telling-it-to-forget is called flushing your DNS.
In this guide you'll learn exactly what flushing your DNS does (and what it doesn't), the five situations where it actually fixes things, the exact commands for Windows, macOS, Linux, Chrome, and Firefox — and how to verify the new address is really live. If you want to check what the rest of the internet currently sees for your domain, Nomlen's free DNS checker shows your records from multiple angles in seconds.
Your device keeps a phone book — that's the DNS cache
Every time you visit a website, your device has to translate the human-readable name (nomlen.com) into an IP address (the number computers actually connect to). That translation is DNS — the Domain Name System, defined back in 1987 in RFC 1035. Looking up the address takes time, so your operating system keeps a local copy of recent answers: the DNS resolver cache.
Each cached answer comes with a time-to-live (TTL) set by the domain owner — commonly five minutes for agile setups, an hour for typical sites, or a day for records that rarely change. Until that timer expires, your device trusts its memory instead of asking again. This caching is what makes browsing fast: repeat visits skip the lookup entirely.
The problem is that the phone book can go stale. When a domain's DNS records change — the site moves to a new host, the owner switches to Cloudflare, a record gets deleted — your device may keep dialing the old number until its cached entry expires. Flushing the DNS cache deletes all those stored answers at once, forcing your device to ask fresh for everything.
What flushing your DNS actually does
Flushing clears the local resolver cache on your device. In practical terms:
- Deletes all cached DNS answers. Every domain-to-IP mapping your OS stored — good and bad — is wiped in one action.
- Forces fresh lookups. The next time you visit any site, your device queries your configured DNS resolver (usually your ISP's, or a public one like Cloudflare's 1.1.1.1 or Google's 8.8.8.8) for a current answer.
- Picks up DNS changes immediately. If a domain moved to a new IP an hour ago and your cache still holds yesterday's entry, flushing is the fastest way to get the new address — no waiting for the TTL to expire.
- Clears poisoned or corrupted entries. Malware, captive Wi-Fi portals, and misbehaving routers can inject wrong answers into your cache; flushing removes them.
- Fixes "can't be reached" errors caused by stale data. Chrome's
DNS_PROBE_FINISHED_NXDOMAINerror — "this site can't be reached" — is frequently a stale or bad cached record, and a flush plus a browser-level cache clear is the textbook fix.
What flushing your DNS does NOT do
Flushing is narrowly scoped, and half the confusion around it comes from expecting more than it delivers. Here's the honest breakdown:
Expectation | Reality |
|---|---|
It will make my internet faster | No. Immediately after a flush, browsing is briefly slower — every lookup has to happen from scratch until the cache rebuilds. Flushing is a troubleshooting tool, not a speed hack. |
It clears my browsing history and cookies | No. The DNS cache is separate from your browser's history, cookies, and cached files. Use your browser's "clear browsing data" for those. |
It changes my IP address | No. Your public IP is assigned by your ISP or network. Flushing DNS touches only name resolution on your device. |
It fixes the website for everyone | No. It fixes name resolution on your device only. If the server is down or the DNS records are wrong at the source, everyone still sees the problem. |
It protects me from tracking | No. A fresh lookup still goes to your configured resolver, which still sees every query. Privacy comes from encrypted DNS (DoH/DoT) or a VPN, not from flushing. |
It will fix a site that's down | Only if the "down" is stale data on your end. If the site's server or DNS is genuinely broken, flushing changes nothing — check the records with a DNS checker first. |
5 times you should actually flush your DNS
- After a site migration or DNS change. You moved hosts, pointed the domain at new name servers, or added a record — and your device still resolves the old address. Flush and reload instead of waiting out the TTL.
- "Site can't be reached" errors on one device only. If your phone loads a site but your laptop shows
DNS_PROBE_FINISHED_NXDOMAIN, the laptop's cache is the prime suspect. - After switching networks or VPNs. Moving from office Wi-Fi to home, or connecting/disconnecting a VPN, can leave answers cached from the old network's resolver. A flush forces re-resolution on the new path.
- After malware cleanup or a sketchy public Wi-Fi session. Some malware and rogue hotspots poison the local cache to redirect banking and email domains. Flushing is standard cleanup hygiene — alongside, not instead of, a real malware scan.
- When testing DNS changes you're deploying. Developers and site owners verifying a new A record or a Cloudflare cutover flush between checks so they're testing the live answer, not yesterday's memory.
How to flush DNS on any device (exact commands)
The commands differ by operating system, and the old ones stop working as OS versions change — these are the current ones:
Windows 10 / 11
Open Command Prompt as Administrator (right-click → Run as administrator), then run:
ipconfig /flushdns
You should see "Successfully flushed the DNS Resolver Cache." Without admin rights the command fails — that's the most common reason it "doesn't work" on Windows.
macOS (Ventura, Sonoma, Sequoia)
Open Terminal and run both commands:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
The first clears the cache; the second restarts the mDNSResponder service so the flush takes effect. (On very old macOS versions the commands differ — Apple has changed this several times — but the pair above is correct for every release from Mojave through Sequoia.)
Linux (Ubuntu and most systemd distributions)
sudo resolvectl flush-caches
On older Ubuntu releases the command was sudo systemd-resolve --flush-caches. Verify with resolvectl statistics — the cache size should read zero.
Google Chrome
Chrome keeps its own DNS cache separate from the OS. Type chrome://net-internals/#dns in the address bar and click "Clear host cache." This is essential: flushing the OS cache while Chrome still holds its own copy is a classic reason the "fix" appears not to work.
Firefox
Go to about:networking#dns and click "Clear DNS Cache." Like Chrome, Firefox maintains an internal cache independent of the operating system.
iPhone / Android
Mobile operating systems don't expose a flush command. The reliable equivalent is toggling Airplane Mode on and off — this restarts the network stack and drops the cached entries. A full restart works too.
Flushing vs changing DNS servers: which one do you need?
People often conflate two different fixes. Flushing clears your device's memory; switching DNS servers changes who you ask. They solve different problems:
Flush local DNS cache | Switch to a public DNS resolver | Just wait | |
|---|---|---|---|
What it fixes | Stale or corrupted entries on your device | Slow, hijacked, or heavily-cached ISP resolver | Nothing actively — time passes |
Speed | Instant | Instant (change in network settings) | Minutes to 48 hours, depending on TTLs |
Example resolvers | — | Cloudflare 1.1.1.1 (launched April 2018), Google 8.8.8.8 (launched December 2009), Quad9 9.9.9.9 | — |
Use when | One device shows old/wrong data; after network or VPN changes | Your ISP's resolver is slow or returns wrong answers for everyone on your network | The change is fresh and you can afford to wait out the TTL |
Limitation | Does nothing if the resolver itself serves stale data | Doesn't help if the authoritative records are wrong at the source | Slowest option; some ISP resolvers ignore short TTLs and cache longer anyway |
A useful diagnostic sequence: flush first. If the stale data persists, switch your resolver to 1.1.1.1 temporarily and check again. If it's still stale, the problem is at the source — the domain's authoritative records — and no amount of local action will fix it. That's when you check what the world actually sees.
After flushing: verify the new DNS is really live
Here's the step most guides skip: flushing only helps if the new answer is correct. Before and after you flush, verify the domain's actual records with an independent lookup. Nomlen's free DNS checker shows A, AAAA, CNAME, MX, TXT, and NS records as resolvers around the world see them — so you can confirm the migration published the right IP before you blame your cache. And if you're investigating a "taken" domain rather than your own, a WHOIS lookup reveals the registrar, expiry date, and status codes — our guide on what WHOIS is shows how to read them like a pro.
The bottom line
Flushing your DNS does exactly one thing: it deletes your device's stored name-to-address answers and forces fresh lookups. That's a small action, but it's the correct fix for stale records after migrations, per-device "can't be reached" errors, post-VPN weirdness, and cache poisoning cleanup. It is not a speed boost, a privacy tool, or a fix for a genuinely down site. Flush with the right command for your OS, clear the browser's internal cache too (chrome://net-internals/#dns is the one people forget), and verify the authoritative records with a DNS checker so you're solving the real problem — not just emptying a cache that refills with the same wrong answer.
Frequently asked questions
What does flushing DNS do in simple terms?
It deletes the list of website addresses your device has memorized, forcing it to look up fresh addresses. Use it when a site has moved or changed and your device still shows the old version.
Is it safe to flush DNS?
Yes — completely safe. It deletes only temporary cached lookups; nothing personal is stored there, and the cache rebuilds itself automatically as you browse. You can't break anything by flushing.
Will flushing DNS make my internet faster?
No. The opposite, briefly: right after a flush, every site needs a fresh lookup, so the first visits are marginally slower. The cache exists to speed things up. Flush to fix stale data, not to gain speed.
How often should I flush my DNS?
Only when troubleshooting — there's no maintenance schedule for it. If you find yourself flushing regularly to reach the same sites, the real problem is your DNS resolver; switching to a reliable public resolver like 1.1.1.1 or 8.8.8.8 fixes it permanently.
Does flushing DNS clear browser history or cookies?
No. The OS resolver cache is entirely separate from browser history, cookies, passwords, and cached files. Flushing touches none of those — clear them from your browser's privacy settings if that's what you want.
Why does the old site still show after I flushed?
Three usual suspects: (1) your browser's own internal DNS cache — clear it at chrome://net-internals/#dns or about:networking#dns; (2) your router or ISP resolver is caching the old record — try a public resolver; (3) the authoritative DNS records themselves are still wrong — verify with a DNS checker.
What's the difference between flushing DNS and renewing my IP?
Flushing DNS clears cached name lookups (ipconfig /flushdns); renewing your IP releases and re-requests your network address (ipconfig /release then /renew). They're independent operations that fix different classes of network problems.
Do I need to flush DNS on my phone too?
If the stale data is on your phone, yes — but phones have no flush command. Toggle Airplane Mode on and off (or restart the phone) to drop the mobile resolver cache.
Try it: Waiting on a DNS change? The DNS propagation checker shows whether it has reached resolvers around the world yet.




