How to uninstall Cloudflare WARP on Mac
Turn off the WARP connection and quit the app before removing it. Cloudflare WARP installs from a package that also sets up a root-owned background daemon and command-line tools, so dragging the app to the Trash is not the whole job. This guide covers the official macOS package from Cloudflare; the Homebrew cask cloudflare-warp installs the same package. WARP keeps no documents of yours on disk.
Quit the app
Cloudflare WARP runs from the menu bar with no Dock icon. Click its menu bar icon, turn the connection off, then quit.
Run Cloudflare's uninstall script
Cloudflare's documented removal is a script inside the app bundle. In Terminal, go to /Applications/Cloudflare WARP.app/Contents/Resources and run ./uninstall.sh; it asks for an administrator password. If the WARP client deployed a root certificate on this Mac, the script removes that certificate as well. Cloudflare: Uninstall the client
Remove the app
If the app is still in Applications after the script, move "Cloudflare WARP.app" to the Trash.
Where Cloudflare WARP keeps its data
| Location | What it holds | What Mole does |
|---|---|---|
~/Library/Application Support/com.cloudflare.1dot1dot1dot1.macos |
App state and settings | Listed and selected by default |
~/Library/Caches/com.cloudflare.1dot1dot1dot1.macos, ~/Library/Caches/com.plausiblelabs.crashreporter.data/com.cloudflare.1dot1dot1dot1.macos |
Cache and crash reports | Listed and selected by default |
~/Library/Containers/com.cloudflare.1dot1dot1dot1.macos.loginlauncherapp, ~/Library/Application Scripts/com.cloudflare.1dot1dot1dot1.macos.loginlauncherapp |
The login launcher helper's sandbox folders | Listed and selected by default when the helper is found inside the app |
~/Library/HTTPStorages/com.cloudflare.1dot1dot1dot1.macos*, ~/Library/WebKit/com.cloudflare.1dot1dot1dot1.macos, ~/Library/Preferences/com.cloudflare.1dot1dot1dot1.macos.plist |
Web storage, cookies and preferences | Listed and selected by default |
/Library/LaunchDaemons/com.cloudflare.1dot1dot1dot1.macos.warp.daemon.plist |
The root-owned daemon that runs the tunnel | Listed as a launch item of the app and selected by default; moving it needs administrator authorization |
/usr/local/bin/warp-cli, /usr/local/bin/warp-dex, /usr/local/bin/warp-diag |
Command-line tool links | Not listed; the uninstall script or Homebrew removes them |
~/Library/Logs/Cloudflare |
A Cloudflare-wide log folder | Not listed |
Check the result
pgrep -ilf warp
launchctl list | grep -i cloudflare
ls -l /Library/LaunchDaemons/com.cloudflare.1dot1dot1dot1.macos.warp.daemon.plist /usr/local/bin/warp-cli
No output from pgrep means no WARP process is running. A com.cloudflare line from launchctl list means a WARP job is still loaded in your session; no output means none is. ls -l prints each root-owned item still on disk and reports "No such file or directory" for the ones that are gone.
If you installed it with Homebrew
Mole skips --zap when its list reaches unchecked or shared data, or cannot be fully checked, and still cleans the leftovers you selected.
The cloudflare-warp cask's plain uninstall step unloads the daemon, the login launcher and the updater job, quits the app, forgets the package receipt, and deletes the three /usr/local/bin links. Its zap step runs Cloudflare's uninstall.sh with sudo and trashes the daemon plist plus the ~/Library paths above. Running brew uninstall --cask --zap cloudflare-warp yourself does all of that, whatever you ticked in Mole. Mole never adds --zap for this cask: the stanza contains a script it cannot review and a path outside ~/Library. The rows you selected in Mole still go to the Trash. Homebrew cloudflare-warp cask
To run only the plain step:
brew uninstall --cask cloudflare-warp
What Mole lists
- Application Support, Caches, the crash-reporter cache, HTTPStorages, WebKit and Preferences under
com.cloudflare.1dot1dot1dot1.macosare listed and selected by default. - The login launcher's container and Application Scripts folder are selected by default when Mole finds that helper inside the app.
- The daemon plist in
/Library/LaunchDaemonsis listed as the app's launch item and selected by default; Mole moves it only with administrator authorization. ~/Library/Logs/Cloudflareand the/usr/local/binlinks are not listed.
What this test covered
On September 19, 2026, Cloudflare WARP 2026.7.1376.0 from the official package was placed in Applications, opened, and uninstalled with a Preview build of Mole 1.15 (build 277), with no Homebrew receipt. The leftover scan stayed on "scanning" for more than two minutes before finishing, and the uninstall ran once it had. The app went to the Trash. ~/Library/Logs/Cloudflare was deliberately not collected. The record does not show whether the daemon plist and the command-line links were on disk, and Cloudflare's uninstall.sh was not run.
