Project-level telemetry aggregation
Group anonymous usage events from one application without sending its project name directly.
Better Auth · Const
The anonymous identifier is a non-reversible hash derived from the project’s package.json name and optionally its baseURL. Better Auth uses it to de-duplicate telemetry events per project without identifying users.
Better Auth creates an anonymous identifier as a non-reversible hash derived from the project’s package.json name and, optionally, its baseURL. It uses this value to de-duplicate telemetry events by project without identifying the user.
anonymous identifier: hash(package.json.name, baseURL?)A non-reversible project-derived hash used to de-duplicate telemetry events.
import { betterAuth } from "better-auth"
import { getTelemetryAuthConfig } from "better-auth/telemetry"
export const auth = betterAuth({
telemetry: {
enabled: true,
authConfig: getTelemetryAuthConfig(),
},
})Enables telemetry; Better Auth derives the project’s anonymous identifier from the package name and optional base URL.
Group anonymous usage events from one application without sending its project name directly.
Distinguish repeated events from separate applications while keeping the collected value non-reversible.
Provide aggregate usage data for product and roadmap decisions without user identification.
The anonymous identifier is a non-reversible hash derived from the project’s package.json name and optionally its baseURL. It allows Better Auth to de-duplicate events per project without knowing the user.
Follow-up: Why use a hash instead of sending the project name? A hash avoids directly exposing the project identifier while preserving stable grouping for telemetry.
It is used for aggregate telemetry grouping, specifically to de-duplicate events from the same project. The documentation describes the collected data as anonymous and intended only for aggregate insights.
Follow-up: What should telemetry avoid collecting? It should exclude credentials, tokens, database URLs, and other sensitive authentication data.
Telemetry is optional and disabled by default, so an application must enable collection before this identifier is reported. Better Auth also sends a reduced, redacted configuration snapshot rather than the full authentication configuration.
Follow-up: Why is a redacted snapshot preferable? It provides useful configuration context while limiting exposure of sensitive or unnecessary values.
getTelemetryAuthConfigtelemetrybaseURLpackage.json