I have this exact same problem, and had the exact preset installed. I deleted the preset, restarted BTT, but chatgpt.com keeps reappearing in my activity monitor.
Update: Claude fixed it for me. Claude's words:
SOLVED: chatgpt.com WKWebView stuck running / eating memory, survives deleting the trigger, restarting BTT, even a full reboot
Symptom: https://chatgpt.com kept showing up in Activity Monitor as a WKWebView process (150–280MB+), grouped under BetterTouchTool, even after:
- Deleting every ChatGPT-related trigger I could find in the GUI
- Restarting BTT
- Wiping
~/Library/WebKit/com.hegenberg.BetterTouchTool
- A full computer restart
Root cause: I had an old named trigger with a "Show Floating WebView or HTML Menu" action pointed at chat.openai.com, configured with BTTWebViewPreload: true and BTTWebViewKeepVisibleAndRefreshINT: 1. I'd deleted this trigger and the preset mentioned in previous post — but BTT's "delete" apparently just moves things into an internal Trash state ("BTTBelongsToApp" : "Trash") rather than actually removing them. The trashed trigger's preload/keep-alive webview behavior kept firing anyway, even though it was invisible everywhere in the GUI — not under triggers, not under presets, and I never found an actual Trash section to empty manually.
How I found it: digging through the raw btt_data_store.version_* SQLite file directly was a dead end — the column/table names didn't match anything I could find documented, schema's clearly shifted across versions. What actually worked was BTT's own integrated webserver (Preferences → Advanced → Webserver → enable):
curl "http://127.0.0.1:<port>/get_triggers/" > triggers_dump.json
grep -i -B5 -A25 chatgpt triggers_dump.json
That dumps the full JSON for every trigger/widget you have, trashed or not. The offending one stood out immediately with "BTTBelongsToApp" : "Trash".
The actual fix: re-deleting it through the GUI did nothing (it was already "deleted" — just trashed). What worked was hitting BTT's own delete endpoint directly with that trigger's UUID:
curl "http://127.0.0.1:<port>/delete_trigger/?uuid=<the-trashed-trigger-uuid>"
That fully purged it. chatgpt.com vanished from Activity Monitor immediately, no BTT restart needed.
Notes for anyone else hitting this:.
- If
127.0.0.1 doesn't work for the webserver on your machine, your LAN IP (shown in the same prefs pane) works as a fallback — just know that opens the API to your whole local network, so set a shared secret or switch back to loopback-only once you're done.
Possible bug worth flagging: items sitting in the "Trash" state still seem to get their webview preload/keep-alive config applied at runtime, despite being invisible in every part of the GUI I checked. Trash probably shouldn't be live.