[GH-ISSUE #5496] [BUG]: AnythingLLM still attempts connecting to PostHog even after disabling telemetry #5125

Closed
opened 2026-06-05 14:52:09 -04:00 by yindo · 2 comments
Owner

Originally created by @tredondo on GitHub (Apr 24, 2026).
Original GitHub issue: https://github.com/Mintplex-Labs/anything-llm/issues/5496

How are you running AnythingLLM?

AnythingLLM desktop app

What happened?

Excited to find a privacy-focused LLM front-end, I've just toggled off the Telemetry setting. One second later, my firewall intercepted a connection to PostHog:

Image

Are there known steps to reproduce?

  1. Run a firewall
  2. Notice the dozens of connections to PostHog (at least during setup)
  3. Go to Privacy & Data
  4. Toggle OFF "Anonymous Telemetry Enabled"

LLM Provider & Model (if applicable)

No response

Embedder Provider & Model (if applicable)

No response

Originally created by @tredondo on GitHub (Apr 24, 2026). Original GitHub issue: https://github.com/Mintplex-Labs/anything-llm/issues/5496 ### How are you running AnythingLLM? AnythingLLM desktop app ### What happened? Excited to find a privacy-focused LLM front-end, I've just toggled off the Telemetry setting. One second later, my firewall intercepted a connection to PostHog: <img width="1304" height="523" alt="Image" src="https://github.com/user-attachments/assets/89dfbd97-6258-477c-b896-bf06b673c129" /> ### Are there known steps to reproduce? 1. Run a firewall 2. Notice the dozens of connections to PostHog (at least during setup) 3. Go to Privacy & Data 4. Toggle OFF "Anonymous Telemetry Enabled" ### LLM Provider & Model (if applicable) _No response_ ### Embedder Provider & Model (if applicable) _No response_
yindo added the possible bug label 2026-06-05 14:52:09 -04:00
yindo closed this issue 2026-06-05 14:52:09 -04:00
Author
Owner

@timothycarambat commented on GitHub (Apr 24, 2026):

Notice the dozens of connections to PostHog (at least during setup)

This is indeed odd. So AnythingLLM uses PostHog in Telemetry but we lazy load this to be 100% not even the lib on import can fire.

Is the UI toggle switch is showing off there is no code path that should be enabling that to load. In fact, we verbose log every event send out in the backend logs (here on Desktop).

If you have this on desktop open the app in terminal to get full logs. If in docker, this is just in the docker logs. You would see something like this

[collector] info: [TikTokenTokenizer] Initialized new TikTokenTokenizer instance.
[collector] info: Collector hot directory and tmp storage wiped!
[collector] info: Document processor app listening on port 8888
Environment variables loaded from .env
[truncated]...

[backend] info: [EncryptionManager] Loaded existing key & salt for encrypting arbitrary data.
[backend] info: [TokenManager] Initialized new TokenManager instance for model: gpt-3.5-turbo
[backend] info: prisma:info Starting a sqlite pool with 33 connections.

# Here is the bootup log - it will also show a DISABLED alert is DISABLE_TELEMETRY="false"
[backend] info: [TELEMETRY ENABLED] Anonymous Telemetry enabled. Telemetry helps Mintplex Labs Inc improve AnythingLLM.

# Output of real telem (all are logged)
[backend] info: [TELEMETRY SENT] {"event":"server_boot","distinctId":"2c066edb-bf3f-4805-ad9a-ead4dc772f83","properties":{"commit":"--","runtime":"docker"}}
<!-- gh-comment-id:4316925959 --> @timothycarambat commented on GitHub (Apr 24, 2026): > Notice the dozens of connections to PostHog (at least during setup) This is indeed odd. So AnythingLLM uses PostHog in [Telemetry](https://github.com/Mintplex-Labs/anything-llm/blob/master/server/models/telemetry.js#L50) but we lazy load this to be 100% not even the lib on import can fire. Is the UI toggle switch is showing off there is **no code path** that should be enabling that to load. In fact, we verbose log every event send out in the `backend` logs (here on [Desktop](https://docs.anythingllm.com/installation-desktop/storage)). If you have this on desktop open the app in terminal to get full logs. If in docker, this is just in the docker logs. You would see something like this ```bash [collector] info: [TikTokenTokenizer] Initialized new TikTokenTokenizer instance. [collector] info: Collector hot directory and tmp storage wiped! [collector] info: Document processor app listening on port 8888 Environment variables loaded from .env [truncated]... [backend] info: [EncryptionManager] Loaded existing key & salt for encrypting arbitrary data. [backend] info: [TokenManager] Initialized new TokenManager instance for model: gpt-3.5-turbo [backend] info: prisma:info Starting a sqlite pool with 33 connections. # Here is the bootup log - it will also show a DISABLED alert is DISABLE_TELEMETRY="false" [backend] info: [TELEMETRY ENABLED] Anonymous Telemetry enabled. Telemetry helps Mintplex Labs Inc improve AnythingLLM. # Output of real telem (all are logged) [backend] info: [TELEMETRY SENT] {"event":"server_boot","distinctId":"2c066edb-bf3f-4805-ad9a-ead4dc772f83","properties":{"commit":"--","runtime":"docker"}}
Author
Owner

@timothycarambat commented on GitHub (Apr 24, 2026):

Also it not out of the realm of possibility that this is not ours and somewhere in this stack is something also using PH and trying to send out a ping - in which case tracing that is something we should do to stop it out so the whole stack is silent and controlled via a single preference

<!-- gh-comment-id:4316932394 --> @timothycarambat commented on GitHub (Apr 24, 2026): Also it not out of the realm of possibility that this is not ours and somewhere in this stack is something also using PH and trying to send out a ping - in which case tracing that is something we should do to stop it out so the whole stack is silent and controlled via a single preference
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Mintplex-Labs/anything-llm#5125