At a glance: Use "My Dashboards" to design your own dashboard, adding and customizing widgets, charts, and tables that display the exact performance metrics you want, in the way you want to view them.
About My Dashboards
My Dashboards is the foundation for the next generation of versatile, user-friendly, AppsFlyer analytics. It is designed to integrate and streamline the capabilities of other dashboards and to gradually phase out the need to rely on the Custom dashboard, etc.
My Dashboards lets you:
- Design your own dashboard, with customized charts, table, and KPI metrics.
- Measure the performance of your marketing campaigns, aggregating all the data into one place.
- See the entire marketing funnel, from clicks and impressions to cohort, retention, SKAN, SSOT, and in-app event metrics, with all metrics side by side.
- Analyze campaign performance by selected dimensions, across multiple apps, campaigns, channels, and more.
- See the most granular performance data possible, with the best data freshness possible.
- Gain critical insights that help you optimize your marketing strategy and plan for the future.
- Create custom dimensions to group and filter dashboard data by business categories that match your reporting needs.
Get started
The My Dashboards user interface is designed for interactive dashboard building. Use the information in this article to learn how to create new dashboards, add widgets, understand what metrics, filters, and group-by dimensions are available, and more.
Tip! Familiarize and experiment with the platform to get a feel for it before reviewing this article in detail.
Procedures—Using the platform
Create a custom dashboard
To create a new custom dashboard follow these steps:
- In AppsFlyer, from the side menu, go to My Dashboards and click + (Create new dashboard).
- Enter a name for your dashboard, select the apps you want included, and click Save.
- Click + New widget and select the type of widget you want to add (table, KPI, line, bar, column, or donut).
- Configure the widget by adding the metric(s) and group by dimension(s) you want and click Apply.
- In the top-right of the dashboard, click Save.
- In the top-right of the dashboard, click the Share button, select whether to keep your dashboard private or share it with other team members, and click Done.
Add a widget to your dashboard
To add a widget to your dashboard, follow these steps:
-
In the top-right of the dashboard, click + Create new and select the type of widget you want to create: Table, KPI, Chart, in-app events table, in-app events chart, text, or Custom metric.
Note: Both the In-app events table and the in-app events chart quickly show the top events and user behaviour.- If you choose Chart, when the chart opens, you also choose the kind of chart: line, Bar, Column, Donut, stacked area, or Combo (a mix of line and column).
- The Text widget is unique in that it allows you to add titles for dashboard sections, share guidelines, knowledge, insights, goals, or usage guidance with other team members, helping turn dashboards into self-explanatory reports.
- If you choose Chart, when the chart opens, you also choose the kind of chart: line, Bar, Column, Donut, stacked area, or Combo (a mix of line and column).
- [Optional] Enter a name for your widget.
Add metrics to your chart or table
To add a metric to a chart or table, follow these steps:
- In the Chart Settings or Table Settings dialog, click the Metrics + plus sign. For more information about the different metrics, see Metrics in this article.
- For In-app events:
- Metrics are supported only for the LTV (user lifetime) period.
- Count, Unique users, or Revenue metrics are available.
- For In-app events:
- Select the settings (where applicable) for:
- Period
- Calculation
- Attribution method
- Attribution type
- Add a Group by dimension. Depending on the widget, you can sometimes add more than 1 group by dimension.
- For in-app events, group by Event name must be the primary dimension and cannot be removed.
- Select Filters.
- [Optional] Repeat steps 4 and 5 to add multiple metrics with settings for each.
Note: Group-by dimensions aren't available when there are multiple metrics. - Optional] Change the time breakdown of the chart from daily to weekly or monthly for Cohorted metrics or Monthly Active Users.
- [For line charts] Select a Compare to timeframe to compare the chart data to a previous day, week, month, quarter, year, or a custom timeframe.
- Click Apply.
The widget displays in your dashboard.
Add custom dimensions to your dashboard
Custom dimensions let you define your own ways to group and view data across My Dashboards. Use them to turn existing dimensions into meaningful business categories, so you can analyze performance according to the structure of your business.
You can create a custom dimension from scratch or use a suggested custom dimension. After a custom dimension is created, you can use it in widget settings as a group-by dimension or filter.
Custom dimensions help you:
- Get tailored insights: Capture data beyond standard dimensions to better understand business performance.
- Enhance reporting: Build custom dashboard views that align with your reporting needs.
- Make smarter decisions: Add business-specific context to your KPIs, making it easier to identify trends, patterns, and optimization opportunities.
Suggested custom dimensions
| Suggested dimension | Description |
|---|---|
| Campaign Objective | Classify campaigns by optimization objective to compare performance side by side. |
| Regions | Map individual geos into business regions to analyze geo performance. |
| Paid vs. Owned data | Group media sources into high-level categories to compare paid, organic, and owned media performance. |
Example use cases
| Use case | Description |
|---|---|
| Measure retargeting campaigns by campaign objective | Group retargeting campaigns by objective, such as churn prevention, reactivation, or upsell, and compare performance in My Dashboards. |
| Group media sources by UA manager | Create a custom dimension based on Media source to group different media sources by team members. For example, group Google and Meta campaigns under Kevin, and TikTok and Instagram campaigns under Natasha. |
| Compare geo tiers | Group countries by business priority or revenue potential to compare performance across tiers. |
| Analyze product or business line performance | Create a custom dimension based on Campaign to group campaigns by the product or service they promote. This helps you see which product drives the most installs or revenue when campaigns for multiple products run across different networks. |
Procedures
Create a custom dimension
To create a custom dimension:
- In AppsFlyer, go to My Dashboards.
- Open the custom dimensions entry point:
- From the dashboard menu, click the Menu icon > Custom dimensions.
- Or, in widget settings, in the Group by or Filters field, click Create custom dimension.
- From the dashboard menu, click the Menu icon > Custom dimensions.
- Click New dimension.
- Select the base dimension:
- Campaign
- Media source
- Channel
- Geo
- Enter a name and description.
- Define the dimension values.
- For each value, define the rules that determine when the value applies.
- Click Save.
The custom dimension is available in My Dashboards widget settings.
Edit or delete a custom dimension
You can edit a custom dimension from the custom dimensions area or from the Group by selector in widget settings.
To edit or delete a custom dimension from the custom dimensions area:
- In AppsFlyer, go to My Dashboards.
- Click the Menu icon > Custom dimensions.
- Select the custom dimension.
- Do one of the following:
- To edit the custom dimension, update the settings and click Save.
- To delete the custom dimension, click the Delete icon.
To edit a custom dimension from widget settings:
- In AppsFlyer, go to My Dashboards.
- Open the dashboard and widget you want to update.
- Open the widget settings.
- In Group by, open the dimension selector.
- Hover over the custom dimension.
- Click the Edit icon.
- Update the custom dimension.
- Click Save.
Use a custom dimension in a widget
Custom dimensions can be used in all widgets in My Dashboards as group-by dimensions and widget-level filters.
To use a custom dimension in a widget:
- In AppsFlyer, go to My Dashboards.
- Open the dashboard and widget you want to update.
- Open the widget settings.
- To group data by a custom dimension, select the custom dimension in Group by.
- To filter data by a custom dimension, select the custom dimension in Filters.
- Click Apply.
Click Save.
Traits and limitations
| Trait | col b |
|---|---|
| Availability | Custom dimensions are available to advertiser and agency accounts. They aren’t available to ad network users. |
| Supported metrics | Custom dimensions support LTV metrics only. |
| Source dimensions | Custom dimensions can be based on the following dimensions: Campaign, Media source, Channel, and Geo. |
| Custom metrics | Custom metrics aren’t supported. |
| Custom dimensions | Up to 30 custom dimensions can be created. |
| Name | Custom dimension names must be 1-50 characters. Supported characters are letters, numbers, spaces, and the following characters: _ . : / = + - @. |
| Description | Custom dimension descriptions are optional and can contain up to 300 characters. |
| Groups | Up to 20 groups can be created per custom dimension. |
| Conditions | Each group can include 1-20 conditions. |
| Operands per condition | Each condition can include 1-10 operands. |
| Values per operand | Operators that support free text, such as contains, starts with, and ends with, support 1 value per operand. The is operator supports 1-50 values per operand. |
| None group | If no matching values are found for the custom dimension, data is grouped under None. |
| Rule priority | If data matches more than 1 value, AppsFlyer applies the first matching value based on the value order. |
| Case sensitivity | Rules aren’t case-sensitive. Uppercase and lowercase letters are treated the same. |
Order table data by metric
In table widgets, you can order data by a specific metric to control which rows are shown first. This helps you focus on the highest-performing campaigns, media sources, apps, or other selected group-by dimensions based on the metric that matters most to your analysis.
By default, My Dashboards orders table data using the default table ordering logic. When you choose a metric to order by, AppsFlyer fetches and displays the top rows based on the selected metric.
Limitations
Some metrics don't support ordering. Ordering isn't currently supported for:
- Custom metrics
- Calculated metrics
- Some cohort metrics
SKAN data
SKAN and AppsFlyer data scope differences
The following table explains key differences between SKAN data and AppsFlyer attribution data. Use this information to understand how SKAN affects the metrics available in My Dashboards.
| Difference | AppsFlyer | SKAN |
|---|---|---|
| Platform | All | iOS |
| Attribution types |
|
|
| Ad revenue | Available | Limited; depends on the mediation partner. |
| Apple Ads (Search Ads) | Available | Supported for SKAN attribution |
| Owned media | Available | Not applicable to SKAN attribution |
| Web-to-app | Available | Available for SKAN 4 attribution |
| Currency | App-specific currency | USD |
You can explore a wide range of SKAdNetwork (SKAN) metrics directly in My Dashboards, allowing you to view most of your iOS performance (SKAN, Classic, and SSOT) all in one place. Advanced users who need longer post-install windows or null CV data can still use SKAN Overview for deeper insights.
Available SKAN metrics
| Catagory | Metric name | Formula / notes | Period |
|---|---|---|---|
Metrics |
Attributions |
Includes only installs, new and redownloads |
N/A |
| Metrics | Conversion Rate |
SKAN Attributions / Clicks |
N/A |
| Metrics | eCPI |
SKAN Attributions / Cost | N/A |
| Metrics | IPM |
(SKAN Attributions × 1000) / Impressions |
N/A |
| Metrics | Revenue |
|
D1-D2 |
| Metrics | ARPU | SKAN Revenue / SKAN Attributions |
D1-D2 |
| Metrics | ROAS | SKAN Revenue / Cost |
D1-D2 |
| Metrics | ROI | (SKAN Revenue 9 Cost) / Cost |
D1-D2 |
| In-App Events | Unique users |
D1-D2 | |
| In-App Events | Count |
D1-D2 | |
| In-App Events | Average Count |
SKAN event Count / Attributions |
D1-D2 |
| In-App Events | Conversion Rate |
SKAN event Unique Users / SKAN Attributions |
D1-D2 |
| In-App Events | CPA | SKAN event Unique Users / Cost |
D1-D2 |
| In-App Events | Revenue | SKAN event Revenue |
D1-D2 |
Supported dimensions
- App ID
- Media source
- Campaign and Campaign ID
- Adset
- Adset ID
- Ad
- Ad ID
- Agency
- Attributed touch type
- Attribution type
How to use
Cross-platform dashboard
Intro
Traditionally, attribution has been device-centric, associating events and conversions with individual devices. With the new cross-platform model, this can be shifted to user-based attribution. User interactions across multiple devices and platforms are unified using a single identifier: the Customer User ID (CUID). Providing clearer insights into the full user journey, improved attribution accuracy, and better-informed marketing decisions.
Prerequisites
To set up cross-platform attribution, you need to apply a few settings in AppsFlyer and implement specific SDK functions in your app code.
- In AppsFlyer, assign your apps to a product line, opt in to cross-platform attribution, re-engagement cross-platform attribution, and specify the inactivity restoration window. For more information, see Set up a product line and Cross-platform re-engagement attribution.
-
In your app, set the AppsFlyer SDK to send events with CUIDs. For developer instructions, see Set Customer User ID.
You can also send CUIDs via server-to-server (S2S) integration.
Dashboard overview
To view the cross-platform dashboard, either select the cross-platform template or create a custom dashboard.
Below is an overview of the cross-platform template components.
Top bar
From the top menu bar, you can select the Product line, View type, Date range, and other filters.
The current view types are Unified and User Acquisition.
Widgets
By default, the template comes with the widgets listed below. However, you can add, modify, or remove widgets from your dashboard. Learn more.
- User acquisitions - User acquisitions count distinct customer user IDs (CUIDs) whose first acquisition falls within the selected date range, deduped across platforms.
- Platform activations - Platform activations count total new platform groups whose cross-platform attribution occurred in the selected date range, summed across users. For each CUID, each platform group is counted at most once.
- ROAS Day 30 - Return on ad spend measured 30 days after the user’s attribution date.
- Total revenue Day 30 - Total revenue generated within 30 days after the attribution date.
- ARPU Day 30 - Average revenue per user over 30 days after attribution date.
- Cost - Total advertising spend attributed to user acquisitions during the selected date range.
- User acquisitions by Platform group - Total new users acquired in the selected attribution range, by platform group.
- Total revenue Day 30 by Platform group - Total revenue day 30 reported in the selected attribution range, by platform group.
- Platform activations by Platform group - Total new platform groups activated, summed across users, by platform group.
- User acquisition by App and Source - Total new users acquired in the selected attribution range, by app and source (organic/non-organic).
-
Re-engagements - Re-engagements count total eligible cross-platform re-engagement conversions attributed to the media source that brought an existing user back, across platforms, within the selected date range.
Note: When cross-platform re-engagement attribution is enabled, dashboard results can reflect both the original acquisition source and the media source credited with cross-platform re-engagement, depending on the selected metric, widget, and attribution context.
Metrics and Dimensions
All the metrics found in the My Dashboards can be used for Cross-platform attribution. There are some unique metrics and dimensions that are only relevant to Cross-platform attribution.
Note
Note: When adding a metric to the dashboard, ensure that you select a cross-platform attribution method to reflect user-based attribution rather than device-based attribution.
Data is available from November 1, 2025, or the date you create your Product Line and opt in to cross-platform attribution.
They are:
- Platform - the platform the app is running on such as Android, iOS, Samsung, LG, Roku, etc.
- Platform group - An aggregate of all the platforms into groups. For example, a mobile platform group would consist of Android and iOS. A CTV platform group would consist of Roku, Samsung, LG, etc. see the full list here.
- Product line - platform-specific apps that belong to a single brand. See more details here
Limitations
| Name | Description |
|---|---|
| Cohort aggregation | Cohort aggregation is limited to daily. |
| Retargeting and re-engagement |
Starting May 1st, 2026, cross-platform cohorts can also be based on the user's re-engagement date, the date of a new conversion attributed to the user after their initial acquisition. This is in addition to the existing cohort based on the user's acquisition date (the first time AppsFlyer records their CUID within the Product Line). |
| Data availability | Data is available from November 1, 2025 or the date you create your Product Line and opt in to cross-platform attribution. |
| Data freshness | Daily. Data can take up to 8 hours after midnight UTC to be available. |
View dashboard
To view your analytics dashboard:
- In AppsFlyer, from the side menu, go to My Dashboards.
- Select a dashboard to view from the list of pinned and recently viewed dashboards.
- If the dashboard view you want isn't in the list of pinned and recently viewed dashboards, at the top of the dashboard that's currently showing, select the one you want to view from the dropdown.
- Select the apps, view type, date range, and display filters.
My Dashboards preferences
My Dashboards preferences are global settings that apply to the whole Dashboard. Use them to control dashboard layout behavior, visual appearance, and how data is displayed.
To set My Dashboards preferences:
- In AppsFlyer, go to My Dashboards.
- Click the three dots
next to Create new.
-
Select Preferences.
Theme
Choose the dashboard theme. Select Light or Dark mode.
Auto-save
Saves layout changes and widget adjustments automatically.
Note: Filter changes aren’t auto-saved and must be saved manually to apply the next time you open the dashboard.
Data labels
Shows numerical values directly on charts and graphs. When disabled, charts are shown without inline values.
Changes to preferences take effect immediately.
Concepts
Metrics
The metrics available for widgets (tables, KPIs, and charts) are described in the following table.
Custom metrics
Define your own metrics using custom metrics. Custom metrics let you tailor data analysis to your unique business needs by defining calculations based on existing data. They provide more control and flexibility than standard metrics, enabling you to combine multiple metrics, create projections, and customize KPIs.
Custom metrics are compatible with all widget types in My Dashboards, including tables, charts, and KPIs. Learn more.
| Metric | Description |
|---|---|
| Clicks | Number of click engagements. This metric includes all click engagement types, including engaged_click, click_unspecified, and click_to_app. |
| Impressions | Number of impression engagements. This metric includes all impression engagement types, including view, engaged_view, impression_unspecified, and listening. |
| IPM |
Attributions Per Mille measures the number of attributions per 1,000 impressions. Formula: (Attribution * 1000) / Impressions
|
| Cost | Campaign cost reported to AppsFlyer via click and/or API. |
| Click-to-install rate (%) | Click-to-install conversion rate. The rate excludes installs with no available click data Formula: Attributions / Clicks * 100 |
| CTR | Click-through rate. Formula: Clicks / Impressions |
| Attributions |
|
| Assisted installs | Engagements that led to installs eventually attributed to other media sources or campaigns. Example: A user clicks 2 ads. The install is attributed to the last touchpoint; earlier touchpoints get an assisted install. |
| eCPI | Average effective cost per install (attribution). Formula: Cost / Attributions |
| CPM | Cost per mille (1000 impressions). Formula: (Cost / Impressions) * 1000 |
| CPC | Cost per click. Formula: Cost / Clicks |
| Total revenue | In-app purchase, subscription, and ad revenue reported to AppsFlyer. |
| Active Users |
The number of users who opened the app at least once within the chosen time range. If daily time granularity is selected, it's DAU. If monthly is selected, it's MAU. For information about querying raw data reports for DAU and MAU, see: Calculate daily and monthly active users (DAU and MAU). |
| Active Users last 31 days |
Monthly active users (the number of unique users who opened the app at least once) during the past 31 days (not calendar month). Only available when viewing in UTC timezone. Note: Active Users last 31 days must be applied with a Date grouping |
| DAU/MAU |
DAU/MAU measures the rate of user stickiness. Formula: Daily active users / Active users in the last 31 days. Only available when viewing in UTC timezone. Note: DAU/MAU must be applied with a Date grouping |
| ARPU | Average revenue per user. Formula: Revenue / Unique users (users = attributions). |
| ROI | Return on investment. Formula: (Revenue - Cost) / Cost * 100 |
| ROAS | Return on ad spend. Formula: Revenue / Cost * 100 |
| Gross profit | Gross profit. Formula: Revenue - Cost |
| Sessions | Number of times the app is launched, brought to the device foreground, or other method set by the developer. |
| Average sessions | Number of times per attribution that the app is launched, brought to the device foreground, or other method set by the developer. Formula: Sessions / Attributions |
| Retention rate (%) | On-day percentage of unique users with a session. Formula: On day number of unique users with a session / Conversions * 100 |
| Uninstalls rate (%) |
|
| Uninstalls |
|
| View-throughs | Number of attributions after users view an ad (VTA). |
| Click-throughs | Number of attributions after users click on an ad (CTA) |
| Platform activations (cross-platform) | Platform activations count total new platform groups whose cross-platform attribution occurred in the selected date range, summed across users. For each CUID, each platform group is counted at most once. |
| Cross-platform | cross-platform metrics that report unique users use Customer User ID (CUID) when available, and fall back to AppsFlyer ID when CUID is missing. User acquisitions and Platform activations always count distinct CUIDs only. |
| Event metrics | |
| Event name |
The name of the in-app event to show in a widget. Note: Event names are case-sensitive. Therefore, make sure the event name you select in the dashboard exactly matches the letter casing of the event sent to AppsFlyer. For example, if your app sends "AF_purchase", you can't select "af_purchase" as the letter casing doesn't match. |
| Unique users | Number of unique users (attributions) who perform the event. |
| Conversion rate (%) | Percentage of unique users (attributions) who perform the event. Formula: Event unique users / Attributions x 100 |
| Revenue |
|
| eCPA | Effective cost per action (event). Formula: Cost / Event unique users |
| Count |
|
| Average count | Average number of times this event was performed per attribution. Formula: Event count / Attributions |
| Average revenue | Average revenue from this event per attribution. Formula: Event revenue / Attributions |
Periods
A period is the timeframe you want a particular metric to measure. Period options are described in the following table.
| Period | Description |
|---|---|
| Actual | User activity within the selected date range, regardless of when the app was installed. |
| LTV | The lifetime value (LTV) of users who installed the app during the selected date range. |
| D1 and D2 | For SKAN data only. Includes installs and in-app events occurring within the first and second day (D1 and D2) after install. Data is modeled using AppsFlyer’s null conversion value (CV) modeling. |
| D0-D180 | Value of users during particular cohort days post-install. D0 is the day of install. |
| D2 and D7 | For SSOT and SKAN, you can see the value of users on Day 2 and Day 7 post-install. |
Calculation
For cohort data, you can select from the following calculation options:
- Cumulative: The cumulative or running total of the metric. Meaning Cohort D3 shows totals for Cohort periods 0-3.
- On day: The value of the metric for that day only. Meaning Cohort D3 shows only the metrics that occurred on D3 post-install; not counting what happened in the days before.
Attribution method
The attribution method determines which data contribute to a metric. Meaning, the metric will display data for attributions that were attributed via your selected attribution method. There are 3 attribution methods to select from:
| Attribution method | Description |
|---|---|
| Single Source of Truth (SSOT) |
Note: If you select SSOT for iOS apps, you must have SSOT configured in SKAN Conversion Studio. Otherwise, incorrect data may display. |
| Classic attribution |
|
| SKAN |
|
| Cross-platform |
|
Filter and group by dimensions
The dimensions available to filter and group metrics by are described in the following table.
Note: Filters are available at both the dashboard level and individual widget level. Filters at the widget level also take into account filters set at the dashboard level. If there’s a conflict, data doesn’t display.
Custom dimensions can also be used to group and filter widget data. Custom dimensions are created from existing dimensions and appear in widget settings after they’re saved.
| Dimension | Remarks |
|---|---|
| Ad | |
| Ad ID | |
| Adset | |
| Adset ID | |
| App | Apps available in the widget level filter are based on the apps selected at the dashboard level filter. |
| App version | The version of the app installed by the user. Available for Retention rate, Retention, and Attributions. Data is available only for closed days (real-time is not supported). |
| OS version | The version of the operating system running on the user’s device. Available for Retention rate, Retention, and Attributions. Data is available only for closed days (real-time is not supported). |
| Attributed touch type | Click or impression |
| Attribution method | |
| Attribution type |
|
| Campaign | |
| Campaign ID | |
| Channel | Not available for CTV, PC, and console platforms. |
| Geo | |
| Date | |
| Engagement type |
The type of engagement reported for the touchpoint. Available values can include:
Note: If the engagement_type parameter is missing or mismatched, it can default to click_unspecified or impression_unspecified |
| Week | Weekly granularity is the week of the year |
| Month | Monthly granularity is the month of the year |
| Media source | |
| Agency | |
| Site ID | |
| Source | Organic or non-organic |
| Store product page | iOS apps only. |
| Install app store | Populated in the context of multi-store Android attribution. |
| Keywords |
Search keywords provided by the integrated partners. Note: Only available for D0-D180 cohort periods. |
| Revenue type |
In-app purchase or Ad revenue. Note: Only available for D0-D180 cohort periods. |
| Platform | The platform the app is running on such as Android, iOS, Samsung, LG, Roku, etc. |
| Platform group | An aggregate of all the platforms (see Platform above) into groups. For example, a mobile platform group would consist of Android and iOS. A CTV platform group would consist of Roku, Samsung, LG, etc. see the full list here. |
SSOT supported dimension metrics.
| Dimension | Remarks |
|---|---|
| App ID | |
| Attributed touch type | Click or impression |
| Attribution type |
|
| Campaign | |
| Campaign ID | |
| Geo (odeled) | |
| Date | |
| Media source | |
| Source | Organic or non-organic |
Metrics breakdown support
Not all metrics in My Dashboards support all groupings. Metric compatibility depends on the metric configuration, including period, time breakdown, and the attribution method.
See below which groupings are supported for each metric set.
Installs, Re-attributions, Re-engagements
| Period | Time breakdown | Attribution method | Supported dimensions |
|---|---|---|---|
| - | Daily, Weekly, Monthly | Classic | All dimensions supported |
Cost, impressions, clicks, CTR, Click-to-install rate, IPM, eCPI
| Period | Time breakdown | Attribution method | Unsupported dimensions |
|---|---|---|---|
| - | Daily | - | Product line, Platform, Platform group, Conversion type |
Click Through, View Through
| Period | Time breakdown | Attribution method | Unsupported dimensions |
|---|---|---|---|
| - | Daily | Classic | Product line, Platform, Platform group, Conversion type, App version, OS version |
Total revenue, ROAS, ROI, ARPU, gross-profit, Sessions
| Period | Time breakdown | Attribution method | Unsupported dimensions |
|---|---|---|---|
| LTV | Daily | Classic | Product line, Platform, Platform group, Conversion type, App version, OS version |
| Actual | Daily | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page, Engagement type |
| D0–1 | Daily | SKAN | Product line, Platform, Platform group, Conversion type |
| D2, D7 | Daily | SSOT | Product line, Platform, Platform group, Conversion type |
Total revenue, ROAS, ROI, ARPU, gross-profit, Sessions, Retention rate
| Period | Time breakdown | Attribution method | Unsupported dimensions |
|---|---|---|---|
| D0–180 | Daily | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page, Engagement type |
| W0–156 | Weekly | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page |
| M0–36 | Monthly | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page, Engagement type |
Note: Retention rate is available only for cohort-based metrics.
In-app events: Unique users, Count, Revenue, eCPI, Conversion rate, Average count
| Period | Time breakdown | Attribution method | Unsupported dimensions |
|---|---|---|---|
| LTV | Daily | Classic | Product line, Platform, Platform group, Conversion type |
| Actual | Daily | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page, Engagement type |
| D0–180 | Daily | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page, Engagement type |
| W0–156 | Weekly | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page, Engagement type |
| M0–36 | Monthly | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page, Engagement type |
| D0–1 | Daily | SKAN | Product line, Platform, Platform group, Conversion type |
| D2, D7 | Daily | SSOT | Product line, Platform, Platform group, Conversion type |
Active users
| Period | Time breakdown | Attribution method | Supported dimensions |
|---|---|---|---|
| Actual | Daily | Classic | App, Media source, Campaign, Campaign ID, GEO, Agency |
| Actual | Monthly | Classic | App, Media source, Campaign, Campaign ID, GEO, Agency |
Active users last 31 days
| Period | Time breakdown | Attribution method | Supported dimensions |
|---|---|---|---|
| Actual | Daily | Classic | App, Media source, Campaign, Campaign ID, GEO, Agency |
DAU/MAU
| Period | Time breakdown | Attribution method | Supported dimensions |
|---|---|---|---|
| Actual | Daily | Classic | App, Media source, Campaign, Campaign ID, GEO, Agency |
| row 2 cell content | row 2 cell content | row 2 cell content |
Uninstalls
| Period | Time breakdown | Attribution method | Supported dimensions |
|---|---|---|---|
| LTV | Daily | Classic | Product line, Platform, Platform group, Conversion type |
| D0–180 | Daily | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page |
| W0–156 | Weekly | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page |
| M0–36 | Monthly | Classic | Source, Product line, Platform, Platform group, Install app store, Store product page |
Assisted installs
| Period | Time breakdown | Attribution method | Supported dimensions |
|---|---|---|---|
| - | Daily | Classic | App, Media source, Campaign |
SKAN duplicates
| Period | Time breakdown | Attribution method | Supported dimensions |
|---|---|---|---|
| - | Daily | SSOT | Product line, Platform, Platform group, Conversion type, App version, OS version |
Multiple metrics in a table
- If some metrics aren’t supported by the selected grouping, only those metrics display N/A.
Supported metrics continue to show data. - If a metric isn’t applicable for the selected configuration, the following message appears:
“This metric isn’t applicable for the selected groupings or filters.”
Multiple groupings in a table
When using two groupings:
- The primary grouping determines which data producer is used.
- If the secondary grouping belongs to a different data producer, no data is shown for the secondary grouping.
Date range, view type, and time breakdown
Users can configure the date range at both the dashboard level and widget level.
Dashboard level
- By default, the dashboard follows the Per widget date range. In this mode, each widget displays data according to its individual settings.
- The selected time range for each widget is always displayed as a secondary title.
- When applying a date range other than Per widget, all widgets in the dashboard update to reflect the chosen time frame.
Widget level
- Each widget has an independent date picker, allowing users to define custom time ranges for specific visualizations.
Each widget has an independent view type selector, allowing users to define a custom view type for specific visualizations.
- After saving widget settings, the selected date range is preserved and will appear as Per widget when returning to the dashboard.
After saving widget settings, the selected view type is preserved and appears as Per widget when returning to the dashboard.
- Each widget can be grouped by a different time breakdown: daily, weekly, or monthly.
Stacked area charts
Stacked area charts let you see how different segments contribute to a total metric over time. Use them when you group a time-based chart by a dimension such as Media source, Campaign, Geo, or Revenue type.
For each point in time, the chart stacks the values of all segments to show the total metric and how it’s distributed across segments. This helps you quickly answer questions like:
- Which media sources contribute most to Cost over time?
- How does the mix of ad revenue vs. in-app purchase revenue change over time?
Stacked area charts support two display modes:
- Absolute (#) - Shows the raw values of the selected metric over time. The height of the stacked area represents the total metric value, and each colored layer shows the segment’s contribution.
- Percentage (%) - Normalizes each point in time to 100%. The chart shows the share of each segment out of the total metric, making it easy to see how the distribution changes over time, even if overall volume is increasing or decreasing.
To use a stacked area chart:
- In Chart settings, select a metric (for example, Cost or Revenue).
- In Group by, select a dimension such as Media source, Campaign, or Geo.
- In the chart type dropdown, select **Stacked area**.
- Use the # / % toggle to switch between Absolute and Percentage views, depending on whether you want to focus on volume or on proportional breakdown.
Combo charts
For bar, column, line, and combo charts, you can add multiple metrics.
In general, metrics fall into 1 of 3 types:
- Number (#), for example, sessions or in-app event count.
- Currency ($), for example, cost or revenue.
- Percentage (%), for example, conversion rate.
When there are multiple metrics, then by default:
- If they are all of the same type, all metrics are displayed using a single Y axis.
- If the metrics are of different types, an additional Y axis is added to the right.
- Each Y axis's scale is defined by the minimum and maximum values of the metrics it represents.
- If the chart has 2 metric types, each Y axis represents one of the metric types. For example, if you select eCPI ($) and Attributions (#), the left Y axis displays eCPI values in dollars with the range defined by the lowest and highest eCPI values. And the right Y axis displays Attributions in numbers with its respective range. See example image above.
- If the chart has 3 metric types, Currency and Number metrics share the same Y axis. Percentage metrics are displayed on a separate Y axis.
You can also manually assign each metric to either the left or right Y axis. For example, you can assign “Impressions” (#) to the left Y axis and “Revenue” ($) to the right Y axis. Note: Metrics added to a chart after a custom assignment default to the left Y axis unless reassigned.
Compare to
The "Compare to" feature is available in line charts. It allows you visualize and identify trends, changes, patterns, or anomalies by displaying the selected data and its historical counterpart side by side for easy comparison.
You can choose compare the selected chart metrics with data from a previous day, week, month, quarter, year, or a custom timeframe.
The current data is shown as a solid line and data from the previous period is shown as a dashed line.
Compare in tables
The comparison in tables feature is available in table widgets. When used, the table displays the previous period’s value next to the current value, together with the percentage change. This makes it easy to see how performance is trending across segments.
The comparison adds:
A Previous column showing the metric value in the comparison period
A % Change indicator showing the difference between the two periods
Green/red coloring based on whether the change is positive or negative for the selected KPI
You can also sort the table by percentage change to quickly surface segments with the largest increases or decreases.
Comparison period options
Depending on the selected date range, the following comparison periods are available:
Rolling window: Compares the selected period to the immediately preceding period of the same length.
Previous day: Compares yesterday to the day before.
Previous week: Compares the last 7 days to the previous 7-day period.
Previous month: For a last-month range, compares each date to the date exactly 4 weeks earlier (same number of days, not necessarily calendar month).
Custom: When selecting a custom end date, the previous period automatically matches the same number of days.
How to add a compare to in tables
- In a table widget, go to Edit table.
- In the widget settings header, click Compare to.
- Select a period. The compared period should be chosen according to the selected period.
- Save changes.
Use case example
For customers who optimize according to the ROAS D7 KPI:
Add a comparison to the previous week and sort by % Change DESC to see which segments had the largest ROAS D7 increase or decrease relative to the previous week.
Conditional formatting
Conditional formatting helps visualize performance trends in your dashboard at a glance. By applying color-based indicators directly on your table widgets, you can quickly identify patterns, outliers, and values that require attention, without manually scanning through numbers.
Available formatting types
You can apply one of the following formatting options to your table cells:
- Heatmap: Colors each cell on a 2-color gradient (for example, white to blue) based on its value relative to other cells in the same column. This makes it easy to quickly identify high and low values.
- Traffic light: Uses a 3-color gradient (for example, red, yellow, green) to indicate performance status across metrics, making it easy to identify areas that meet, approach, or fall below defined goals.
-
Rule-based coloring lets you define your own conditions using operators such as "between," "greater than or equal to", or "less than." Set the numeric values for each rule and assign specific colors to visualize your business logic.
For example, when analyzing ROAS, you might create the following rule-based conditions
- ROAS ≥ 40% → Green (strong performance).
- ROAS between or equal to 25–39% → Yellow (on track).
- ROAS < 25% → Red (below expectations).
This approach highlights which activities deliver strong results, allowing faster, data-driven decisions on campaign optimization and budget allocation.
How to apply conditional formatting
- Go to your dashboard and open the relevant table.
- Hover over the metric column that you want to apply coloring to.
- Click the three dots menu and select Conditional formatting.
- Choose your preferred formatting type (Heatmap, Traffic light, or Rule-based) and edit the conditions if needed.
View types
Data in the dashboard is presented via view types Unified, User acquisition, and Retargeting as described in the figure that follows.
These view types contain LTV data as follows:
-
Unified: display data under the last touch media source bringing the user according to AppsFlyer double attribution rules. Meaning that LTV occurring during re-engagements displays under the retargeting media source and not under the UA media source.
- Shows all event data: new installs (organic and non-organic), re-engagements, re-attributions.
- Re-engagements and re-attributions events are attributed to the retargeting media source and their parallel user acquisition events are deduped.
-
User acquisition: attributed to a user acquisition media source including LTV occurring during re-engagement windows.
- Includes new installs (organic and non-organic), and re-engagements (attributed to the original install media source).
-
Retargeting: attributed to a retargeting media source for events occurring:
- During a re-engagement window.
- As a result of re-attributions.
Note: The retargeting view doesn't contain any cost-related metrics. Use the User Acquisition and Unified views to get the cost-related metrics
Late event dates
Understand event dates and late events
Some dashboard widgets aggregate data using a daily processing service that runs once a day, at around 02:00 UTC. Because of this, in-app events that arrive shortly after midnight UTC can display an event date that differs from the date you expect in the dashboard.
What are late events?
Late events are in-app events arriving to AppsFlyer between 00:00 and 02:00 UTC.
How dashboards determine the event date
Dashboard event dates are affected by:
Event arrival time (when AppsFlyer receives the event)
Dashboard time zone view (for example, UTC or a selected local time zone)
Events that arrive between 00:00–02:00 UTC can be displayed with the previous UTC date.
Example: Event date differences between UTC and UTC-8
| Event arrival time (UTC) | Event date in UTC view | Event date in UTC-8 view |
|---|---|---|
| Between 00:00 and 02:00 on 13.1.26 | 12.1.26 | 12.1.26 |
| After 02:00 on 13.1.26 | 13.1.26 | 12.1.26 |
Note: If your selected time zone is behind UTC (for example, UTC-8), the dashboard can display the event date as Day-1 compared to the UTC view, especially around midnight and during late-event processing.
Additional information
Dashboard templates
Dashboard templates are a starting point if you don't have your own customized dashboards (with customized names) yet. The templates have concise layouts that can be customized further with all My Dashboards widgets, dimensions, and metrics, including cohort and retention.
The templates available are:
- Performance Analysis: Designed for everyday marketing decisions, Performance Analysis is ideal for Android apps or other apps that don't have SKAN/SSOT data and use classic AppsFlyer attribution methods.
-
Single Source of Truth. Designed for everyday marketing decisions, the Single Source of Truth dashboard is ideal for:
- iOS apps that enabled SSOT.
- Multi-app analysis where all iOS apps enabled SSOT.
- Marketing Overview. Designed for team leads, CMOs, or other account-level personas who need to analyze data at a less granular level. The template showcases the multi-app analysis features and high-level metrics available.
- Activity View. Designed for high-level monitoring, the Activity view template helps marketers quickly assess app performance, spot engagement trends, analyze revenue, and detect issues early, enabling faster, data-driven decisions across campaigns and platforms.
- Cross-platform. Designed to provide unified, user-based insights across devices and platforms, the Cross-platform dashboard helps you analyze the full customer journey using Customer User IDs (CUIDs), with metrics deduped across apps and platforms for accurate, user-level attribution.
-
Owned media. Designed to help marketers measure the performance of their owned channels, such as email, social media, and web. The template provides an out-of-the-box view of key KPIs, including user activity, retention, and lifetime revenue, enabling clear comparison and optimization across owned media efforts.
To view owned media insights:
1. Add a Media source filter.
2. Select your owned media sources. Remarketing vs. New Installs. Designed to compare retargeting and user acquisition performance side by side, this template helps you evaluate re-engagement efficiency separately from acquisition performance.
Remarketing Optimization. Designed for daily retargeting campaign monitoring, this template helps you view performance KPIs, optimize by media source, and improve overall retargeting campaign efficiency.
See also view dashboards.
Migration to My Dashboards from Events, Overview, and Activity dashboards
My Dashboards replaces the legacy Events, Overview, and Activity dashboards. Use My Dashboards to view the same analytics data with more flexible templates, filters, groupings, custom metrics, enhanced tables, and shared or private views.
After June 30, 2026, the legacy Events, Overview, and Activity dashboards will no longer be accessible.
Match legacy dashboards to My Dashboards
| Legacy dashboard | Use this template or view in My Dashboards | Use it to |
|---|---|---|
| Events | Events template | Analyze in-app event performance, revenue events, and event-based KPIs. |
| Overview | Performance Analysis or Marketing Overview template | Analyze marketing performance, campaign results, and high-level business KPIs. |
| Activity | Activity view | Analyze activity data, active users, sessions, and activity trends. |
Open the replacement template or view
To open the replacement template or view:
- Go to My Dashboards from the left navigation menu.
- Open the relevant template or view:
- For Events data, open the Events template.
- For Overview data, open the Performance Analysis or Marketing Overview template.
- For Activity data, open the Activity view.
- Select the date range, metrics, filters, and groupings you want to use.
- Save the dashboard as a shared or private view.
Export data
You can export large data from your dashboard to a CSV file for further analysis or to share insights with your team. Enabling complete, high-volume reports for your weekly, monthly, or quarterly analyses.
- Tables containing up to 100,000 rows can be downloaded.
- Data is ready for download within 15 minutes.
How it works
- Select Export from your dashboard.
- The export runs asynchronously in the background.
- The file will be ready within 15 minutes.
- When ready, download the CSV from the Files drawer.
- Exported files remain available for 24 hours, after which they’re automatically deleted.
- The file drawer can be minimized or dismissed at any time.
Agency and ad networks
The KPIs available in My Dashboards depend on the permissions granted by the advertiser to agencies and ad networks. These permissions control which data sources, metrics, and attribution views partners can access.
Agency access
When advertisers grant Agency permissions, agencies can view performance data attributed to the campaigns they manage. Access to in-app events and revenue is available by default. Depending on additional permissions, agencies may also see organic and aggregated data.
Based on the permissions granted, agencies can view the following KPI categories in My Dashboards:
LTV, Cohort, and Retention metrics
Activity (Actual) metrics, including revenue, in-app events, and active users
SSOT (Single Source of Truth) metrics, when enabled
-
SKAN metrics, when applicable
Note: Agencies can view only the KPIs included in the permissions granted by the advertiser.
Ad network access
When advertisers grant ad network permissions, ad networks can view performance data related to the traffic they deliver. Unlike agencies, visibility into in-app events and revenue depends on the specific permissions enabled by the advertiser.
Based on the permissions granted, ad networks can view:
LTV, Cohort, and Retention metrics
Activity (Actual) metrics, including revenue, in-app events, and active users
SSOT (Single Source of Truth) metrics, when enabled
SKAN metrics, when applicable
Note: Advertisers control whether in-app events and revenue are available. Ad networks can see data of traffic associated with their media source.
Configure settings
Advertisers manage agency and ad network access in the Permissions tab in the Active integration page.
Traits and limitations
| Trait | Description | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| SSOT |
|
||||||||||
| Cohort metrics |
|
||||||||||
| Export table data | Limited up to top 1000 rows | ||||||||||
| Table | Max columns: 100 | ||||||||||
| Filter dimensions | Filters at the widget level also take into account filters set at the dashboard level. If there’s a conflict, data doesn’t display. | ||||||||||
| My Dashboards | The My Dashboards section in the side menu shows up to 7 of your most recently viewed or pinned dashboards. | ||||||||||
| Assisted installs |
|
||||||||||
| Multiple apps |
|
||||||||||
| Attribution dates date range | If your computer is set to a timezone where it's a specific day, and the app timezone in AppsFlyer is for a timezone where it's still the previous day, "Today" isn't an option in the date range picker. For example, if, according to your computer settings, it's Monday, but according to your app timezone in AppsFlyer, it's still Sunday. | ||||||||||
| Geo | Aggregation by geo is based on the geo where the install occurred. | ||||||||||
| Multiple metrics |
|
||||||||||
| Charts | When grouping by a dimension, charts can display up to dimension values. For example, when grouping data by media source, the top 10 media sources display. | ||||||||||
| Activity metrics |
|
||||||||||
| Active Users, Active Users last 31 days, and DAU/MAU |
The total values might be lower than the sum of the values when grouped by any dimension. The total is the distinctive number of users, while in some cases a user can be counted in more than one grouping. For example, if a user performed a UA session and a reengagement session within the time range, the user will be counted under 2 different media sources (the retargeting network and the UA network/organic). |
||||||||||
| In-app events table or in-app events charts |
|
||||||||||
| Historical data |
|
||||||||||
| Data freshness |
Real-time data is not available for weekly and monthly cohorts, and for grouping or filtering by App version and OS version. Data will only show after it has been completed (meaning at the end of the day, week or month). However, data, where some of the install data has been completed, such as some data has finished (post-install time) and others haven't started yet, will be displayed. |
||||||||||
| Cohort periods |
|
||||||||||
| Week and Month time breakdowns |
|
||||||||||
| Agency and Adnets |
|
||||||||||
| Retention and cohort data | Migrated devices have no install record. As such, they aren't associated with any cohort, and can't be shown in the Retention and Cohort reports. | ||||||||||
Changing app timezone settings |
If you’ve changed your app’s timezone configuration, historical data from before the change is only available when viewing the dashboard in UTC. To access this data, switch the dashboard’s timezone setting to UTC manually. |
||||||||||
| Cross-platform |
|
||||||||||
| Filter and value limit |
All dimension-based filters (for example, Media source, Campaign, Adset, Ad, Site ID, Channel) display up to 2,000 values. If a dimension contains more than 2,000 values, some values might not appear in the list. To view a missing value, first apply a narrowing filter, such as selecting a relevant media source. This reduces the number of possible values and enables the missing value to appear. |
||||||||||
| Compare in tables |
|
||||||||||
| Legacy unattributed organic in-apps mode | If your app uses the legacy Unattributed organic in-apps mode, real-time organic Active Users may appear lower than expected. Values correct automatically after the current day completes. For the most accurate real-time view, we recommend switching to first-install mode. Learn more about Unattributed organic in-apps mode and first-install mode. |
||||||||||
| Table Export data | Table exports include only the first 2 group by dimensions. If a table is configured with 3 or 4 groupings, only the first 2 dimensions appear in the exported CSV file. Additional groupings are ignored. | ||||||||||
| Media source name standardization |
Media source names are standardized to ensure consistent grouping and reporting across My Dashboards. When data is received from partners, incoming values may be transformed before being displayed in the dashboards and metrics. This standardization aligns different naming variations under a single, unified media source name. Examples:
|
||||||||||
| Intraday SRN impressions and clicks | Self-reporting networks (SRNs) don’t update impression and click data on the standard intraday cadence. This data is collected only a few times a day. As a result, impressions and clicks from SRNs might be missing from dashboards during the day. To view complete data for a specific date, review the dashboards on the following day, after the SRN completes its reporting cycles. | ||||||||||
| Conditional formatting |
Rule based coloring:
|
||||||||||
| Heavy affiliate traffic | For apps with heavy affiliate traffic, grouping or filtering impressions or clicks by Ad set, Ad set ID, Ad, Ad ID, or Site ID displays NA. These restrictions apply when daily impressions plus clicks exceed 100 million and do not apply to SRN networks, such as Meta, Google, TikTok, Snapchat, LinkedIn, and others. This limitation affects dashboards and aggregated APIs only. Attribution and raw data are not affected |