Chrome Not Respecting 'Do Not Track' for Specific Sites
Chrome ignores DNT on certain websites. The fix is usually a flag or extension override. Here's three reasons why and how to stop it.
1. Chrome's DNT Flag Is Disabled or Overridden for That Site
This is the most common reason Chrome ignores DNT on a specific website. Google hides the DNT flag behind a developer setting. It's not in the regular Settings menu. You need to flip a flag.
Step-by-step fix
- Open a new tab in Chrome. Type chrome://flags into the address bar. Hit Enter.
- In the search box at the top, type Do Not Track. You should see a flag called "Enable Do Not Track" or similar (exact wording changes slightly between Chrome versions).
- Click the dropdown next to that flag. Set it to Enabled.
- Chrome will ask you to relaunch. Click Relaunch Now.
- After Chrome restarts, test the site again. Use a tool like dnt-test.appspot.com to verify the header is sent.
What you should see: After relaunch, the test page will show "Do Not Track: 1" in the request headers. If it still shows nothing or "0", move to the next cause.
2. A Privacy Extension Is Blocking or Overwriting the DNT Header
Here's a tricky one. Some ad blockers or privacy extensions (like uBlock Origin, Privacy Badger, Ghostery) can strip or modify the DNT header. They do this because they think they handle tracking better than Chrome does. But this leaves you without DNT on certain sites.
How to check and fix
- Click the puzzle piece icon (Extensions) in Chrome's toolbar.
- Click Manage Extensions.
- Toggle off each privacy extension one at a time. Start with the one you suspect most (usually uBlock Origin or Privacy Badger).
- After disabling each, reload the site that wasn't respecting DNT. Check if the header shows up now (use the same test site from step 1).
- Once you find the culprit, you have two options:
- Disable that extension entirely (if you don't need it).
- Check the extension's settings for a "Do Not Track" option. Some have a toggle to stop interfering with DNT.
Real-world example: A user on Reddit found that uBlock Origin in medium mode was stripping DNT headers on YouTube. Disabling it fixed the issue immediately.
3. Per-Site Content Settings Override the Global DNT Request
Chrome lets you set site-specific permissions for cookies, JavaScript, and tracking. If you've previously told Chrome to allow tracking on a specific site (or blocked it in a way that confuses DNT), that per-site rule can trump the global DNT flag.
Fix: Reset site permissions
- Go to the website where DNT isn't working.
- Click the lock icon (or Info icon) left of the address bar.
- Click Site settings.
- Scroll down to Permissions. Look for anything related to cookies or tracking. Specifically:
- Cookies: should be "Allow" (blocking cookies can break DNT).
- JavaScript: should be "Allow" (disabling it breaks DNT headers).
- If you see a line that says "Do Not Track" or "Tracking protection", set it to "Allow" or "Default".
- If you're not sure, click Reset permissions at the bottom. This clears all custom settings for that site.
- Reload the site and test again.
After resetting, Chrome should send the DNT header for that site. If it still doesn't, the site itself might be ignoring your request (some sites do this intentionally).
Quick-Reference Summary
| Cause | How to Spot It | Fix |
|---|---|---|
| DNT flag disabled | Header missing in dev tools or test site | chrome://flags → enable Do Not Track → relaunch |
| Extension interference | DNT works after disabling extensions | Disable or reconfigure privacy extension |
| Per-site permission override | Other sites work, this one doesn't | Reset site permissions in lock icon menu |
Was this solution helpful?