Offer events in product scenarios

Mobile apps often implement multi‑step user scenarios, such as:

  • marketing offers;
  • purchases of goods and services;
  • user funnels;
  • ordering steps;
  • applications and approval results;
  • asynchronous S2S results.

To analyze events in multi‑step scenarios, it is recommended to use the Product Flow approach — instead of arbitrary custom events, use offer events marked in accordance with the key stages of product scenarios:

  • offer display;
  • start of ordering;
  • intermediate steps;
  • final result.

Sending offer events is not included in the paid limits for custom events and DSA and does not affect your plan cost.

How offer events data is calculated

Data is transmitted from the SDK for each offer event. All offer events in AppMetrica are linked to users, and the metrics are calculated based on this data.

Events

Event Meaning
offerShown The user saw an offer or proposal
flowStart The user started ordering a product
flowStep An intermediate ordering step
flowResult The final result

Metrics

Metric Description
Offer impressions The number of offerShown events during the reporting period
Users who saw the offer The number of unique users who saw the offer during the reporting period
Flow starts The number of flowStart events during the reporting period
Users who started the flow The number of unique users who started the flow during the reporting period
Flow steps Number of flowStep events during the reporting period
Completed flows Number of flowResult events with a success status during the reporting period
offerShownflowStart conversion Ratio of the number of flowStart events to the number of offerShown events
flowStartflowResult conversion Ratio of the number of successful flowResult events to the number of flowStart events
Average number of steps Average number of flowStep events per scenario

Multi‑step scenarios are mostly used in applications in such industries as:

  • banks;
  • insurance services;
  • telecom apps;
  • booking and travel services;
  • subscription services;
  • delivery services;
  • marketplaces;
  • gaming apps.

For these industries, we have prepared detailed examples of how to implement the main product scenarios; see section Product flow examples.

Migrating from custom events

When using custom events, you may encounter the following problems:

  • identical scenarios are marked up differently;
  • building standard reports is difficult;
  • analytics is hard to transfer between teams;
  • automatic funnel building is impossible;
  • it is difficult to compare the effectiveness of offers and scenarios.

If you are already using custom events, the migration can be gradual: new events can be sent in parallel with existing custom events.

The new standard events do not consume the custom events limit and allow you to verify the correctness of the integration and data completeness before migration.

After verification, sending the corresponding custom events can be disabled.

Set up sending offer events

Set up sending offer events via the SDK

Step 1. Activate the SDK

Make sure that the AppMetrica SDK is activated in your app:

Step 2. Set up sending offer data via the SDK

Select a platform and integration method and set up the appropriate SDK methods:

Debugging

In AppMetrica, it's not possible to segment events into test and non-test ones. If you use the main API key for debugging the collection of data on offer events, the test events are included in general statistics. For this reason, to debug, use a reporter to send data to an additional API key.

Learn more about reporters

Check data in reports

After you set up sending offer events, make sure that the event data flows into the system. The metrics are available in the Offers report.

To build а report, you can select, for example, only users from a specific region or those who have completed certain actions. This can be done using segmentation.

If you didn't find the answer you were looking for, you can use the feedback form to submit your question. Please describe the problem in as much detail as possible. Attach a screenshot if possible.

Contact support Suggest an improvement for documentation