BlockMyself
Accountability

Make the record complete.

Blocking decides what you can reach. Accountability decides what is visible afterward. Most setups get the first part roughly right and leave the second part resting on browser history, which is the weakest record on the device.

Device-wide logs Held by someone else Silence is a signal

Why browser history is not enough

Plenty of setups are built on one assumption: the filter catches most things, and anything that slips through will show up in browser history for a trusted person to review later. That assumption is weaker than it looks, for three separate reasons.

It only covers one app

Browser history records what the browser rendered. A web page opened inside another app is often drawn by a different component that keeps its own state, so it does not necessarily land in the browser's history list at all.

It is local and reviewable only in person

Someone has to physically pick up the device and look. In practice that happens rarely, and it happens on a schedule the person being held accountable can predict.

Private modes exist to defeat it

Private and incognito windows are designed not to write history. Unless a policy or restriction removes them, the record has a built-in off switch.

The greyed-out Clear History button is not accountability.

On iPhone and iPad, turning on a Web Content restriction disables the bulk Clear History and Website Data option, and a lot of setups treat that as proof the record is preserved. It is not. Deleting individual entries and whole days by swiping is reported to still work, across many iOS versions up to the current one. Private browsing has also been reported as still available on current iOS with the adult-content restriction on, and anything opened there was never written down in the first place.

More basic than either: the restriction is only as strong as the Screen Time passcode, and setting one is an optional step Apple prompts for separately. Without a passcode you do not know, the whole protection is a few taps of Unrestricted, clear, and back again, with nothing asking for a password on the way. If you take one thing from this page, make it that: set the passcode and have someone else hold it, or none of the rest counts.

This page is not about making browsing impossible. It is about making sure that if something happens, it leaves a mark somewhere you do not control. That is a different goal from blocking, and it needs different tools.

The in-app browser gap

This is the specific hole worth understanding, because it explains why history-based accountability quietly under-reports.

Most apps that show you a link do not hand you off to your browser. They open the page inside themselves. Depending on how the app is built, that page may be rendered by the real browser in a slim wrapper, in which case it behaves normally and lands in history, or it may be rendered by an embedded web component that keeps entirely separate state and writes nothing your browser will ever show.

From the outside these look identical. You tap a link, a page opens, there is a small toolbar. Whether that visit is recorded depends on an implementation choice the app developer made, which is not disclosed anywhere in the interface.

What this means for your setup.

If your accountability model is "my partner checks my browser history," you should assume it captures your deliberate browsing and misses an unknown fraction of what passes through other apps. It is a partial record presented as a complete one, which is worse than an obviously partial record, because it produces false confidence on both sides of the relationship.

One piece of good news, so this does not read as worse than it is. On iPhone and iPad, in-app browsing being invisible to history does not mean it is unfiltered. Apple's web content filter runs underneath the apps, in the shared system component that loads pages for all of them, so Screen Time's web restrictions do apply inside other apps even though the visits do not surface in Safari's history. Restriction and visibility are separate problems here, and only the visibility one is broken.

The fix is not to audit every app. It is to stop relying on any single app to keep the record, and move the record somewhere every app has to pass through.

Use DNS logs as the real record

Every app that loads a web page has to look up a domain name first, and that lookup goes through the system resolver. A filtering DNS service with logging turned on therefore sees the domains touched by every app on the device, including in-app browsers, apps making their own requests, and any browser you did not think to check.

Set it up so the record is not yours to edit
  1. Have the trusted person create the account, not you. This is the whole point. If you own the dashboard, you can change retention, disable logging, or clear the log in one click.
  2. Turn on logging, and confirm domain logging specifically is enabled. Some services let you keep logs while stripping the domains, which removes everything useful.
  3. Set retention to three months or longer, so a conversation can cover a period rather than a moment.
  4. Give the device a name in the DNS profile so entries are attributable when more than one device uses the account.
  5. Optionally have the trusted person add you as a read-only viewer. Seeing what is logged, without being able to change it, keeps the arrangement honest rather than surveillant.
  6. Install the profile so it applies on cellular as well as Wi-Fi. A DNS setting attached to one Wi-Fi network records nothing once you leave the house.

Do not run accountability on a free DNS tier with a monthly query cap. When the cap is reached, filtering and logging typically both stop for the remainder of the month, and the log going quiet then means nothing at all. Paying a couple of dollars a month removes a recurring, predictable blind spot.

Be honest about what DNS logs show. They record domains, not pages. The entry says a domain was resolved at a time, not what was on the screen. Repeat visits within a caching window may not generate a new lookup, so counts understate activity. And on Apple devices, iCloud Private Relay encrypts DNS in a way that routes around this entirely unless it is turned off or blocked, which is covered in Mobile data and hotspots.

When you need content, not domains

DNS logs tell you a domain was reached. They cannot tell you what was on the page, and they see nothing at all for content that never involves a new domain lookup, such as an endless feed inside an app you have already allowed.

The tools that close that gap work by reading the screen rather than the network: they capture periodic screenshots, classify them, and send flagged ones to an accountability partner. Because they read rendered pixels, it does not matter which browser, in-app browser, or non-browser app produced the image, and encrypted-DNS or relay features do not affect them.

ApproachWhat it seesWhere it falls short
Filtering DNS with logs Domains from every app, continuously, on Wi-Fi and cellular. No page content. Defeated by Apple's Private Relay unless that is disabled.
Screen-capture accountability app Actual content inside any app, including in-app browsers and feeds. Only while it is running. Some stop after a restart and must be turned back on.
Browser-only monitoring Activity in the one browser it hooks into. Reproduces the exact in-app browser gap this page is about.
Check what a product actually covers on your platform before you rely on it.

Coverage varies sharply between iPhone and Android versions of the same product, and the marketing rarely leads with the limitation. Several well-known accountability apps capture screenshots on Android but are limited to the browser on iPhone. If in-app browsing is your actual concern, a browser-only tool does not address it no matter how good the reports look. Read the vendor's own platform comparison table, which is usually more honest than the sales page, and confirm it says content inside apps rather than websites visited.

Make going quiet mean something

Every layer here can be switched off by the person it applies to, unless the device is supervised. That is not a reason to skip it. It is a reason to agree in advance about what silence means.

  1. The trusted person should know roughly what a normal week looks like in the log. A phone in daily use produces a constant, unmistakable stream.
  2. Agree explicitly that a gap in the record is treated as an event, not as a neutral absence. This is the single most important sentence in the arrangement, because it inverts the incentive: turning the filter off stops being a way to hide and becomes as visible as anything it was hiding.
  3. Remove the innocent explanations in advance. Pay for the tier that does not stop working mid-month, and note travel or a dead battery when it happens, so a real gap is not lost in noise.
  4. Prefer tools that send an alert when monitoring is disabled. A push notification the moment protection stops is worth more than a log nobody opens.
  5. Put a review cadence in writing on the handoff worksheet. A record nobody reads on a schedule is not accountability, it is just storage.
The technology's job is to make circumvention slow, deliberate, and visible. It cannot make it impossible, and a setup sold to you on that promise is misleading you. What actually does the work is a person who notices and is willing to ask about it.

Where to go next