Skip to main content
Version: Next

Telemetry

Version: 0.4.0

DecisionBox collects anonymous usage telemetry to help us understand how the platform is used, prioritize features, and improve reliability. Telemetry is enabled by default and can be disabled with a single environment variable.

Opt Out

Set one of these environment variables to disable telemetry completely:

VariableValueStandard
TELEMETRY_ENABLEDfalseDecisionBox-specific
DO_NOT_TRACK1Console Do Not Track

When disabled, no data is collected and no network requests are made.

Docker Compose

services:
api:
environment:
- TELEMETRY_ENABLED=false
agent:
environment:
- TELEMETRY_ENABLED=false

Kubernetes (Helm)

env:
TELEMETRY_ENABLED: "false"

What Is Collected

All data is anonymous. No PII, query content, table names, credentials, or warehouse data is ever collected.

SignalExamplePurpose
Install IDRandom UUIDCount unique deployments
Version0.4.0Version distribution
Go versiongo1.25.0Runtime compatibility
OS / architecturelinux/amd64Platform support
Deployment methodkubernetesDeployment prioritization
Warehouse providerbigqueryProvider prioritization
LLM providerclaudeLLM support planning
DomaingamingDomain pack prioritization
Duration bucket5-15mPerformance baseline
Count buckets6-20Usage patterns
Error classwarehouse_errorReliability tracking
Feature flagsvector_search: trueFeature adoption

Events

Five event types are sent:

EventWhenKey Properties
server_startedAPI server startsdeployment method, feature flags
server_stoppedAPI server stops(none)
project_createdNew project createdwarehouse/LLM provider, domain
discovery_completedDiscovery finishesprovider types, duration/count buckets
discovery_failedDiscovery failsprovider types, error class

Privacy Guarantees

  • No PII: No IP addresses, hostnames, user names, or emails
  • No content: No SQL queries, insights, recommendations, or warehouse data
  • No identifiers: No project names, table names, or database names
  • Bucketed counts: Exact counts are never sent -- only coarse buckets (1-5, 6-20, etc.)
  • Bucketed durations: Exact durations are never sent -- only buckets (<1m, 1-5m, etc.)
  • Error classes only: Error messages are classified (warehouse_error, timeout) -- the message itself is never sent
  • Silent failures: Telemetry network errors are ignored -- they never affect application behavior

Install ID

A random UUID is generated on first startup and stored in the telemetry_settings MongoDB collection. It persists across container restarts so we can count unique deployments. It is not linked to any user identity and cannot be used to identify you.

Implementation

The telemetry code is fully open source:

Events are batched every 5 minutes and sent via HTTPS. The endpoint URL is configurable via TELEMETRY_ENDPOINT (default: https://telemetry.decisionbox.io/v1/events).

See Also