Skip to main content
Tell is designed to be privacy-friendly out of the box. It collects no personal information by default, uses no cookies, and gives you full control over your data because it runs on your infrastructure.

Privacy by default

No cookies. Tell identifies visitors with random device UUIDs generated by the SDK. No cookie banner needed. No PII collected. Events and sessions use anonymous device IDs — not emails, names, or IP addresses. You choose what properties to send. Self-hosted. Your data stays on your servers. Nothing is sent to third parties. This makes Tell compliant with GDPR and CCPA without additional configuration.

PII redaction

If your events or logs contain personal information (emails in log messages, IPs in error traces), the redact transform scrubs them before data reaches storage. Tell includes 11 built-in PII patterns:
PatternMatches
emailEmail addresses
phonePhone numbers (E.164 and common formats)
credit_card13-19 digit card numbers
ssn_usUS Social Security Numbers
cpr_dkDanish CPR numbers
nino_ukUK National Insurance Numbers
bsn_nlDutch BSN numbers
ipv4IPv4 addresses
ipv6IPv6 addresses
passportPassport numbers
ibanInternational Bank Account Numbers
Redact mode replaces matches with [REDACTED]. Hash mode replaces them with a deterministic pseudonym (e.g., usr_7Hx9KmPqR2sT) so you can still correlate records without exposing the original value.
[[routing.rules.transformers]]
type = "redact"
strategy = "hash"
hash_key = "your-workspace-secret"
patterns = ["email", "phone", "ipv4"]
For targeted redaction on specific fields (faster than scanning everything):
[[routing.rules.transformers]]
type = "redact"
strategy = "hash"
hash_key = "your-workspace-secret"

[[routing.rules.transformers.fields]]
path = "user.email"
pattern = "email"

[[routing.rules.transformers.fields]]
path = "client_ip"
pattern = "ipv4"
strategy = "redact"
You can also define custom patterns for internal identifiers like employee IDs. See Transforms for the full redact transform reference.

Audit logging

Tell records 40 typed audit actions across authentication, data access, workspace management, and admin operations. Every action includes who did it, what they did, whether it succeeded, and from which source (API, CLI, MCP, or public link).

What’s audited

CategoryActions
AuthenticationLogin, logout, failed login, token refresh, API key create/revoke
BoardsCreate, update, delete, run, share
SharingCreate link, revoke link, public access
Data queriesSQL query execution, query denied, query timeout
WorkspaceAdd/remove member, role change, settings update
InvitationsCreate, cancel, accept
Saved metricsCreate, update, delete
SegmentsCreate, update, delete
MCPAuth failed, session create
AdminConfig change, setup, user create/update/delete

Outcomes

Each audit event records an outcome:
  • Success — action completed normally
  • Denied — permission check failed
  • Failed — runtime error
  • Blocked — rate limited or timed out

Sensitive actions

Some actions are classified as sensitive and should always be logged regardless of log level filtering. These include failed logins, API key operations, SQL queries, membership changes, and all admin operations.

Enabling audit logs

Audit logging is enabled on the API server. Events are emitted as structured log entries with target audit, so they flow through your existing log infrastructure. Filter for target: "audit" to route them to a SIEM, log aggregator, or dedicated file.

Product telemetry

Tell collects anonymous usage telemetry to understand how the product is used. It’s enabled by default and designed to be transparent — you can inspect exactly what’s sent before deciding to keep it on. No PII. The install ID is a SHA256 hash derived from your hostname. It can’t be reversed to identify you. No IP addresses, hostnames, or user data are included.

What’s collected

CategoryData
DeploymentAnonymous install ID, Tell version, OS, architecture, CPU cores, memory
ConfigurationWhich source/sink/connector/transformer types are enabled (names only, not values)
RuntimeMessages processed, bytes processed, uptime, error count, active connections
Feature usageWhich features have been used: tail, query, TUI, boards count, API keys count, workspaces count
Telemetry is sent once per week via TCP to t.tell.rs:50000.

Inspect the payload

See exactly what would be sent:
tell telemetry show
tell telemetry show --json

Opt out

[telemetry]
enabled = false

Configuration

FieldDefaultDescription
enabledtrueSet false to disable all telemetry
interval"7d"Reporting interval ("1d", "7d", "30d")

Rate limiting

Tell rate-limits sensitive endpoints to prevent abuse:
Endpoint typeLimit
Auth (login, token)10 req/min
Data queries (SQL)30 req/min
Public shares60 req/min