Docs
Analysis
Insights

Insights

Overview

Insights Overview Image

Insights is a powerful and flexible tool designed to visualize trends and compositions within your data. You can analyze events, cohorts, and user profiles, and display the data in a wide variety of chart types.

Advanced Insights features also allow you to create formulas, compare current data to past data, and generate custom events and properties for deeper analysis.

Use Cases

Here are some of the sample questions you can answer in Insights:

  • Product Analytics
    • How is my WAU changing over time? (unique users)
    • How often are my users getting value? (frequency analysis)
    • What is the distribution of my users across regions / devices etc? (property breakdown)
    • Lifecycle analysis (opens in a new tab)
  • B2B (in this case, a messaging application)
    • How many messages were sent in the US in the past 30 days? (total events, filtered)
    • How many users had a mobile app session yesterday? (unique events)
    • How many messages are sent per session? (formulas)
    • How much revenue was generated on plans purchased in the past year? (property aggregation)
    • How has the power users cohort grown over the past 6 months? (cohort trends)
  • Marketing
    • Which advertising campaigns generate the most checkouts? (property breakdown)

Frequency Analysis

It's important to know what's the natural frequency at which your users use your product and experience the core value proposition of your product--do the majority of your users use your product daily? Weekly? Monthly? A16Z wrote a great article about the Power User Curve (opens in a new tab), and this video (opens in a new tab) shows how you can reproduce that within Mixpanel.

Quick Start

Building a report in Insights takes just a few clicks, and results arrive in seconds. Let's build a simple report together. Continuing the B2B messaging example, imagine you want to answer the following question:

Which cities in the United States have the most users who sent messages via the iOS platform?

Feel free to follow along and create your own report right in our demo project, here (opens in a new tab). To skip ahead and see the final result, click here (opens in a new tab).

Step 1: Choose Events

Events, cohorts, or profiles can be the basic building block of an Insights report. In this case, we want to know about users who sent messages, so within the "Events and Cohorts" section, add the "Send Message" event. At this point, your query should look like this:

Choose Events

Step 2: Choose Count Type

Next to your selected event, you can choose how to count that event. By default, Insights will count Total events, which, as the name implies, will count every occurrence of the event. In this case, we want to know how many users sent messages, so choose "Unique." Unique counts one event per user. At this point, your query should look like this:

Choose Count Type

Step 3: Choose Filters

Filters exclude unwanted data. In this case, we only care about events performed on the iOS platform. Therefore, add a "Platform" filter, where Platform equals "iOS Native". At this point, your query should look like this:

Choose Filters

Step 4: Choose Breakdowns

Breakdowns segment data into groups. In this case, we want to count message sending users in different cities. Therefore, add a "City" breakdown. At this point, your query should look like this:

Choose Breakdowns

Step 5: Change Visualization

Choosing a different chart can help you visualize data better. Line charts help you see a trend, but other charts will help you see the aggregate value.

Change Visualization

Step 6: Analyze Results

You now have a full analysis that you can use and add onto a Board, or use as a starting point to dig in further. This might mean adding more filters or breakdowns, or adding another metric and seeing if there's an interesting comparison to be made. You could also change the counting type or the chart type.

Basic Features

Chart Types

Insights features multiple visualizations to help you view the query results in the clearest chart type. By default, Insights displays the results on the line chart, which helps you understand how metrics trend over time. However, another chart type might present the results with more clarity. In Insights, you can choose to get a metric calculated either across the entire time period selected in the date picker or on a time-segmented view of the metric (e.g. daily breakdown).

  • Metric calculated across the entire time period
    • Bar chart
    • Stacked bar chart
    • Pie chart
    • Metric chart
    • Table chart
  • Metric time-segmented
    • Line chart
    • Stacked line chart

Sorting

Bar chart

When you view a bar chart, you have four different sorting options: A-Z Ascending, Z-A Descending, Value Ascending, or Value Descending. To switch sorting view, select the Events or property name column header in the upper left hand of the results and then select which sorting order you would like to see.

Sorting Bar Chart

Line chart

Line charts in Insights are accompanied by a table of values that gives users another way to consume the trends information. This data table can also be sorted by clicking the column headers.

Click on a column header to sort by that column. Click the header again to reverse the sorting order. For example, the table below is sorted by event counts on August 2nd:

Sorting Line Chart

Results that are segmented (from one or more "group by" clauses in your query) have four different sorting options when you click on the "segment column" headers:

  • Segment A-Z Ascending: sort by segment name in ascending order
  • Segment Z-A Descending: sort by segment name in descending order
  • Value Ascending: sort by segment value in ascending order
  • Value Descending. sort by segment value in descending order

When sorting by segments, the sort is carried out left to right.

Sorting Line Chart

Clicking on the "Average" data column performs a flat sort across all segments:

Sorting Line Chart

Table chart

Tables are useful to see the precise values of your data and to quickly scan multiple metrics per segment. In general, tables work similarly to the rest of Insights, with a few extra features.

Sort Order

You can configure how you want rows in the table to be sorted, with our global sorting control. Sorting.gif

Grouped View vs Ungrouped View

The Ungrouped View removes all hierarchy and makes the table flat. Each combination of segment values is treated as a row, independently of the other rows.

image

The Grouped View preserves hierarchy of breakdowns. It shows you segments within a breakdown as displayed below. This view is only applicable when you have 2 or more breakdowns

image

Alphabetical vs Value-Based Sorting

You can sort segments alphabetically or by the value of a particular metric. In the grouped view, sorting is configured on a per-breakdown level, and respects the breakdown hierarchy.

In the below image, we sort Country within Item Category, which respects the hierarchy. image

Hierarchy is defined by the breakdown order in the query panel: image

View “N” segments

The View “N” control lets you decide how many rows to display per breakdown in your table. View_N_gif

In the ungrouped view, choose the number of rows to display: image

In the grouped view, you can choose the number of rows you want to display for each breakdown: image

image

Notes
  • View N only controls how many segments to display. To decide which segments to display i.e if it’s the top segments by value or bottom segments by value or alphabetical, please change the “Sort Order”.
  • View N will show the minimum of N and how many segments are in your report. For example, if you set N=10 but you only have 7 segments, we will only show 7 rows.
  • When selecting “Show All”, the maximum number of segments displayed in the UI will be 3000 given cardinality limits. If your breakdown has more than 3000 segments, you'll only see the top 3000, dictated by the sort order.
Overall and Segment Sub-Totals

Overall: This refers to the value considering all the segments, independent of whether displayed or not based on your View N control; i.e changes to View N will not effect Overall numbers image

Sub-Totals: In the grouped view, in addition to the Overall, segment sub-totals are also displayed. Similar to “Overall”, these values are independent of the View N control

image

Analysis Settings

The Analysis options will determine the way the chart is calculated and visualized. The options are:

  • Linear: This is the standard view for the chart.
  • Logarithmic: A nonlinear scale based on orders of magnitude, rather than a standard linear scale, so the value represented by each equidistant mark on the scale is the value at the previous mark multiplied by a constant.
  • Rolling: Rolling analysis calculates the rolling average of the data set. A rolling average curve is a series of averages from subsets of data. Use rolling average analysis to remove noise or spikes from data and smooth out trends over time. Mixpanel calculates the rolling average based on the selected time interval (hour, day, week, month or quarter) for each data point in the graph.
    For example, if you make a rolling analysis query for the past 30 days, Mixpanel calculates the rolling 7-day average by default. The value reported at each day in the line graph is the average of the values from the 7 days leading to that day. In the case of the first 6 days in your selected time period, the 7-day-average calculation will include days before the selected time period.
  • Cumulative: Adds up the values of each point on the graph as it goes along, so the height of the line will increase over time.

Advanced

Formulas

Use Formulas to make calculations using simple arithmetic operators.

Mixpanel supports the following operators:

  • + : Add
  • - : Subtract
  • * : Multiply
  • / : Divide
  • () : Use parentheses to influence the order of operations

Click the Formula button. Each event in the query shows a letter next to it, which indicates its variable name. Use these letters in combination with the operators to calculate a more advanced query. For example, you can use the DAU, WAU, and MAU functions in Formulas to calculate the stickiness of your product:

Formulas 1

Enter a name for the formula (optional), and click Apply Formula to see the formula output. You can also use numbers as constants in a formula. Multiply a ratio by 100 to display as a percentage, for example. Divide a property value tracked in seconds by 3,600 to display the value in hours.

Custom Bucketing

Insights will automatically group your high-cardinality segments into buckets. Buckets can be edited by using the "Custom Buckets" option in the overflow menu: You can choose "Even" to get buckets of uniform size, and you can choose "Varied" to get buckets of different sizes. This helps with organizing outliers, or with drilling deeper into particular ranges.

Bucketing

Time Period Comparisons

Compare the current period of time to previous periods of time in order to track trends and growth in your product’s use. Compare traffic from a specific campaign period or event from one year to the next, or compare the success of that campaignto your normal traffic.

Note that if a data point for a previous year falls on a weekend, the data point is automatically moved to the next Monday to give a more clear picture of the data change from one year to the next.

Click on the Compare to past button at the top of your Insights graph and select the time period you wish to compare to. You can also select a custom date range.

Time Period Comparison

Value Comparisons

When you have multiple metrics, or have broken down a metric by a property, you can compare them against each and the relative value. Click on Compare -> Overall. This works for all data functions. For a "totals" data function, you can see the percentage that a particular segment makes up. For non summable aggregations, it compares the segment value to the whole, unsegmented value.

Value Setting

Profile Analysis

Choose to explore either Events & Cohorts or Profiles. Events & Cohorts allows you to examine user behaviors, while Profiles allows you access profile data and visualize your users with filters and breakdowns based on their profile properties. When exploring Profiles, you are always analyzing all user profiles. Select the Data Function you want to use to calculate results by clicking on Total and selecting an option from the drop-down. You can calculate based on users or profile property value.

Explore User Profiles

Annotations

In order to clarify the results in your Insights report add detailed annotations directly to the line chart. Annotations are tied to a specific date on the chart, rather than a specific data point on the chart.

Only project admins can create, save, and delete annotations.

To add an annotation, hover your mouse over the point on the chart you want to annotate, and click the blue + button that appears. Enter a description for the annotation, such as a holiday that occurred on that day or the end date of your fiscal year, then click Save. If you accidentally selected the incorrect date on the chart, you can edit the date and time of the annotation in this window.

Annotations 1

View an existing annotation by clicking on the number found at the bottom of a report. You will be able to see who submitted the annotation.

Annotations 2

Hover the cursor over the annotation to edit or delete it. Click on the pencil icon to edit an annotation, or the trash icon to delete an annotation. Add additional annotations to the same date by clicking Add annotation.

Annotations 3

Insights Data Functions, Operators and Calculations

Data Functions in Mixpanel reports allow you to perform more complex calculations on your queries - this includes computing aggregate values of your event and property data, including totals, uniques, and averages.

The following data functions are only available in Insights, and are separated into groups based on what is being calculated: Total, Unique, Count users, aggregate property values, aggregate property values per user, and count sessions.

Select the Data Function you want to use to calculate results by clicking on Total and selecting an option from the drop-down. You can calculate based on events, users, event property value, event property value per user, and sessions.

Data Functions 1

The following functions have additional aggregation options which you will be prompted to select:

FunctionAggregation options
EventsTotal Per User
Aggregate PropertiesSum
Average
Median
Distinct Count (opens in a new tab)
Percentiles (P25,P75,P90,P99)
Minimum
Maximum
Count UsersDaily Active Users (DAU)
Weekly Active Users (WAU)
Monthly Active Users (MAU)
Event property value per userSum
Average
Distinct value count
Minimum
Maximum

These functions provide additional aggregation options following the initial calculation because they are “per user” calculations. “Per user” calculations first calculate the value per user, which is an unhelpful query in its raw form, but becomes useful when you perform an aggregation on that calculation.

Selecting any of these functions gives you the option to choose different ways to aggregate this data. The default aggregation is Average, which you can click on to select a different option such as distribution, median, 25/75/90th percentiles, minimum and maximum.

Data Functions 2

If the data function you select calculates based on property (“Event Property Values” or “Event Property Values Per User”), you will be prompted to select an event property.

Data Functions 3

You can find more information about each data function and how they are calculated below:

Events

Function NameEvents & Cohorts CalculationProfiles Calculation
TotalTotal count of [event] performed.
Example: How many times did my users watch a video?
N/A
Total per userThe number of events performed per user.
Example: How many videos were watched per user?
Aggregation options: Average, distribution, median, percentiles, minimum, maximum
N/A

Users

Function NameEvents & Cohorts CalculationProfiles Calculation
TotalN/ATotal count of user profiles.

Example: What's my total number of users?
UniquesThe number of users who performed [event].

Example: What's the count of users who watched a video?
N/A
Daily Active Users (DAU)The number of users who performed [event] within the last 24 hours.

Example: What's the count of users who watched a video in the last day?
N/A
Weekly Active Users (WAU)The number of users who performed [event] within the last 7 days.

Example: What's the count of users who watched a video in the week?
N/A
Monthly Active Users (MAU)The number of users who performed [event] within the last 30 days.

Example: What's the count of users who watched a video in the last month?
N/A

Aggregate Property Values

Function NameEvents & Cohorts CalculationProfiles Calculation
SumThe total of a numeric property value across all instances of [event].

Example: What's the total number of minutes of videos watched?
The total of a numeric property value across all user profiles.
Example: What's the total revenue across all users?
AverageAverage of a numeric property value across all instances of [event].

Example: What's the average number of minutes per video watched?
Average of a numeric property value across all user profiles.
Example: What's the average revenue across all users?
Distinct countCalculates the unique count of property values across all instances of [event].

Example: How many unique songs were played in the last 30 days?
Calculates the unique count of property values across all profiles.
Example: How many unique countries were our video watchers from?
MedianMedian of a numeric property value across all instances of [event].

Example: What's the median number of minutes per video watched?
Median of a numeric property value across all user profiles.
Example: What's the median revenue across all users?
Percentiles (25/75/90/99)The 25/75/90/99th percentile of a numeric property value across all instances of [event].

Example: What's the 25th percentile number of minutes of videos watched?
The 25/75/90/99th percentile of a numeric property value across all user profiles.
Example: What's the 25th percentile revenue across all users?
MinimumMinimum of a numeric property value across all instances of [event].

Example: What's the minimum number of minutes per video watched?
Minimum of a numeric property value across all user profiles.
Example: What's the minimum revenue across all users?
MaximumMaximum of a numeric property value across all instances of [event].

Example: What's the maximum number of minutes per video watched?
Maximum of a numeric property value across all user profiles.
Example: What's the maximum revenue across all users?

Aggregate Property Values per User

Function NameEvents & Cohorts CalculationProfiles Calculation
SumThe total of a numeric property value across all instances of [event] per user.

Example: What's the total number of hours of videos watched per user?
Aggregation options: Average, distribution, median, percentiles, minimum, maximum
N/A
AverageAverage of a numeric property value across all instances of [event] per user.

Example: What's the average number of hours of videos watched per user?
Aggregation options: Average, distribution, median, percentiles, minimum, maximum
N/A
Distinct countThe number of distinct property values per user.

Example: How many different videos did each user watch?
Aggregation options: Average, distribution, median, percentiles, minimum, maximum
N/A
MinimumMinimum of a numeric property value across all instances of [event] per user.

Example: What's the minimum number of hours of videos watched per user?
Aggregation options: Average, distribution, median, percentiles, minimum, maximum
N/A
MaximumMaximum of a numeric property value across all instances of [event] per user.

Example: What's the maximum number of hours of videos watched per user?
Aggregation options: Average, distribution, median, percentiles, minimum, maximum
N/A

Count Sessions

Function NameEvents & Cohorts CalculationProfiles Calculation
Sessions with eventThe number of sessions that contain [event].

Example: What's the total number of sessions in which users watched a video?
N/A

Additional Aggregation Option Examples

Data FunctionAverageDistributionMedianPercentiles (25/75/90)Minimum/Maximum
Total per userWhat's the average number of songs played per user?What is the distribution of my users by the number of songs played?What's the median number of songs played per user?How many songs did the 90th percentile user listen to?How many songs did my least/most active user listen to?
Sum of property value count per userWhat's the average cumulative watch time per user?What's the distribution of my users by the cumulative minutes of content watched?What's the median of the cumulative watch time per user?How many cumulative minutes has the 90th percentile user watched?How much has the lowest/highest spender spent?
Average of property value count per userWhat's the average of the average cart value for each rider?What's the distribution of my users by the average cart value per user?What's the median of the average cart value per user?What's the average cart value for the 90th percentile user?What's the minimum/maximum average cart value?
Distinct property value count per userWhat's the average number of unique song titles heard by my users?What's the distribution of my users by the number of unique song titles listened to?How many unique songs does the median user listen to?How many unique songs does the 90th percentile user listen to?What's the minimum/maximum number of unique songs my users listen to?
Minimum property value count per userWhat's the average of the minimum ratings provided per user?What's the distribution of my users by the minimum rating provided?What's the median of the minimum ratings provided by users?What's the minimum rating provided by the 90th percentile user?What's the minimum rating across all ratings??
Maximum property value count per userWhat's the average of the maximum gaming session length per user?What's the distribution of my users by the maximum gaming session length?What's the median of the maximum gaming session length per user?What's the maximum gaming session length provided by the 90th percentile user?How long has the longest gaming session lasted across our users?

Here's a quick overview on "Distinct count" of property values, and how that differs from "Distinct count" of property values per-user:

Here are some use-cases that are now possible with "Distinct count" of property values:

  • How many unique items were added to cart yesterday?
  • How many unique songs / videos were played in the last 30 days?
  • How many unique files were worked on in the last week?

Daily, Weekly, and Monthly Active Users

Daily Active Users (DAU): Select DAU to calculate the number of unique users in the previous day (24-hour) period that have performed the selected event. Weekly Active Users (WAU): Select WAU to calculate the number of unique users in the previous week (7-day) period that have performed the selected event. Monthly Active Users (MAU): Select MAU to calculate the number of unique users in the previous month (30-day) period that have performed the selected event.

If you select the DAU, WAU, or MAU function for a date range that includes the current day, the query will take the end of the current day as the end of the query’s time segment (even though it’s in the future). For example, today is April 25th, and it’s 4:22 PM. If you make a query to show WAU and you select “current day” as your date range, the query will return the count of unique users between April 19 at 12:00:00 AM and April 25 at 11:59:59.

View Users

Click a segment in an Insights report to see the list of users that underlie that data point. This helps see a representative sample of users from any analysis, so you can drill into anomalies or simply get to know your users. You can also save this user list as a cohort to either export or use for message targeting.

See this video walkthrough (opens in a new tab) for examples of how View Users can help you understand users contributing to a specific metric.

View Events

Click on a chart segment in Insights and view the raw events that made up that metric. You will be redirected to the Events page.

View Events

View Sample Events

You can hover over any event and in the context panel, you now have the ability to "View Sample Events", which redirects you to the Events page with 100 most recent samples of that hovered event: You can see a few samples of an event to help you decide whether that's the right event you want for your analysis or which property you should use for filters/breakdowns.

View Sample Events