Advanced event naming rules
To ensure anyone on your team is able to create events that match your naming convention, you can define advanced event naming rules. The advanced rules setting lets you break down your events into its components and define and enforce rules for each component.
Advanced event naming rules have limited availability on Free and Team plans, with full functionality on our Enterprise plan (opens in a new tab). For detailed plan availability, see the plan breakdown below.
Naming conventions typically have four aspects:
- Casing:
snake_case
,camelCase
,Title Case
, etc - Format: the order of the event name component, most commonly an order and an action, but some teams include further context
- Tense: the tense of the action
- List of allowed words: For example we use game and not match and completed and not ended.
Advanced naming rules in Avo will help teams configure rules to guide workspace editors making new or updated event names to…
- adhere to the correct event name structure (e.g object action)
- ensure they use allowed words for certain components of the event name
- prevent them from using blocked words for certain components of the event name
- prevent them from making casing mistakes, even with complex casing conventions.
To define advanced event name rules, click the tracking plan audit icon next to the Tracking Plan item in the sidebar and then click "configure". This will open up a view to configure your tracking plan audit. Under "Event naming conventions", click "set advanced rules".
Event name components
Event name components refer to the different parts that make up an event name. When defining your event naming convention, you add each of these components in order and define the rules that apply to each of them.
When adding a component you have three options:
- Free input
- Allowed values
- Separators
Free input
An event name field where any string value is accepted, with the only constraint being that it adheres to the correct casing.
The casing rule for the free input will serve to prevent users from typing words that don't match the correct casing when creating new events.
Example: A common example of this is an object component – where the object value could represent any feature, flow or ui element the user interacts with.
Allowed values
An event name field where only values from a predefined list of allowed values are accepted.
The allowed values can be added or removed on the advanced rules configuration screen, accessible from the tracking plan audit, or added directly from the event creation modal when creating new events.
When adding allowed words, the casing rule for the component will prevent users from typing words that don't match this casing.
When adding allowed words, the casing rule for the component will prevent users from typing words that don't match this casing. If you need to bypass casing rules for your allowed words, you can set the component casing to "custom" to permit words that deviate from your casing.
Example: A common example of this is an action component – where there is an established terminology for user actions in your product (such as "clicked", "opened" or "viewed" and you want to prevent duplicate events being created for the same action (such as "banner_viewed" and ("banner_seen"))
Blocked values
Similar to allowed words, blocked words enable users to define a list of prohibited words for every event name component. This feature helps prevent the use of specific terms or phrases that may be inconsistent with your naming conventions.
Separators
One or more characters that separate the event name fields. Separators are usually between other event name components, but can also be added before the first event name component or after the last. This is useful for teams that use a hybrid naming convention where the separator between name fields is different from those within
Example: If your naming convention is object_action, the _ (underscore) is a separator.
Guardrails for advanced event name rules
Guardrails guide users to correctly name events when a workspace has advanced name rules in place:
The name input is broken down into its components and each name field is labeled to help users adhere to the correct name structure.
- When typing values into free input fields, they will automatically be written in the correct casing
- For allowed value fields, users can select an allowed value
- Separators are already in place and do not need to be typed manually
Plan-specific features
Free plan
Users on the Free plan have access to two pre-configured event naming Frameworks in their preferred casing:
- "Object Action"
- "Action Object"
Team plan
In addition to the Free plan functionality, Team plan users can:
- Add "Allowed words" for both the "Object" and "Action" event name components
- Add "Blocked words" for both the "Object" and "Action" event name components
Enterprise plan
Enterprise plan users have full access to all advanced event naming rules features, including custom frameworks, separators and additional components.