Short answer: You can point your phone at a DNS service that refuses to resolve adult sites. On Android, open Settings, find Private DNS, choose Private DNS provider hostname, enter family.cloudflare-dns.com (Cloudflare, blocks malware and adult content) or adult-filter-dns.cleanbrowsing.org (CleanBrowsing), and tap Save. It is free and takes a minute. The catch is that you can change it back just as quickly, so the rest of this guide covers the limits and how to add a lock.
When you type a web address, your phone asks a DNS server to turn the name into a number it can connect to. A filtering DNS service answers "no" for sites on its adult blocklist, so the page never loads. Because it works on names rather than page content, it covers every browser and most apps that use the phone's DNS, not just one.
Cloudflare publishes two family DNS options. The one that blocks adult content as well as malware is:
family.cloudflare-dns.com1.1.1.3 and 1.0.0.3The malware-only version (security.cloudflare-dns.com, or 1.1.1.2 and 1.0.0.2) does not block adult content, so avoid it for this purpose.
CleanBrowsing offers several filters. Its Adult Filter blocks adult, pornographic, and explicit sites, enforces SafeSearch on Google and Bing, and blocks malicious and phishing domains. It does not block proxies, VPNs, or mixed-content sites such as Reddit. CleanBrowsing's Family Filter goes further and does block proxy and VPN domains and mixed-content sites.
adult-filter-dns.cleanbrowsing.org185.228.168.10 and 185.228.169.11CleanBrowsing's free tier needs no account but, according to its page, has throttled service, limited filter settings, and no support. Paid plans add configurable settings and support.
Steps follow Google's Android help page. The exact words differ a little between phone makers and Android versions.
https:// in front.Then test it. Open your browser and check that a normal site still loads. If everything stops working, the hostname was probably mistyped, or your network does not allow it: set Private DNS back to Automatic and try again.
Chrome also has its own Use secure DNS setting (Chrome menu, Settings, Privacy and security). Google's page does not say how it interacts with Android's Private DNS, so if a site you expect to be blocked still loads in Chrome, check that setting too.
Be realistic about the limits:
You can also set the same DNS on your home router so every device on the Wi-Fi uses it. Router menus differ widely by brand, so follow your router's manual or the provider's setup guide.
The most useful add-on is friction you cannot remove in one tap. Ask a trusted person to set a screen lock or restriction code that you do not know, or use a blocker that has its own lock. For a wider plan, see: https://mamoriblocker.com/guides/how-to-stop-watching-porn/
What is the best DNS to block porn?
Cloudflare's family DNS (family.cloudflare-dns.com) and CleanBrowsing's Adult Filter are both free options that block adult sites. They differ in extras, such as CleanBrowsing's SafeSearch enforcement. Choose one, test it, and do not stack several.
Does Private DNS slow my phone?
We have not measured it and cannot say. If you notice slowness, try the other provider or switch back to Automatic.
Can I do this on iPhone?
This guide covers Android. On iPhone, the built-in route is the Screen Time web content filter (Limit Adult Websites).
Will it block adult apps?
Only the parts that go through DNS. It filters names, not what is inside an app.
A DNS setting is a good free start, and Mamori is built around the same idea with a lock added.
Honest limits: Android allows only one VPN at a time, so another VPN or blocker that takes the slot can switch Mamori's filter off. For a child's phone, use Screen Time or Family Link as the base layer, since Mamori is built for adults who want to block it for themselves.
There is a 7-day free trial on the monthly and annual plans, plus a one-time lifetime option. No account, no tracking.
Last checked 11 Oct 2026. This guide is general information, not medical advice.