Title: Event Analysis Locale: en URL: https://sensorswave.com/en/docs/analytics/event-analysis/ Description: Use Event Analysis to gain deep insights into user behavior patterns Event Analysis is the most commonly used analysis model in Sensors Wave, designed to track and measure various user behavior events in your product. With Event Analysis, you can understand how users interact with your product, identify high-frequency actions, discover usage trends, and compare behavioral differences across user groups. These insights help you optimize product features, improve user experience, and develop more targeted operational strategies. Event Analysis supports single-event or multi-event analysis simultaneously, providing flexible measures and multi-dimensional data exploration capabilities, easily handling both daily data monitoring and deep behavioral analysis. ## Typical Use Cases Event Analysis can help you answer the following questions: **Feature usage analysis**: - What is the usage trend of the search feature over the past 30 days? - Which features are the most popular among users and have the highest usage frequency? - After a new version release, what is the adoption rate of the new feature? **User behavior comparison**: - What are the differences in activity between iOS and Android users? - How large is the gap in usage frequency between paid and free users? - How do user behavior patterns differ across regions? **Business metric monitoring**: - What are the daily product views and add-to-cart counts? - How many searches does the average user perform per day? - How much has this week's order submissions grown compared to last week? **User behavior patterns**: - At what time of day are users most active? - Which product categories have the most views? - How many products does a user browse on average before making their first purchase? ## Prerequisites Before using Event Analysis, make sure you have: - Completed [SDK integration](../data-integration/client-sdks/javascript.mdx) and started receiving data - Understood the basic concepts of the [Data Model](../data-integration/data-model.mdx) and [Events and Properties](../data-integration/events-and-properties.mdx) - Created the [Event Definitions](../08-数据管理/01-事件类型.md) you need to analyze in Data Center - Have view or analysis permissions for the project, see [Roles and User Permissions](../10-组织与项目/03-角色和用户权限.md) ## Quick Start ### Create an Event Analysis 1. Click **Insights** in the left navigation bar 2. Click the **New Analysis** button in the upper right corner 3. Select the **Event Analysis** model 4. Configure analysis conditions: - Select the event to analyze - Set the measure - Choose a time range and granularity 5. Click the **Query** button to view the analysis results ### Save and Share After completing the analysis configuration, you can: 1. Click the **Save** button in the upper right corner to name and save the analysis 2. Click the **Add to Report** button to add the analysis to an existing report 3. Click the **Share** button to generate a share link or export an image ## Core Features in Detail The Event Analysis configuration is divided into four parts: metric configuration, Segment By, Group By, and visualization settings. These features work together to enable flexible and deep data analysis. ### 1. Metric Configuration Metric configuration determines "what to analyze" and is the core of Event Analysis. Here you select the events to analyze and define how to measure them. #### Select Events Events are specific user behaviors in the product, such as "Product View", "Add to Cart", "Complete Payment", etc. **Single event analysis**: - Select one event to analyze, such as analyzing the usage trend of the "Search" event - Suitable for deeply understanding the usage of a specific feature **Multi-event comparison**: - Select multiple events simultaneously for comparative analysis, such as comparing data differences between "iOS Launch" and "Android Launch" - Supports adding up to 10 events - Different events are displayed as different colored curves or columns in the same chart - Suitable for comparing usage across different features or the same feature across platforms > **Tip**: In the event selector, you can quickly find the event you need through search. The system displays the event description and last trigger time to help you confirm your selection. #### Measures Measures define how to calculate and aggregate event data. Different measures are suited for different analysis scenarios. **Total Events**: - Counts the total number of times an event occurred - Use case: Understand how frequently a behavior occurs, e.g., "How many times was the search feature used in the past 7 days" - Examples: Total product views, total searches, total page visits **Unique Users**: - Counts the number of distinct users who triggered the event - Use case: Understand how many users used a feature, e.g., "How many users used the search feature" - Examples: Search users, purchase users, active users **Average per User**: - Calculates the average number of times each user triggered the event (Total Events / Unique Users) - Use case: Understand user engagement depth, e.g., "How many times did the average user search" - Examples: Average searches per user, average products viewed per user, average shares per user **Sum of Property Value**: - Sums a numeric event property value - Use case: Calculate cumulative business metrics like amounts and quantities, e.g., "Total Sales Revenue", "Total Browse Duration" - Example: Select the "Order Amount" property to calculate total sales revenue - **Note**: Only supports numeric event properties **Average of Property Value**: - Calculates the average of a numeric event property value - Use case: Understand average levels, e.g., "Average Order Amount", "Average Browse Duration" - Example: Select the "Order Amount" property to calculate the average order amount - **Note**: Only supports numeric event properties **Count Distinct of Property**: - Counts the number of distinct values for an event property - Use case: Understand data diversity, e.g., "Number of distinct products viewed" - Example: Select the "Product ID" property to count distinct products viewed **Maximum / Minimum**: - Calculates the maximum or minimum value of a numeric event property - Use case: Understand extreme values, e.g., "Highest single order amount", "Shortest dwell time" - **Note**: Only supports numeric event properties #### Event Property Filter After selecting an event, you can add property filter conditions to precisely define the data range to analyze. For example, when analyzing the "Product View" event: - Filter "Product Category" equals "Electronics" to only analyze electronics views - Filter "Product Price" greater than 1000 to only analyze high-priced product views - Filter "Referral Page" equals "Search Results Page" to only analyze views from search Supported filter operators include: - **Equals / Not Equals**: Exact match on a value - **Contains / Not Contains**: Fuzzy match for text search - **In / Not In**: Match any one of multiple values - **Greater Than / Less Than / Between**: Range filtering for numbers or dates - **Is Not Null / Is Null**: Check whether a property has a value ### 2. Segment By (Segmentation) Segment By is equivalent to the `WHERE` clause in SQL, used to filter the user groups or behavioral data you care about from massive data. For detailed information about Segment By, see [Common Analysis Features](common-analysis-features.mdx#2-细分筛选-segmentation). #### Basic Filters **Supported filter types**: - **User Property**: Inherent user characteristics (e.g., gender, region, membership level). - **Event Property**: Contextual information at the time of the behavior (e.g., product price, browser version, referral page). - **Cohort**: Directly use pre-created user collections (e.g., high-risk churn group). **Supported filter operators**: - **Equals / Not Equals**: Exact match on a value - **Contains / Not Contains**: Fuzzy match for text search - **In / Not In**: Match any one of multiple values - **Greater Than / Less Than / Between**: Range filtering for numbers or dates - **Is Not Null / Is Null**: Check whether a property has a value **Use case examples**: Analyze search behavior of paid users: - Add User Property filter: "Membership Level" in "Gold Member", "Platinum Member" Analyze mobile user behavior: - Add User Property filter: "Platform" equals "iOS" or "Android" Exclude internal test data: - Add User Property filter: "Email" not contains "@sensorswave.com" Analyze conversion for a specific channel: - Add User Property filter: "Registration Source" equals "TikTok Ads" > **Tip**: Segment By applies to the entire analysis, affecting all selected events. If you only want to filter a specific event, use the event property filter feature. #### Advanced Filter Conditions In addition to basic property filters, the system supports more complex filter conditions for more refined user analysis. **Supported filter condition types**: 1. **Property Filter** (Attribute-based) - Filter based on User Properties or Event Properties - Examples: gender, age, region, operating system, browser, etc. - Supports combination filtering with multiple values 2. **Performed** (Behavioral Metrics) - Filter based on user behavioral metrics - Example: "Users who triggered the 'Search' event more than 5 times in the past 7 days" - Example: "Users who never made a payment" - Supports configuring events, time ranges, and thresholds 3. **Behavioral Sequence Filter** - Filter based on user event sequences - Example: "Users who viewed a product, then added to cart, but did not pay" - Supports configuring multiple sequential behavioral steps 4. **Cohort Filter** - Directly use pre-created Cohorts as filter conditions - Example: "Users belonging to the 'High-Value Customers' Cohort" - Supports inclusion or exclusion of specified Cohorts #### Building Complex Filter Conditions The system supports building complex filter conditions with up to two levels of AND/OR nesting to meet complex analysis needs. **Basic rules**: - **First level**: Multiple filter conditions support "AND" or "OR" relationships - **Second level**: Within the first level, each group can contain multiple conditions with "AND" or "OR" relationships - Supports up to 10 independent filter conditions **Example 1: Two conditions with "AND" relationship**: ``` Platform = "iOS" AND Membership Level = "Gold Member" ``` Analysis target: Gold Members among iOS users **Example 2: Two conditions with "OR" relationship**: ``` Platform = "iOS" OR Platform = "Android" ``` Analysis target: All mobile users **Example 3: Nested "AND"/"OR" mixed relationship**: ``` (Platform = "iOS" OR Platform = "Android") AND (Membership Level = "Gold Member" OR Membership Level = "Platinum Member") ``` Analysis target: High-tier members among mobile users **Example 4: Complex conditions including behavioral metrics**: ``` Search count in the past 7 days > 5 AND (Membership Level = "Gold Member" OR Registration days 365" named "Existing Users" - Segment 3: "No activity in the past 30 days" named "Churned Users" - Compare different stages of the user lifecycle **Notes**: - **Segment count**: Up to 10 segments are supported; too many segments will make charts cluttered - **Mutually exclusive conditions**: For more meaningful comparisons, conditions across segments should be as mutually exclusive as possible - **Segment naming**: Use clear naming for each segment to quickly understand the analysis subject - **Performance impact**: More segments may reduce query performance; we recommend starting with 2-5 segments #### Best Practice: Filter vs. Group By In practice, you need to choose wisely between multiple Segment By filters and Group By dimensions: **When to use multiple Segment By**: - (Recommended) Need to compare 2-5 specific, significantly different user groups - (Recommended) Each group's definition is complex, involving multiple condition combinations - (Recommended) Need to visually compare trends of different groups on the same chart - (Recommended) Use behavioral metrics or sequence conditions for precise filtering **When to use Group By**: - (Recommended) Want to see the complete distribution of a dimension, such as user distribution across all cities - (Recommended) The number of groups is relatively small (10 or fewer) - (Recommended) Only need simple property dimensions for grouping - (Recommended) Use Top N to show leading data **Example: E-commerce platform analyzing product views**: Goal: Analyze viewing differences between high-priced and low-priced products | Approach | Configuration | Advantages | Disadvantages | |-----|---------|------|------| | Multiple Segment By | Segment 1: "Product Price > 1000" Segment 2: "Product Price **Tip**: Too many groups may cause data to be overly fragmented. We recommend prioritizing 1-2 key dimensions. #### Group Result Sorting and Filtering **Top N display**: - Displays the Top 10 group results by default - You can adjust the display count, e.g., show only Top 5 or display all groups **Sort order**: - Sort by metric value: highest to lowest or lowest to highest - Sort by dimension value: alphabetical or numerical order **Group filtering**: - Further filter within group results, e.g., show only groups containing "Beijing" or "Shanghai" - Temporarily hide certain groups to focus on key data ### 4. Visualization Settings #### Chart Types Event Analysis supports multiple chart types, with different charts suited for different analysis scenarios. For detailed chart type descriptions, see [Common Analysis Features](common-analysis-features.mdx#图表类型与适用场景). **Line**: - The most commonly used chart type, suitable for observing trend changes - X-axis is time, Y-axis is metric value, with lines connecting data points over time - Use case: Analyze metric trends over time, e.g., "DAU trend over the past 30 days" - Supports multiple lines for comparison, e.g., showing trends for multiple events or groups simultaneously **Column**: - Displays data as columns, suitable for comparative analysis - X-axis can be time or Group By dimension, Y-axis is metric value - Use case: Compare data sizes across groups, e.g., "User count comparison by province" - Supports Stacked Column to show overall vs. component relationships **Stacked**: - Stacks multiple data series to show both overall trends and composition changes - Use case: Analyze composition changes, e.g., "The proportion of new vs. returning users among daily active users" - Can switch to "Stacked Area" or "100% Stacked" (showing percentages) **Metric**: - Displays only a single aggregated numeric result without trend or distribution - Use case: View the final value of a core KPI, e.g., "Total sales this month" - Supports showing period-over-period or year-over-year changes **Pie**: - Displays the proportion of each group as pie slices - Use case: Analyze the proportional distribution of grouped data, e.g., "Sales proportion by product category" - **Note**: Only supports data for a single time point, not suitable for time trend analysis **Table**: - Displays detailed data in table format, supporting multiple columns side by side - Use case: View precise values or when exporting data - Supports sorting, searching, and data download #### Time Settings **Time range**: - Select the time span for analysis data - Quick options: Today, Yesterday, Last 7 Days, Last 30 Days, This Week, Last Week, This Month, Last Month, etc. - Supports custom date ranges, e.g., "2026-01-01 to 2026-01-31" - Supports "to date" options, e.g., "This Month to Date" **Time granularity**: - Determines the level of data aggregation - Supported granularities: Hourly, Daily, Weekly, Monthly - The system automatically recommends an appropriate granularity based on the selected time range - 1-3 days: Recommended "Hourly" - 7-60 days: Recommended "Daily" - 2-6 months: Recommended "Weekly" - 6+ months: Recommended "Monthly" **Time comparison**: - Compare with historical data to quickly identify growth or decline - Period-over-period: Compare with the previous period, e.g., this week vs. last week - Year-over-year: Compare with the same period last year, e.g., this month vs. last year same month - Comparison data is displayed as dashed lines or in different colors on the chart #### Advanced Settings **Data display format**: - Raw value: Show actual values - Percentage: Convert values to percentage display - Thousands separator: Add thousands separators to large numbers for better readability **Y-axis settings**: - Auto range: System automatically adjusts the Y-axis range - Custom range: Manually set Y-axis minimum and maximum values for scenarios requiring fixed axes - Logarithmic scale: Use logarithmic scale for clearer trend display when data differences are large **Legend settings**: - Show/hide legend - Adjust legend position: top, bottom, left, right **Null value handling**: - Gap: When there's no data at a time point, the Line chart breaks - Fill zero: When there's no data at a time point, fill with 0 - Linear interpolation: Estimate based on preceding and following data points ## Data Detail Area The Data Detail Area is located below the visualization charts, displaying detailed analysis data in table format. For detailed information about the Data Detail Area, see [Common Analysis Features](common-analysis-features.mdx#-数据明细区). ### User List Drill-down In Event Analysis, when you use "Unique Users" as the measure, you can click on values in the table to view specific user lists. **Usage steps**: 1. In the data detail table, find the data cell you're interested in 2. Click the cell, and the system will pop up a user list 3. The user list shows: user ID, trigger count, last trigger time, and other information 4. You can: - Click a user ID to jump to [User List](../05-受众计算/01-用户细查.md) to view the user's complete behavior trail - Select multiple users and save them as a [Cohort](../05-受众计算/02-用户分群.md) - Export the user list as a CSV file **Use cases**: - Discover an abnormal increase in users on a certain day, drill down to see which new users appeared - Identify high-frequency users and save them as a "Core User Group" for refined operations - Analyze churned users and examine their common characteristics ### Data Export Click the "Export" button in the upper right corner of the data table to export analysis results as: - **CSV format**: Suitable for secondary data processing - **Excel format**: Suitable for creating presentation materials - **Image format**: Save the chart directly as a PNG image ## Tips and Best Practices ### Choosing the Right Measure Different analysis goals require different measures: | Analysis Goal | Recommended Measure | Description | |---------|------------|------| | Feature penetration rate | Unique Users | Understand how many users used the feature | | Feature usage frequency | Total Events | Understand the overall frequency of feature usage | | User engagement depth | Average per User | Understand user dependence on the feature | | Business amount statistics | Sum of Property Value | Calculate total sales, total duration, and other cumulative metrics | | Average level analysis | Average of Property Value | Understand average order amount, average duration, etc. | | Data diversity | Count Distinct of Property | Understand the number of distinct products viewed, pages visited, etc. | ### Using Group By Wisely **Recommended practices**: - (Recommended) Prioritize 1-2 core dimensions for grouping to keep data clear - (Recommended) Start with general dimensions (e.g., platform, region) to quickly find differences, then use detailed dimensions for deeper analysis - (Recommended) Use Top N to focus on leading data and avoid long-tail group interference - (Recommended) For high-cardinality dimensions (e.g., Product ID), filter first then group to narrow the data range **Practices to avoid**: - (Not recommended) Adding more than 3 Group By dimensions simultaneously, causing data to be overly fragmented - (Not recommended) Directly grouping by high-cardinality dimensions (e.g., User ID), producing many meaningless groups - (Not recommended) Grouping without a clear analysis goal, adding unnecessary complexity ### Multi-event Comparison Tips **Use cases**: - Compare usage of different features, e.g., "Search" vs. "Category Browse" - Compare the same feature across platforms, e.g., "iOS Launch" vs. "Android Launch" - Compare various stages of a business process, e.g., "Product View" vs. "Add to Cart" vs. "Submit Order" **Notes**: - Ensure compared events use the same measure, e.g., all use "Unique Users" - Use Line or Column charts for comparison results; avoid Pie charts - If events have very different magnitudes, consider using dual Y-axes or analyzing them separately ### Filter and Group By Working Together Filters and Group By are two different concepts: - **Filter**: Narrows data, reducing the analysis scope - **Group By**: Splits data, showing distribution **Best practices**: 1. **Filter first, then group**: Focus on core data through filtering, then view distribution through grouping 2. **Filter out noise**: Use filters to exclude test data, anomalous data, etc. 3. **Group to find differences**: Use grouping to identify performance differences across groups or scenarios **Example**: - Goal: Analyze activity differences for paid users across provinces - Approach: 1. Add User Property filter: "Membership Level" not equals "Free Member" (filter to paid users) 2. Group by "Province" (view distribution by province) 3. Sort by metric value descending, view Top 10 provinces ### Choosing Time Granularity Choosing the right time granularity can display data trends more clearly: | Time Range | Recommended Granularity | Use Case | |---------|---------|---------| | 1-3 days | Hourly | Real-time monitoring during events, peak traffic analysis | | 7-60 days | Daily | Daily data monitoring, weekly/monthly trend analysis | | 2-6 months | Weekly | Quarterly data analysis, mid-term trend observation | | 6+ months | Monthly | Annual data summaries, long-term trend analysis | **Tips**: - Using "Weekly" or "Monthly" granularity can smooth out short-term fluctuations for clearer trends - When comparing time periods, ensure both periods use the same granularity - Grouping by "Hour" can reveal user activity patterns throughout the day ### Quick Problem Identification Methods **Method 1: Time comparison for anomaly detection** 1. Use the period-over-period comparison feature, e.g., "this week vs. last week" 2. If you find significant metric fluctuations, switch to "Daily" granularity to identify the specific anomalous date 3. Perform group analysis on the anomalous date to find which group caused the anomaly **Method 2: Group sorting to identify leaders** 1. Group by a key dimension, e.g., "Group by Province" 2. Sort by metric value descending, view Top 10 3. Compare Top groups with others to identify key driving factors **Method 3: Multi-event comparison to find drop-off points** 1. Select multiple key events in the business process, e.g., "Product View", "Add to Cart", "Submit Order", "Payment Successful" 2. Use the same measure (e.g., "Unique Users") for comparison 3. Observe which step has the largest user count drop — that's the main drop-off point ## Important Notes ### Data Accuracy **Event tracking quality**: - The accuracy of analysis results depends on the completeness and correctness of tracking data - Before making important decisions, we recommend checking event trigger volumes and property completeness in Data Center - If you find data anomalies, see [Event Definitions](../08-数据管理/01-事件类型.md) for data quality checks **User identification**: - Ensure user identification is correctly implemented to avoid a single user being identified as multiple users - See [How to Properly Identify Users](../data-integration/user-identification.mdx) ### Performance and Limits **Query performance**: - Larger time ranges and more Group By dimensions result in longer query times - We recommend using shorter time ranges (e.g., within 30 days) for exploratory analysis - For long time ranges (e.g., over a year), use coarser time granularities (e.g., monthly) **Feature limits**: - A single query supports up to 10 events - Up to 3 Group By dimensions - Group results display Top 100 by default, adjustable up to 500 ### Data Freshness - Event data latency depends on your data integration method - Typically, data latency is within 1-5 minutes - If you need real-time monitoring, we recommend refreshing the analysis every 5-10 minutes ### Historical Data Corrections - Modifying event or property definitions (e.g., changing data types) does not affect historical data - Historical data is still stored and displayed according to the original definitions - For unified data definitions, see the data correction features in [Event Definitions](../08-数据管理/01-事件类型.md) ## Related Documentation **Analysis models**: - [Choosing the Right Analysis Model](choosing-analysis-model.mdx): Learn how to choose an analysis model - [Common Analysis Features](common-analysis-features.mdx): Learn about features shared across all analysis models - [Retention Analysis](retention-analysis.mdx): Analyze user retention and return visits - [Funnel Analysis](funnel-analysis.mdx): Analyze conversion processes and drop-off points **Data integration**: - [Data Model](../data-integration/data-model.mdx): Understand the Sensors Wave data model - [Events and Properties](../data-integration/events-and-properties.mdx): Learn about event and property concepts **Data Center**: - [Event Definitions](../08-数据管理/01-事件类型.md): Manage and maintain event metadata - [Event Properties](../08-数据管理/02-事件属性.md): Manage event property information - [User Properties](../08-数据管理/03-用户属性.md): Manage user property information - [Metrics](../08-数据管理/04-指标.md): Create and manage business metrics **Users**: - [User List](../05-受众计算/01-用户细查.md): View detailed behavior trails for individual users - [Cohorts](../05-受众计算/02-用户分群.md): Create and manage user groups **Reports and visualization**: - [Chart Management](../04-可视化与报表/01-图表管理.md): Save and manage analysis charts - [Report Management](../04-可视化与报表/02-报表管理.md): Create Dashboards and reports ## Next Steps After completing Event Analysis, you can: 1. **Analyze user retention in depth**: Use [Retention Analysis](retention-analysis.mdx) to understand user stickiness and return visit patterns 2. **Analyze business conversion processes**: Use [Funnel Analysis](funnel-analysis.mdx) to identify conversion bottlenecks and optimization opportunities 3. **Save as Cohort**: Save specific user groups discovered during analysis as [Cohorts](../05-受众计算/02-用户分群.md) for targeted operations 4. **Add to reports**: Add key metrics to [Reports](../04-可视化与报表/02-报表管理.md) for daily data monitoring 5. **View best practices**: See [Best Practices](best-practices.mdx) to improve analysis efficiency 6. **Resolve common issues**: If you encounter problems, check the [FAQ](faq.mdx)