Monitor your event data with RudderStack tracking plans.
Tracking plans let you proactively monitor and act on non-compliant event data coming into your RudderStack sources based on predefined plans. This can help you prevent or de-risk situations where any missing or improperly configured event data can break your downstream destinations.
Features
Set rules for track and non-track events (identify, page, screen, and group) that you want to send to downstream destinations. You can use these rules to:
Define which events should pass through, including events with and without properties.
Specify whether a property or attribute is required and assign the data type required to pass that event.
Use the Event Audit API to evaluate your inbound events and metadata and compare them with your tracking plans.
With a robust versioning system, you can iteratively improve your tracking plans and have better control of your data.
Create and manage your tracking plans programmatically using the Tracking plan API.
Quickstart
To start using the tracking plans, follow these steps:
To remove this restriction, upgrade to the Enterprise plan.
(Optional) Use RudderTyper for autocomplete and linting.
Manage tracking plans
To see all the tracking plans associated with your workspace, go to Collect > Tracking Plans. In this view, you get all the tracking plan-related details like name, tracking plan ID, version, and last updated time.
Click a tracking plan to view specific details like the linked sources, their status, and the connected destinations. You can also link or unlink a source from a tracking plan.
Link tracking plan to source
To link a tracking plan to your source, go to your tracking plan in the RudderStack dashboard and click Link a Source.
You can link multiple sources to a tracking plan. However, you can connect a source to only one tracking plan at a given point.
Unlink tracking plan from source
To unlink a tracking plan from your source, go to your tracking plan in the RudderStack dashboard and click the linked source. Then, go to the Tracking Plans tab and click Unlink Tracking Plan.
Alternatively, you can use the Tracking plan API to delete the source-tracking plan connection.
Previously linked tracking plans
To view previously linked tracking plans for a source (in the last 30 days), go to the Tracking Plans tab of that source and scroll down to the Previously Applied in the last 30 days section.
Tracking plan settings
To edit the tracking plan settings for a linked source, go to the Tracking Plans tab and click Edit Settings.
Here, you can define the tracking plan settings for individual event types. Click Save Settings for the changes to take effect.
The settings are explained below:
Drop events with unplanned event names: When toggled on, RudderStack drops all events that do not match the predefined event names in the tracking plan.
Drop events with unplanned event properties: When turned on, RudderStack drops all events that contain properties not matching the list of predefined properties for the specific event.
Drop events with other violations: When toggled on, RudderStack drops all events with violations that include Type Mismatch, Required Fields Missing, and others outlined in the Violation types section.
Propagate errors: When turned on, RudderStack captures the validation errors in the event’s context object and sends them downstream (user transformations, destinations), depending on your use-case. If toggled off, RudderStack drops the event containing the validation errors.
It is recommended to keep this setting toggled on as it helps you assess the performance of your tracking plans.
Drop events with unplanned event properties: When turned on, RudderStack drops all events that contain properties not matching the list of predefined properties for the specific event.
Drop events with other violations: When toggled on, RudderStack drops all events with violations that include Type Mismatch, Required Fields Missing, and others outlined in the Violation types section.
Propagate errors: When turned on, RudderStack captures the validation errors in the event’s context object and sends them downstream (user transformations, destinations), depending on your use-case. If toggled off, RudderStack drops the event containing the validation errors.
It is recommended to keep this setting toggled on as it helps you assess the performance of your tracking plans.
Drop events with unplanned event properties: When turned on, RudderStack drops all events that contain properties not matching the list of predefined properties for the specific event.
Drop events with other violations: When toggled on, RudderStack drops all events with violations that include Type Mismatch, Required Fields Missing, and others outlined in the Violation types section.
Propagate errors: When turned on, RudderStack captures the validation errors in the event’s context object and sends them downstream (user transformations, destinations), depending on your use-case. If toggled off, RudderStack drops the event containing the validation errors.
It is recommended to keep this setting toggled on as it helps you assess the performance of your tracking plans.
Drop events with unplanned event properties: When turned on, RudderStack drops all events that contain properties not matching the list of predefined properties for the specific event.
Drop events with other violations: When toggled on, RudderStack drops all events with violations that include Type Mismatch, Required Fields Missing, and others outlined in the Violation types section.
Propagate errors: When turned on, RudderStack captures the validation errors in the event’s context object and sends them downstream (user transformations, destinations), depending on your use-case. If toggled off, RudderStack drops the event containing the validation errors.
It is recommended to keep this setting toggled on as it helps you assess the performance of your tracking plans.
Drop events with unplanned event properties: When turned on, RudderStack drops all events that contain properties not matching the list of predefined properties for the specific event.
Drop events with other violations: When toggled on, RudderStack drops all events with violations that include Type Mismatch, Required Fields Missing, and others outlined in the Violation types section.
Propagate errors: When turned on, RudderStack captures the validation errors in the event’s context object and sends them downstream (user transformations, destinations), depending on your use-case. If toggled off, RudderStack drops the event containing the validation errors.
It is recommended to keep this setting toggled on as it helps you assess the performance of your tracking plans.
Event structure for using tracking plans
By default, RudderStack applies the tracking plan validation on the supported event types as follows:
context.traits object for identify events.
traits for group events.
properties for track, page, and screen events.
If you have instrumented your identify events such that the user traits are captured in the traits object of the events, make sure you select traits as shown, before creating or updating the tracking plan.
RudderStack gives you complete visibility into the events passing through a tracking plan and details on the tracking plan violations, that is, events that do not comply with the tracking plan rules.
To see these metrics, click the Events tab of the source connected to your tracking plan.
Events ingested
This section shows the tracking plan currently linked to your source and the following details:
Total events: Captures all events that pass through the source.
Events validated: Number of events validated by the tracking plan.
Events with violations: Number of events that do not comply with the tracking plan rules.
Events dropped: Number of events dropped due to tracking plan violations.
You can see these metrics for all tracking plans connected to that source and filter them by version and time period (past one day, seven days, or 30 days).
Event flow
This section gives a graphical overview of all the events ingested per day over the specified period and the number of events with violations.
Event details
Click the Events tab to see all the event-related metrics like:
Event name
Count: Number of events validated by the tracking plan according to filter set in Events ingested.
Last seen: Number of days since the last observed violation.
Click the Violations tab to see the following metrics:
Event name
Event type: Type of event (identify, track, group, page, or screen).
Tracking plans do not validate alias events. If you send any alias events, they are shown in this view and returned as is without validation.
Events validated: Number of events validated by the tracking plan according to filter set in Events ingested.
Events with violations: Number of events that did not comply with the tracking plan rules.
Events dropped: Number of events that were not allowed to flow through.
Last occurred: Date and time of the last observed violation.
You can also click on an event to view the violation type and individual metrics.
Click the View option for more details, like the violation description and sample payload for the violation.
Violation types
Violation type
Description
Unplanned-Event
Event is not defined in the tracking plan.
Required-Missing
Properties defined as Required are missing in the event.
Note: O stands for Optional and R stands for Required.
Datatype-Mismatch
Data type of the event property does not match the Property Type defined in the tracking plan.
Additional-Properties
Occurs if:
Additional Properties field in the tracking plan is set to False.
New event properties are received that are not defined in the tracking plan.
Unknown-Violation
Any other violation.
For more context on the above violation types, see the example tracking plan:
FAQ
Which RudderStack Cloud plans support the tracking plans feature?
The tracking plans feature is supported in the RudderStack Cloud Growth and Enterprise plans.
Does RudderStack propagate the context related to any tracking plan violations?
RudderStack propagates any context related to the tracking plan violations to your destinations. You can use this context in your transformations for filtering or modifying the events before they reach the destination.
This site uses cookies to improve your experience while you navigate through the website. Out of
these
cookies, the cookies that are categorized as necessary are stored on your browser as they are as
essential
for the working of basic functionalities of the website. We also use third-party cookies that
help
us
analyze and understand how you use this website. These cookies will be stored in your browser
only
with
your
consent. You also have the option to opt-out of these cookies. But opting out of some of these
cookies
may
have an effect on your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This
category only includes cookies that ensures basic functionalities and security
features of the website. These cookies do not store any personal information.
This site uses cookies to improve your experience. If you want to
learn more about cookies and why we use them, visit our cookie
policy. We'll assume you're ok with this, but you can opt-out if you wish Cookie Settings.