Of all the DNS questions that reach this site, the phone one causes the most confusion, because a phone has two DNS settings and people change one thinking they’ve changed both.
The two DNS settings on a phone
On Wi-Fi, the phone uses the DNS handed out by that network’s router (or the one you typed by hand in that Wi-Fi’s settings). On mobile data, it uses the carrier’s DNS. They are independent: what you change on your home Wi-Fi doesn’t follow you out the door, and on mobile data there is no manual DNS field, neither on iOS nor on “classic” Android.
That’s why so many people change the DNS, check it at home, see it work, and then keep using the carrier’s on the train without knowing.
Android: “Private DNS” solves the whole thing
Since Android 9 there’s one setting that fixes it entirely: Private DNS. It’s under Settings → Network & internet (or Connections, depending on the maker) → Private DNS. Choose “Private DNS provider hostname” and type a name, not an IP address:
| Provider | Hostname |
|---|---|
| Cloudflare | one.one.one.one |
dns.google | |
| Quad9 | dns.quad9.net |
| AdGuard (blocks ads) | dns.adguard-dns.com |
| Control D (unfiltered) | p0.freedns.controld.com |
That setting has three advantages: it applies to Wi-Fi and data at once, it’s encrypted (DNS over TLS, so the carrier can neither read nor intercept it) and it needs no app. If the field asks for a name and you type 1.1.1.1, it won’t accept it; that’s the most common mistake.
Step-by-step guides with screenshots are in Set up DNS on Android.
iPhone: per Wi-Fi, or with a profile
iOS has no global setting. You have two routes:
For one Wi-Fi only. Settings → Wi-Fi → tap the (i) next to the network → Configure DNS → Manual, remove what’s there and add the primary and secondary. Quick, and fine for your home Wi-Fi, but on mobile data you’ll still be using the carrier’s DNS.
For everything, data included. iOS supports encrypted DNS (DoH or DoT) through a configuration profile. Cloudflare, Quad9, AdGuard and NextDNS each offer one for download on their site; it installs under Settings → General → VPN & Device Management, and from then on the iPhone uses that resolver on every network. The alternative is the provider’s app (the 1.1.1.1 app, for instance), which does the same with an interface.
The steps are in Set up DNS on iPhone and iPad.
Which one to choose
The criteria are the same as on a computer, with one twist: a phone moves between networks, so the resolver that was fastest at home may not be on mobile data.
- Measure from the phone. The DNS speed test runs in the phone’s browser. Run it once on Wi-Fi and once on data; if the order changes, keep the one that wins on data, where latency shows most.
- Unfiltered unless you want filtering. An ad-blocking DNS can break the odd link inside an app or a game’s login. For most people, Cloudflare or Quad9 (which only blocks malware) is the no-surprises choice. If you want ads gone from every app without installing anything, AdGuard is the simplest way.
- Battery isn’t an issue. Encrypted DNS keeps a TLS connection open, but the cost is negligible next to any background app.
From Madrid, with the answer cached, Cloudflare, Quad9, CleanBrowsing and DNS4EU answered in 5 to 6 ms; the full table is in the comparison. From your mobile carrier the order may differ, which is why we keep saying: measure.
What DNS won’t do on a phone
Some of the searches that land here ask for a “US DNS for Android” hoping to see another country’s content. It doesn’t work like that: apps and websites locate you by your IP address, which the carrier assigns, not by the resolver you query. Changing DNS doesn’t change a video platform’s catalogue or unlock apps from another region. That takes a VPN.
What a good DNS does do on a phone: load sites and apps that query many domains faster, avoid carrier DNS that redirects or blocks, and, if you pick a filtering one, strip ads and trackers from every app without installing blockers.
If something stops working
With Private DNS on in Android, some public Wi-Fi networks with a captive portal (hotels, airports) won’t load the login page because they intercept DNS. It’s the one common case: turn Private DNS off for a moment, accept the portal, turn it back on. And if a specific app fails with a filtering resolver, try an unfiltered one before blaming the app.