Planning and instrumentation workflow
Amplitude Academy
Fundamentals of Data Taxonomy Design
Plan out the user actions and attributes that you will track as events and properties in Amplitude.
Get startedUsing Amplitude Data for planning helps ensure high-quality data from the start and reduces the need for clean-up later. This article describes the complete workflow in Amplitude Data.
Plan your events
For most companies, the lifecycle starts when launching a product or feature.
Suppose the product team creates a new onboarding flow and wants to see how it performs. The first step is determining what to track in this onboarding flow. What metrics does your feature affect, and what does success look like?
After you identify the events and properties you want to track, create them on the Events page. With Premium plans, you can create a branch to capture all your related changes without impacting anyone else. The Git branch in your code and the branch in Amplitude Data co-exist throughout the process. Engineering can pull analytics code from the Amplitude Data branch into their Git branch throughout the feature's development.
Branches are especially helpful when multiple teams work on the same project, or when teams work on various features simultaneously.
Instrument events
If you haven't already, invite the developers working on the feature to Amplitude Data and ask them to review your proposed plan. If you work in a branch, send them a link to the Activity page of your branch, which shows all the changes you want to make.
Next, engineers implement the updated tracking plan in their branch. They use the Ampli CLI to generate a new tracking library that matches the changes in the Amplitude Data branch (ampli pull -b {branch-name}).
Iterating on your tracking plan with your developers is normal. You might respond to issues or challenges they encounter. Update your plan as your understanding evolves based on their feedback.
Automate instrumentation planning with AI
The Amplitude MCP plugin includes skills that automate event discovery and instrumentation planning directly in your editor. Use amplitude:add-analytics-instrumentation to analyze a PR or branch diff and generate a complete instrumentation plan, including event names, descriptions, categories, and properties, without leaving your editor.
For setup and the full list of available skills, refer to Plan your taxonomy.
Request reviews
If you configured your project for team reviews, you might not have permission to merge directly. Instead, you first create a merge request. A merge request asks stakeholders outside your team to review your changes and give their explicit approval.
After the feature team is happy with the changes (the plan is comprehensive, and engineering implemented it correctly), your branch is ready for review by other stakeholders.
Refresh your changes from main to get your branch up to date and resolve any potential conflicts. You might do this more than once as your developers refresh their branch (with git merge or git rebase).
Analytics changes often affect the broader organization, so getting feedback is essential. Typical stakeholders include the security and legal team, the growth team, and the data team.
Soliciting reviews starts with creating a merge request. When creating a merge request, describe the changes you're proposing and @mention any specific reviewers or approvers you want to include. An admin- or manager-level user can then approve changes.
Merge
After the tracking plan changes are ready and everyone needed to approve has done so, you're ready to merge into main.
When the rest of the feature team is ready to merge in Git, merge your branch in Amplitude Data first. Merging creates a new official version of your tracking plan on main and assigns new versions to all new and changed events.
If your Git branch is already up to date with the merged Amplitude Data branch, you can now merge your Git branch as-is. Run ampli status --is-merged to check that your Ampli code is up to date with the merged Data branch. If the command returns an error, run ampli pull to update the generated library to the latest version.
After ampli status --is-merged succeeds, you can merge the Git branch.
Was this helpful?