View and Edit Tracking Plans

Manage your tracking plans in the RudderStack dashboard.
Available Plans
  • free
  • starter
  • growth
  • enterprise

This guide walks you through the different tracking plan management options in the RudderStack dashboard.

View tracking plans

To see all the tracking plans associated with your workspace, go to Govern > Tracking Plans.

In this view, you get all the tracking plan-related details like name, description, last modified, tracking plan creation method, connected sources, and the last modified time.

Tracking Plan list

The following table lists the different values for the Creation type column that explain how the tracking plan was created:

Creation typeDescription
MigratedTracking plan was migrated from the old to new format.
TemplateCreated using the default template.
Data CatalogCreated using the data catalog.
Event Audit APICreated from the source events and properties collected via the Event Audit API.
Data Catalog APICreated using the Data Catalog API.
Google sheet/Tracking plan APICreated from the tracking plan spreadsheet.

Tracking plan details

Click on a tracking plan to view the following details:

  • Schema: Displays the event schema for your tracking plan. Click an event to view its properties or the code which you can use to instrument the event in your source platform. You can also add a new event to the tracking plan by clicking the Add event schema button.
Tracking Plan schema tab
  • Sources: Displays the source(s) connected to the tracking plan. You can view the source details, edit source settings, and disconnect the source from tracking plan by clicking the meatballs menu next to the source.
  • Settings: Lets you edit the name of the tracking plan or delete the tracking plan (only if not connected to any source).
  • Activity: Lets you view all the activities performed on the tracking plan like events/properties added, removed, or updated etc. along with the user who performed that action.
Tracking Plan Activity tab

Edit tracking plans

Go to Govern > Tracking Plans to see all the tracking plans in your workspace. Then, select a tracking plan to:

Add a new event schema

The Add event schema button lets you build a new event schema for the tracking plan. You can leverage an existing data catalog event or create a new event from scratch to build the new schema.

Tracking Plan schema tab

Update an existing event schema

Click the meatballs (...) menu next to an event and select Edit event schema.

Edit Event schema

In this view, you can:

Bulk actions on event properties

Make sure to click Save changes for any schema changes to take effect.

warning

Note the following while editing an event schema:

  • You cannot specify or edit the advanced rules for an event property. To do so, you will need to go to the Data Catalog, click the required property, and go to the Advanced rules tab.
  • You cannot change an event type. To do so, you will need to delete the event from the Data Catalog and create a new event.

Event structure for tracking plan validation

By default, RudderStack applies the tracking plan validation on the following objects present within an event:

EventsObject
track / screen / pageproperties
identify / grouptraits

If you are instrumenting your events such that the relevant information is present in a different object, make sure to select the relevant option from the Apply rules to dropdown.

warning

This dropdown is only available for the identify, page, screen and group events.

For track events, RudderStack automatically sets the object to properties by default - this is not editable.

Apply rules setting

Add nested event properties

RudderStack supports defining complex nested properties for an event in your tracking plan - this allows you to validate complex data structures in your inbound events and metadata.

You can add nested event properties while creating a new tracking plan or updating your tracking plan schema:

  1. Click the Add properties button and choose an event property of the Object or Array data type from the right sidebar. Then, click the Add property button.
Add nested property to tracking plan
warning

For nesting properties within a property of Array data type, you must set the Array of setting to Object, as shown:

Array property type
  1. A + sign will appear as you hover over the Object or Array property. Alternatively, you can click the meatballs menu next to property and click Add nested property.
Add nested property to tracking plan
  1. Select the properties to nest from the right sidebar.
Add nested property to tracking plan
  1. You can also enable the Allow extras toggle to allow nested properties beyond those defined in this schema. Disabling this toggle ensures only the specified nested properties are accepted.
Allow extras option in the nested property settings

Note that:

  • You can nest properties only within a property of Object or Array data type.
  • RudderStack supports up to three levels of nested properties within an event property.
  • Removing the parent property from the tracking plan automatically removes all the nested properties.
  • You cannot nest properties within a property having both Array and Object data types. An example of such a property is shown:
Add nested property to tracking plan

Use case for tracking plan created from source

For tracking plans created using the Pull from source option, RudderStack populates the events and properties based on the schema sampled from your incoming events.

You can define up to three levels of nesting within an event property of Object or Array data type.

For example, consider the following event payload:

{
  "type": "track",
  "event": "Product Viewed",

  ...

  "properties": {
    "products": [{
        "name": "Product 1",
        "product_id": "a123"
      },
      {
        "name": "Product 2",
        "product_id": "a124"
      }
    ],
    "filters": {
      "value": {
        "price": {
          "max": 10000
        },
        "rating": {
          "max": 5,
          "votes": {
            "min": 1000
          }
        }
      }
    },
  },
  ...
}

Upon importing the above event in your tracking plan, you will see the following levels of nested properties within the filters and products properties:

Map properties for the tracking plan

RudderStack will not show the property min nested within votes as it exceeds the third level of nesting.

Share event spec pages

RudderStack supports sharing the spec for a tracking plan event across different workspace members for easier collaboration.

  1. Go to Govern > Tracking Plans.
  2. Click the tracking plan and select the event.
  3. Copy the URL and share it with your workspace members.
Shareable event spec

This shareable page contains the following event details:

  • Event name and type

  • Property details like:

    • Property name and data type.
    • Whether it is required or optional, and
    • Details of the nested properties, if any.
info
You will also see this view once you create or update the schema for that tracking plan event.

View source-specific settings

Go to the source connected to the tracking plan to see the following settings in the Tracking Plans tab:

Unlink tracking plan from source
  • Unlink Tracking Plan: Lets you unlink the tracking plan from your source.

  • Previously linked tracking plans: Lets you view the previously linked tracking plans for a source (in the last 30 days).

  • Tracking plan settings: Lets you edit the following tracking plan settings for each event type for the connected source. Once done, click Save Settings for the changes to take effect:

    • 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 (only applicable for track events).
    • 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.


Questions? Contact us by email or on Slack