Import, Export and Publishing
Importing
Importing a CSV

Import a CSV of Your Existing Tracking Plan

Import your tracking plan from various sources to get started quickly

💡

Import existing tracking specs into Avo to get started quickly. We know that tracking plans come in all shapes and sizes. If you don't see your format below you can try converting your existing spreadsheet to one of our supported formats or reach out and we'll support you.

What To Import

You can import your event schemas, user properties, group properties, and name mapping.

Import Tracking Plan

Import your existing event schemas, aka tracking plan, to get started quickly.

💡

When importing events that already exist in Avo, the importer will only import new properties, categories and tags for the event. The importer will never archive or delete existing events or properties, or remove properties, categories or tags from existing events. You can also import user properties, group properties, and name mapping.

See supported formats for importing event schemas, aka tracking plans.

Screenshot of the Avo Importer

Import User Properties

💡

User properties are helpful to segment behaviors by current state of users, as opposed to the state at the time of an event trigger. Read about user property use cases and how they work.

See supported formats for importing user properties.

Import Group Properties

💡

Group analytics are important for b2b companies and can be useful in many other cases. Read about group analytics use cases and how it works.

See supported formats for importing group properties.

Import Name Mapping

💡

Different names to different destinations: You might need to send events and properties with different names to different destinations if: a/ You have legacy event structures in specific analytics tools, which you can't change now because you need to data continuity in these tools. b/ Analytics destinations require specific event or property names for some functionality. Read more about name mapping and its use cases.

Reach out if you want to apply a large set of name mappings for event and property names.

Where To Import From

Importing from Amplitude

  1. Export your Tracking Plan from Amplitude. Open up Amplitude Data and then click the download arrow:

Screenshot of Amplitude Data

  1. In the popup, select "Schema of all events and their properties" or "Schema of all user properties" and click download:

Screenshot of the download modal on Amplitude Data

  1. Finally open the Importer from your Avo workspace and drag the downloaded .csv file to the drop zone or click it and select the file:

Screenshot of the Avo Importer selecting files

  1. Review your events and properties and finish the import 🎉

Importing from Mixpanel

  1. Open up Mixpanel Lexicon (in the top right corner of your Mixpanel workspace click Data Management > Lexicon) and then click the export button:

Screenshot of Mixpanel Lexicon

  1. In the popup, select "Events & Properties" and Send CSV. Also check "User Profile Properties" if you want to include user properties:

Screenshot of the download modal on Amplitude Data

  1. Within few minutes you should receive an email from Mixpanel with a CSV export. Open the Importer from your Avo workspace and drag the downloaded .csv file to the drop zone or click it and select the file:

Screenshot of the Avo Importer selecting files

  1. Review your events and properties and finish the import 🎉

Importing from a Google Sheet

Avo supports importing various tracking plan formats. See supported formats for importing tracking plans.

How to import from a Google Sheet

  1. Open the sheet containing your Events and Event Properties. Click File > Download > Comma-separated values (.csv)

Screenshot of the Download CSV button in Google Sheets

  1. Open the Importer from your Avo workspace and drag the downloaded .csv file to the drop zone or click it and select the file:

Screenshot of the Avo Importer selecting files

  1. Review your events and finish the import 🎉

Supported Formats

Following are the spreadsheet formats the Avo Importer currently supports.

We know that tracking plan spreadsheets come in all shapes and sizes. If you don't see your format below you can try converting your existing spreadsheet to one of these formats, by renaming columns etc, or you can reach out to us and we'll get the importing done for you.

Note:

  • The order of the columns in your sheet does not matter
  • There must be a header row in your sheet with the exact column names as described for one of the format below
  • Any additional columns are ignored

You can learn more about common Tracking Plan spreadsheet formats on our blog. (opens in a new tab)

Avo's Ultimate Tracking Plan Template

Screenshot of the Avo ultimate tracking plan spreadsheet template

View example sheet (opens in a new tab)

Required columns

Column NameDescriptionExample value
Event NameThe name of your eventApp Opened
Event DescriptionThe description of your eventSent when the user opens the app
Event CategoryThe category your event belongs to, if anyApp Lifecycle
SourcesThe name of the sources this event should be sent fromiOS, Android, Web
Property NameThe name of a property that should be sentDevice Type
Property DescriptionThe description of the propertyThe type of client user is currently using
Property Value TypeThe type of the propertystring
Is Property Required?True if the property should always be sent with your eventtrue
Is Property Array?True if property should be array of valuesfalse
Property Enumeration OptionsFinite list of all values allowed for the property, if applicableiOS, Android, Web, Desktop, Fire

Optional columns for property bundles

You can create and attach event property bundles to events by including the columns below in your import. View example sheet with property bundles (opens in a new tab)

Column NameDescriptionExample value
Property Bundle NameThe name of the property bundle you'd like to import, defined at the top of your file, followed by the properties you'd like to include in the bundleA/B Testing Properties
Property Bundle DescriptionThe description of the property bundleRequired on all A/B tested events
Event Property Bundle NameThe name of the property bundle you'd like to attach to an event you're importingA/B Testing Properties

Other optional columns

Column NameDescriptionExample value
Property TypeThe type of the property as it is sent to your downstream destinationEvent property, User property, System property
Event TagsThe tags attached to your event (separate multiple tags with ';')Owner:Growth
Pinned ValueThe pinned value of the property on this eventiOS

Amplitude Taxonomy Template

Screenshot of the Amplitude taxonomy spreadsheet template

View example sheet (opens in a new tab)

Required columns

Column NameDescriptionExample value
Event NameThe name of your eventApp Opened
Trigger + Event DescriptionThe description of your event and when it should be sentSent when the user opens the app
Event CategoryThe category your event belongs to, if anyApp Lifecycle
PlatformThe name of the platforms this event should be sent fromiOS, Android, Web
Property NameThe name of a property that should be sent with your eventDevice Type
Property DescriptionThe description of the propertyThe type of client user is currently using
Property TypeControl whether the event should be sent as Event property or User propertyEvent
Sample ValuesList of all values allowed for the property, if applicableiOS, Android, Web, Desktop, Fire

Mixpanel Tracking Plan Template

Screenshot of the Mixpanel tracking plan spreadsheet template

View example sheet (opens in a new tab)

Required columns

Column NameDescriptionExample value
Event NameThe name of your eventApp Opened
Event DefinitionThe definition of your event and when it should be sentSent when the user opens the app
PlatformThe name of the platforms this event should be sent fromiOS, Android, Web
Property NameThe name of a property that should be sent with your eventDevice Type
Property DefinitionThe description of the propertyThe client type
Data TypeThe type of the propertystring
Sample ValuesList of all values allowed for the property, if applicableiOS, Android, Web, Desktop, Fire

Properties Import Format

CSV format for importing event, user and/or system properties.

Note:

  • The order of the columns in your sheet do not matter
  • There must be a header row in your sheet with the exact column names as described for one of the format below
  • Any additional columns are ignored

Required columns

Column NameDescriptionExample valueAllowed values
Property TypeControl whether the property should be sent as Event property, User property or System propertyUserEvent, User, System
Property NameThe name of the propertyDevice Type
Property DescriptionThe description of the propertyThe client type
Property Value TypeThe type of the propertystringstring, int, float, bool, any
Property Value Is ListTrue if property should be array/list of valuesfalsetrue, false
Property RequiredTrue if the property should always be sent with your event, false if sometimes senttruetrue, false
Property Allowed ValuesFinite list of all values allowed for the property, if applicableiOS, Android, Web, Desktop, Fire

Group Property Import Format

CSV format for importing.

Note:

  • The order of the columns in your sheet does not matter
  • There must be a header row in your sheet with the exact column names as described for one of the format below
  • Any additional columns are ignored

Required columns

Column NameDescriptionExample value
Group TypeThe group type (e.g. "Workspace" if you have a Workspace group)Workspace
Property NameThe name of the property as you want it sent to the analytics destinationMember Count
Property DescriptionThe description of the propertyThe number of members of a workspace
Property Value TypeThe type of the propertyint (see supported types
)
Is Property Array?"Y" or "N" for whether this property is an array of property values"Y"
Sent with Events"/" separated list of events with which this group property should be updatedInvite Accepted / Member Removed
Property Enumeration optionsFinite list of all values allowed for the property, if applicableEmail, Phone Number, SSO

Import Methods

You can select from two import methods when importing your tracking plan:

  • Add only: This is the default import method. The importer will only append new items from the imported file to your tracking plan. No destructive changes will be made to existing items in your tracking plan.
  • Add and update: This import method will append new items from the imported file to your tracking plan and update existing items with the same name to match the imported file. Note that this import will not remove any items from your tracking plan.
💡

The Add and Update import method is currently in a close beta. Please reach out to us if you'd like to try it out.

Screenshot of the Avo Importer

Troubleshooting

How do I prevent importing duplicates of my properties?

The importer attempts to merge properties from imported events using the following criteria:

  • The property name matches
  • The property type matches
  • The description matches

If these three criteria are not fulfilled, the importer doesn't merge the properties. The reason we decided to include the description in this criteria is that a property that shares a name and a type, can still have a totally different meaning based on the description, and documenting that difference clearly in the tracking plan is critical to ensure everyone share the same understanding of what the property should contain in different context.

In the case where you have aligned your names and types, but the description is different, you can:

  • If the properties should be merged and you are in a position to reset your tracking plan: Unify the description in your import file, reset the tracking plan , and re-run the import. This will result in the properties being merged on import.
  • If the properties should be merged: Use the "Replace property with..." feature in the context menu of the property modal
  • If the properties should not be merged: Provide unique name and descriptions to better differentiate between these properties in the tracking plan

What's Next?

Now you have a tracking plan in Avo and it's time to learn how to manage it.