cd /news/developer-tools/debloat-brave-browser-on-macos-the-r… · home topics developer-tools article
[ARTICLE · art-44291] src=gist.github.com ↗ pub= topic=developer-tools verified=true sentiment=· neutral

Debloat Brave Browser on macOS — The Right Way

A developer published a guide to debloat Brave Browser on macOS by disabling unwanted features like Brave Wallet, Leo AI, Brave Rewards, and Brave VPN using macOS policy files. The method uses `defaults write` commands for user-level settings or a managed preferences plist for system-level persistence that survives updates. The guide includes verification steps via `brave://policy` and instructions for reverting changes.

read2 min views4 publishedJun 18, 2026

Remove Brave Wallet, Leo AI, Brave Rewards, Brave VPN, and more — cleanly and permanently.

Brave Browser ships with cryptocurrency, AI, VPN, and other features that many users don't need. This guide disables them properly using macOS policy files so they stay gone — even after browser updates.

Two methods:

Method Persistence Complexity
  1. User-Level | Lost on profile reset | Simple |
  2. Managed Preferences | Survives updates | Recommended |

Close Brave completely before applying any changes.

Open Terminal and run:

defaults write com.brave.Browser BraveAIChatEnabled -bool false
defaults write com.brave.Browser BraveLeoEnabled -bool false
defaults write com.brave.Browser BraveChatEnabled -bool false
defaults write com.brave.Browser BraveAIEnabled -bool false

defaults write com.brave.Browser BraveWalletDisabled -bool true
defaults write com.brave.Browser CryptoWalletEnabled -bool false

defaults write com.brave.Browser BraveRewardsDisabled -bool true

defaults write com.brave.Browser BraveVPNDisabled -bool true

Reopen Brave and verify.

This creates a system-level policy file that Brave reads on every launch. It takes precedence over user settings and survives reinstalls.

sudo tee "/Library/Managed Preferences/com.brave.Browser.plist" > /dev/null << 'EOF'
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>BraveAIChatEnabled</key>
    <false/>
    <key>BraveRewardsDisabled</key>
    <true/>
    <key>BraveVPNDisabled</key>
    <true/>
    <key>BraveWalletDisabled</key>
    <true/>
    <key>BraveLeoEnabled</key>
    <false/>
    <key>BraveChatEnabled</key>
    <false/>
    <key>BraveAIEnabled</key>
    <false/>
    <key>CryptoWalletEnabled</key>
    <false/>
</dict>
</plist>
EOF
sudo chmod 644 "/Library/Managed Preferences/com.brave.Browser.plist"
plutil -lint "/Library/Managed Preferences/com.brave.Browser.plist"

You must see: /Library/Managed Preferences/com.brave.Browser.plist: OK

If you see an error, the XML is malformed — check for stray characters.

killall "Brave Browser" 2>/dev/null; open -a "Brave Browser"

Open brave://policy

in the address bar.

Every key you set should appear with status Active and the correct value. If a key is missing, Brave did not read it — recheck the plist syntax.

Add these inside <dict>

to remove even more:

<key>BraveNewsDisabled</key>
<true/>
<key>BraveTalkDisabled</key>
<true/>
<key>SyncDisabled</key>
<true/>
<key>TorDisabled</key>
<true/>
<key>IncognitoModeAvailability</key>
<integer>1</integer>
<key>BraveP3AEnabled</key>
<false/>
<key>BraveStatsPingEnabled</key>
<false/>
<key>BraveWebDiscoveryEnabled</key>
<false/>

.plist

files are XML. Two rules to avoid breaking them:

No XML comments use#

comments.<!-- like this -->

.No trailing text after a closing tag.

If the file is invalid, Brave ignores it silently — no warnings, no errors. Always run plutil -lint

to confirm.

defaults delete com.brave.Browser BraveAIChatEnabled
defaults delete com.brave.Browser BraveLeoEnabled
defaults delete com.brave.Browser BraveChatEnabled
defaults delete com.brave.Browser BraveAIEnabled
defaults delete com.brave.Browser BraveWalletDisabled
defaults delete com.brave.Browser CryptoWalletEnabled
defaults delete com.brave.Browser BraveRewardsDisabled
defaults delete com.brave.Browser BraveVPNDisabled
sudo rm "/Library/Managed Preferences/com.brave.Browser.plist"

Restart Brave after reverting.

Based on hi-one/Debloat-Brave-Browser-MacOS.md with XML syntax corrections and expanded verification. Credit to the original author for the groundwork.

This guide is unofficial. Use at your own risk.

── more in #developer-tools 4 stories · sorted by recency
── more on @brave browser 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/debloat-brave-browse…] indexed:0 read:2min 2026-06-18 ·