To keep data clean on Amplitude, we always recommend setting up a development project in conjunction with your production project; test data should be sent to the development project only. Of course there are times where you need to test your production environment, which consequentially sends internal data into your production project. Because internal user events can falsely inflate your product's metrics, you must block or filter out these events for accurate reporting.
This article will go over different approaches you can take to prevent internal user data from affecting your metrics.
Table of Contents
All internal event data originating from your organization's IP address can be blocked from ingestion. Your project's Govern page has a data filter that will allow you to set up filters that block events with a specified IP address.
Navigate to Govern > select the project > Advanced tab > 'Add a data filter' on the right
Note: You must be a Manager or Admin of your organization in order to add a data filter.
Once you have this filter setup, all events sent from your list of blacklisted IP addresses will be dropped upon ingestion.
Important: This filter will NOT work if you've modified Amplitude's SDK configurations to prevent the collection of IP addresses. This filter will only drop events that have a collected IP address string matching IPs you've blocked.
Filtering out Users
Internal user events can always be segmented out with the right module of any Amplitude chart. To remove your internal users, you can simply segment out users by User ID, Device ID, Amplitude ID, IP Address, or identifiable user property (e.g. username, email).
Saving User Segments (Saved Segments)
User segments can be easily saved and pinned to your charts so that you don't need to spend time recreating the same filters. When you set a saved segment as your default, all new charts (with user filters) created via the "Create Chart" or "New" button will have the default segment automatically applied. The applied filter will then be visible on your chart.
Maintaining User Lists
Your list of internal users can change overtime, and maintaining this list can be time consuming if your users do not share a common user attribute. In these cases, you can take advantage of our Behavioral Cohorts feature (Scholarship, Growth, and Enterprise plan) and import a cohort of internal users (User IDs or Amplitude IDs) to block on Amplitude.
This cohort can be applied to charts in a similar fashion to user properties. Once you've created a user segment that excludes your internal cohort, please save/pin the segment for easy access.
Behavioral Cohorts can also be updated programmatically so that your cohort of internal users can be easily maintained. Please check out the Behavioral Cohorts API for more details!