How-To By Gregor Spielmann, Adasight

Analytics Event Taxonomy: How to Design Yours the Right Way

Your analytics is only as good as the events feeding it. A poorly designed event taxonomy — inconsistent naming, missing properties, unclear definitions — means every analysis starts with data archaeology instead of business questions. This guide covers how to design an event taxonomy that works from day one and holds up as your product and team scale.

🧮 Free tool: Analytics Maturity Assessment — no signup required

Open tool →

Start with your analytics questions, not your product features

The most common mistake in event taxonomy design is building a list of 'everything that happens in the product' rather than starting from the questions you need to answer. Start here: what are the five most important analytics questions your team needs to answer in the next quarter? Map each question to the events and properties required to answer it. This approach ensures your taxonomy is complete for the analyses that matter and avoids the trap of instrumenting hundreds of low-value events that add noise without insight. Most mature product analytics stacks have 50-150 core events — teams with 500+ events usually have a data quality problem, not a data richness advantage.

Choosing a naming convention

Object-Action is the most durable naming convention for product events: the event name describes what object the user interacted with (Report, Dashboard, Experiment, Comment) followed by what action they took (Created, Updated, Deleted, Shared, Exported). Examples: 'Report Created,' 'Dashboard Shared,' 'Experiment Started,' 'Comment Posted.' This convention has several advantages: events sort alphabetically by object, making them easy to find in analytics tools; it's intuitive to read ('something happened to this thing'); and it scales well as the product grows. Avoid: verb-first naming (Clicked Dashboard, Viewed Report) which hides relationships between related events; mixing tenses (user_sign_up vs user_logged_in); and mixing case styles within the same taxonomy.

Defining your global user properties

User properties are characteristics of the user that are attached to every event they fire — you define them once per user, not per event. They're essential for segmentation. Standard global user properties for SaaS: user_id, account_id, plan_tier, signup_date, acquisition_channel, account_size, role (admin/member/viewer), days_since_signup (recalculated dynamically), and any key demographic or firmographic data relevant to your ICP. User properties are where most teams under-invest: if you can't segment any analysis by plan tier or acquisition channel, you're operating with one hand tied behind your back. Build the full user property set before implementing your first event.

Event properties: what to capture and how

Every event should carry the properties needed to answer follow-up questions about that specific action. For 'Report Created': report_type, number_of_metrics, is_shared (boolean), creation_context (which page or workflow it was created from). A useful heuristic: for each event, ask 'if this event spiked 5x next week, what questions would I need to answer to understand why?' The properties needed to answer those questions should be on the event. Common omissions that cause regret: not capturing the user's plan tier or role on every event (makes it impossible to segment by plan without a separate lookup), not capturing a context property that records where in the app an action was taken, and not capturing boolean properties that encode whether an action was a first-time occurrence.

Governance: keeping your taxonomy clean over time

Event taxonomy degrades over time without deliberate governance. The symptoms: event names that no longer match the UI they track (after a product redesign), duplicate events for the same action (added at different times by different engineers), and properties that have inconsistent values (some events send 'true' as a boolean, others send the string 'True'). Governance practices that prevent this: a single owner for the tracking plan (usually a data analyst or analytics engineer), required PR review for any changes to tracked events, a versioned tracking plan document that's updated in sync with code changes, and quarterly audits of event volume (events that have gone to zero usually indicate a broken implementation or a deprecated feature that should be removed from the taxonomy).

Need expert help with growth analytics?

Adasight works with scaling D2C and SaaS companies to build the analytics foundations and experimentation programs that drive measurable growth.

Talk to Adasight →

Frequently asked questions

What is an event taxonomy in analytics?

An event taxonomy is the organized system of event names, property definitions, naming conventions, and documentation that governs how user actions are tracked in your analytics platform. A good taxonomy is consistent (all events follow the same naming pattern), complete (all important user actions are covered), and documented (any analyst can look up what any event means, what properties it carries, and who owns it).

What is the best naming convention for analytics events?

Object-Action in Title Case (e.g., 'Dashboard Created,' 'Report Exported,' 'Experiment Paused') is widely recommended as the most readable and scalable convention for product analytics events. It clearly describes what happened, sorts sensibly alphabetically by object, and scales naturally as the product grows. Avoid mixing naming conventions within the same taxonomy — consistency matters more than which specific convention you choose.

How many events should a SaaS product track?

Most mature SaaS products have between 50 and 150 intentionally defined core events. Fewer than 30 events usually means important user behaviors are not being tracked. More than 300 events is often a sign of instrumentation sprawl — low-value events and duplicate events added over time without taxonomy governance. Quality and consistency of events matters far more than quantity.