{"version":"2.1.315","anchor":"analytics-events-carry-a-principal-stamp-and-are-filtered-pe","canonical_anchor":"analytics-events-carry-a-principal-stamp-and-are-filtered-pe","heading":"Analytics events are stamped with the account that produced them and filtered by it","tier":"internal","area":"Telemetry","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.315\/e\/analytics-events-carry-a-principal-stamp-and-are-filtered-pe","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.315","markdown":"### Analytics events are stamped with the account that produced them and filtered by it\n\nClaude Code's own analytics events now carry a principal stamp, and events recorded under a different account are no longer sent\n\n**What**\n\nClaude Code sends its own usage analytics to Anthropic. Each event is now tied to the principal, meaning the signed-in identity, that produced it:\n\n- Both ways of recording an event now attach a value worked out from the event name, as `principalStamp` (`principal_stamp` when sent). Events queued before analytics has started keep their stamp.\n\n- When sending, events stamped with a different principal from the current one are dropped. Events are also dropped by HIPAA-style checks, a set of safety events was added, and some internal events are removed when the data is cleaned up.\n\n- The stamp is passed along with every event that is sent.\n\n- In some cases the identity sent with events is built only from the environment variables `CLAUDE_CODE_ACCOUNT_UUID`, `CLAUDE_CODE_ORGANIZATION_UUID`, `CLAUDE_CODE_SUBSCRIPTION_TYPE` and `CLAUDE_CODE_RATE_LIMIT_TIER`, instead of the stored account. The device ID falls back to those account and organization IDs.\n\n**Why**\n\nIf you switch accounts, events recorded under one account are no longer sent as if they came from another, so analytics stay tied to the account that produced them.\n\n- Area: Telemetry\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}