Setting up an MMP
Setting up an MMP consists of three steps:
Step 1. Setting up data collection in the mobile app
If you have already used retargeting based on in-app events in other ad networks, you can skip this step.
Checklist for setting up events in the MMP:- Make sure that the MMP collects events you want to optimize your campaigns for or make retargeting for.
- Before launching smart banners, make sure that you collect the following events: product page viewed, product added to cart, product removed from cart, and product purchased. The events include the IDs of your products.
For the Maximum conversions strategy with the “Cost-revenue ratio” limit, make sure also to set a limit on revenue.
If you don't know how to check the event configuration, contact the app developer or your MMP support.
Data format for Text & Image ads and dynamic ads
All types of markup are supported: regular Events, ECommerce, and In-App purchases.
Data format for smart banners
ECommerce events markup is required. It's available for Android versions higher than 3.16.1 on and iOS versions higher than 3.12.0.
The following events are enough for smart banners to work:
showProductDetailsEvent
addCartItemEvent
removeCartItemEvent
purchaseEvent
Make sure to pass an SKU (product ID) in the ECommerceProduct class of each event. The other parameters are needed to populate the Ecommerce report.
Tracking openings
To make sure that AppMetrica can attribute conversions after clicks on universal or tracking links, set up tracking openings by deeplink.
In SDK version 4.0 and higher, tracking is automatic.
Requirements for the Maximum conversions strategy with a CRR limit
For conversions in this strategy, you can use ECommerce events or In-App purchase markup.
Data format for Text & Image ads and dynamic ads
Rich In-App Events are supported.
Data format for smart banners
The following Rich In-App Events are required:
- Product viewed:
af_content_view
. - Product added to cart:
af_add_to_cart
. - Product removed from cart:
remove_from_cart
. - Purchased:
af_purchase
.
Make sure to add the af_content_id
parameter used to pass the product ID to all the events.
For more information, see your MMP's documentation for implementing the event code.
Requirements for the Maximum conversions strategy with a CRR limit
You need to set up revenue collection in the af_revenue
parameter for in-app events. Instructions for developers:
Data format for Text & Image ads and dynamic ads
All Adjust events are supported.
Data format for smart banners
The format supports events with Partner Parameters (available in the Adjust SDK version 4.0 or higher) that expect offer_id
, which can either be a Product ID or a list of products in JSON format.
AdjustEvent event = new AdjustEvent("VIEWED_CONTENT");
event.addPartnerParameter("offer_id", "10001");
Adjust.trackEvent(event);
AdjustEvent event = new AdjustEvent("PURCHASED");
event.addPartnerParameter("offer_id", "[\"1234\",\"5678\"]");
Adjust.trackEvent(event);
If a product ID is used in event parameters but its name differs from offer_id, you don't need to make any edits to your app — you can edit this value when setting up event transmission to Yandex Direct using Parameter Mapping.
Attribution using deeplink tracking
Adjust needs to support deeplink tracking so it can attribute conversions after clicking to an app. Instructions for developers:
Requirements for the Maximum conversions strategy with a CRR limit
You need to set up revenue collection in your in-app events. Instructions for developers:
Step 2. Setting up transmission of events
Set up transmitting in-app events from the MMP to Yandex Direct to use them for strategy optimization or as retargeting criteria.
For Text & Image ads and dynamic ads
Events are forwarded automatically: no additional settings needed at the MMP level. In the Yandex Direct dashboard, you need to select the events for collecting statistics on mobile app goals.
You can use optimization and retargeting for goals.
For smart banners
- In the app settings, in the Metrika tag binding field, specify the Yandex Metrica tag.
- The username must have access to the tag.
We recommend that you use the tag for the site where you have set up e-commerce: in this case, machine learning algorithms will include products viewed in the app for site users, and the other way round. This helps you increase the effectiveness of retargeting.
General setup rules
- Open the Integrated Partners section and select Yandex Direct.
- Go to the Integration tab.
- Enable Activate partner.
- In the Yandex App ID field, specify the App ID that you obtained when adding your mobile app to Yandex Direct.
- Enable In-app events postback to send events.
Select events and set up SDK Event Name > Partner Event Identifier mapping. Use the EVENT_1, EVENT_2, or EVENT_3 IDs if none of the presets suits you.
- Select Sending option: All media sources, including organic and Send revenue: Values & revenue to transmit revenue and event parameters.
Requirements for smart banners
In the Yandex Ecom Feed Counter ID field, specify the Yandex Metrica tag in 12345 format.
We recommend that you use the tag for the site where you have set up e-commerce: in this case, machine learning algorithms will include products viewed in the app for site users, and the other way round. This helps you increase the effectiveness of retargeting.
Select the events:
af_content_view
>VIEWED_CONTENT
(required).af_added_to_cart
>ADDED_TO_CART
(required);remove_from_cart
>REMOVED_FROM_CART
(recommended).af_purchase
>PURCHASED
(required).
- Select Sending option: All media sources, including organic and Send revenue: Values & revenue to transmit revenue and event parameters.
Select Send revenue: Values & revenue to transmit the revenue.
General setup rules
- Go to the app settings and open Partner Setup.
- Select.
- In the Yandex App ID field, specify the App ID that you obtained when adding your mobile app to Yandex Direct.
- Enable In-App Revenue Forwarding, Parameter Forwarding, and Session Forwarding.
- Set up event transmission in Event Linking by selecting the appropriate name from the list. All settings are specified for iOS and Android separately.
Requirements for smart banners
In the Yandex Ecom Feed Counter field, specify the Yandex Metrica tag in 12345 format.
We recommend that you use the tag for the site where you have set up e-commerce: in this case, machine learning algorithms will include products viewed in the app for site users, and the other way round. This helps you increase the effectiveness of retargeting.
- In the Event Linking section, configure event transmission:
- Product viewed:
Viewed content
(required). - Product added to cart:
Added to cart
(required). - Product removed from cart:
Removed from cart
(recommended). - Purchased:
Purchased
(required).
If, in the event parameters, the Product ID isn't named
offer_id
, click Partner Parameter Mapping. In the FROM APP field, enter the parameter's name in the SDK, and in the TO PARTNER field, specify theoffer_id
.
Step 3. Setting up app links
Use universal links that will lead users to the app if already installed, or to the site if it isn't: this lets you increase the conversion rate for your campaigns.
If you can't or won't set up universal links for some reason, then you can use tracking links.
Setting up universal links
Universal links let you use the same feed for the site, in smart banners, and in dynamic ads.
- General rules for links
-
The app link must be suitable for counting conversions, that is:
- Lead to the app if the app is installed.
- Lead to the site if the app is not installed or the link is clicked on a computer.
- Let the MMP attribute conversions to clicks.
How to check whether universal links are set upUniversal links have the format of a regular link (for example,
avito.ru
) and are enabled on the site and in the app without the MMP's SDK. If the app is installed, paste the link to Telegram or Notes and click it. The app should open.If the app is not installed, you can check whether universal links are installed by uploading the following file to your site and replacing
example.ru
with your domain:A page with text should open or a text file will be downloaded.
How to set up universal linksInstructions for different platforms:
If you can't or won't set up universal links for some reason, then you can use tracking links. They include the MMP's domain (for example,
adj.st
,onelink.me
,redirect.appmetrica.com
), and they are created in the MMP. - Tracking parameters in universal links
-
For the conversion to be attributed to Yandex Direct once you click the universal link in the ad, the link must contain the required tracking parameters. For apps running AppMetrica or Adjust, these parameters are added to the advertising link in the same way and place as UTM tags for web traffic:
At the campaign level, under URL parameters, for Text & Image ads, dynamic ads, and smart banners.
Image ads.
At the ad group level, under URL tracking parameters, for dynamic ads and smart banners.
If you use AppsFlyer, enable cross-server click delivery at campaign setup.
Add the
referrer=reattribution%3D1
parameter to your campaigns.In smart banners and dynamic ads, you can add the parameter at the ad group level without making changes to the feed.
No other changes to the link are required. Clicks will be sent from Yandex Direct to AppsFlyer using the server-to-server tracking method.
Cross-server click sending is enabled when you set up a campaign in Yandex Direct. Start creating a campaign, select a goal for your mobile app. After that, a section will appear below on the page where you can enable sending clicks to your MMP.
Add the following parameters to the universal link:
adjust_ya_click_id={logid}
adjust_campaign={campaign_name}
adjust_t=abc_def
: enter the MMP's tracker token ID (this is the unique identification token automatically created for each tracker in Adjust). Replaceabc
in the case of Android anddef
in the case of iOS. Leave an underscore in the middle. If your app is multi-platform, specify a single MMP ID:adjust_t=abc
. You can use theadjust_tracker
parameter instead ofadjust_t
.
Sample link:
https://example.ru/cars/new/group/bmw/3er/21398591-21398651?adjust_ya_click_id={logid}&adjust_t=abc_def&adjust_campaign={campaign_name}
Make sure to test universal links before using them in your campaign. This way, you can ensure that these links are properly configured and tracked by Adjust and that the intended content is delivered to the user.
See also Universal links FAQs.
Setting up tracking links
We recommend using universal links, but if you can't set them up, you can implement user routing using tracking links, which are created in the mobile tracker interface.
When using tracking links, be sure to update the feed in smart banners and dynamic ads. You'll also need to replace links to products in it with tracking links.
Scenario | Link |
---|---|
Mobile click-through. App not installed |
|
Mobile click-through. App installed | Relevant section or product page in the app. |
Desktop click-through | Relevant section or product page on the site. |
Scenario | Link |
---|---|
Mobile click-through. App not installed |
|
Mobile click-through. App installed | Relevant section or product page in the app. |
Desktop click-through | Relevant section or product page on the site. |
- How to configure
-
Set up deeplink support for Android.
Add:
- Deeplink support in the app.
- Deeplink tracking for Android.
Create a SmartLink tracking link.
In the App Stores field, specify: Google Play, App Store, Fallback (for web).
For each App Store, you need to set a Target link and Deeplink:
- In the Target link field, set a link to the app page in the store or a template in the
https://myshop.ru/{path}
format, replacing{path}
with the path to a specific mobile site page. This way, users who do not have the app will either be sent to the app store or to the mobile site version. - In the Deeplink field, set a template in the
myshop://{path}
format, replacing{path}
with the path to a specific app page. This way, users who have the app will be sent to the desired page in the app. - Use an app-to-app link because it supports settings for universal links.
- In the Fallback field, specify a template in the
https://myshop.ru/{path}
format, replacing{path}
with the path to a specific desktop site page. This way, users who click the link on a desktop will be sent to the desktop version of the site.
SettingsAdd a remarketing tracker with SmartLink.
Example of setting up links used in the Web+App scenario:
If you set up Universal links correctly, an app-to-app link will be displayed — it's the one you should use.
To set up UTM tags and other custom parameters, go to the Smart Link settings and follow the instructions.
Sample link:
https://0000000.redirect.appmetrica.yandex.com/cars/new/group/bmw/3er/21398591-21398651?appmetrica_tracking_id=00000000000000000&referrer=reattribution%3D1&click_id={LOGID}&campaign_id={campaign_id}&path=%2F%20cars%2Fnew%2Fgroup%2Fbmw%2F3er%2F21398591-21398651
For more information, see Tracking links based on Universal Links.
- Updating links in the feed
-
Send the resulting link template to the developer to generate product links in the feed again.
Add a tracking link to the element including the product link. The link must redirect the user to a specific product (either on the site or in the app). For XML/YML feeds, follow the additional requirements.
- How to configure
-
Set up links:
- Samsung OS: URI schemes
Add a OneLink template.
It governs the redirection logic in scenarios for all OneLink links used in ad campaigns:
The app is not installed: The user is redirected to the appropriate app store or a mobile web address.
SettingsInstructions: Complete Steps 1–8 and 10. Depending on the scenario, in Step 6, configure redirection to the app store or a mobile web page. Add a branded domain if needed. Learn more in the AppsFlyer article.
The app is already installed: The user opens the app using Android App Links, iOS Universal Links, or URI schemes.
- For iOS Universal Links, specify the Team ID.
- For Android App Links, specify the SHA256 fingerprint and save the automatically generated code for the intent filter: you'll need it to complete the Android App Links setup.
Settings
Set up OneLink links: These are clickable links that are displayed in ads.
Instructions: Steps 1, 2, 3 are mandatory for your scenario:
Media source: Specify yandexdirect_int (determined by the
pid=yandexdirect_int
parameter).Campaign: Specify the name of the campaign in Yandex Direct (determined by the
c=<campaign name>
parameter).Make sure to enable Retargeting (determined by the
is_retargeting=true
parameter).Deep linking and deferred deep linking to a product page in the app.
Set up each
deep_link_value
: These are names for specific in-app content that users will be directed to. Use dynamic values to generate multiple different deeplinks leading to different content within the app. This way, you won't need to change the app code every time.For more details, see the Unified Deep Linking (UDL) guide for Android and iOS.
Redirect to the site on a click from a desktop.
The URL needed for redirecting desktop users can be added to the link in the
af_web_dp
parameter.Add the
clickid
parameter required for integration with Yandex Direct, with the{logid}
value (clickid={logid}
). For a list of other parameters, go to the guide page.
Settings
- Required link parameters
-
pid=yandexdirect_int
clickid={logid}
is_retargeting=true
You can add UTM tags and other custom parameters in the OneLink template settings.
Sample link:
https://app.appsflyer.com/ru.magnit.express.android?c={campaign_name}&af_siteid={source_type}_{source}&af_adset_id={gbid}&af_ad_id={ad_id}&af_keywords={keyword}&keyword_id={phrase_id}&is_retargeting=true&af_click_lookback=7d&af_reengagement_window=30d&af_inactivity_window=0d&google_aid={google_aid}&android_id={android_id}&af_ad={ad_id}&af_sub1={region_neme}&af_sub2={match_type}_{matched_keyword}&af_sub3={position_type}_{position}&af_sub4={keyword}&af_ip={client_ip}&af_ua={user_agent}&af_lang={device_lang}&af_web_dp=https%3A%2F%2Fdostavka.magnit.ru%2Fexpress%2Fpromotion&af_xp=social&deep_link_value=magnit.dostavka%3A%2F%2Fexpress%2Fpromotion&af_dp=magnit.dostavka%3A%2F%2Fexpress%2Fpromotion&deep_link_sub1=magnit.dostavka%3A%2F%2Fexpress%2Fpromotion&advertising_id={google_aid}&oaid={oaid}&pid=yandexdirect_int&clickid={logid}&af_c_id={campaign_id}
- Optional parameters
-
af_click_lookback
: The attribution window (between the click and opening the app). It's specified in days (for example, 14d). The default value (if you don't pass this parameter) is 7 days.af_reengagement_window
: The re-engagement window (between attribution and conversion). It's specified in days. The default value is 30 days.
- Updating links in the feed
-
Send the resulting link template to the developer to generate product links in the feed again.
Add a tracking link to the element including the product link. The link must redirect the user to a specific product (either on the site or in the app). For XML/YML feeds, follow the additional requirements.
Check the AppsFlyer Help to learn how to enable it.
See also Tracking links based on Universal Links.
- How to configure
-
Set up links for deeplinking in apps.
Set up links for reattribution and deferred deeplinking.
To enable deferred deeplinking, you need to:
- Include device ID (
IDFA
for iOS andGPS_ADID
for Android) in the tracking link.
Set up a multi-platform universal tracking link:
- Create a multi-platform link based on the raw universal tracking link and tracker token.
Check if your app's path and query parameters are the same on iOS and Android. Make sure to use the right format:
- iOS and Android share the same path and query parameters.
- iOS and Android apps have different path and query parameters.
We recommend using a deeplink generator when setting up a universal link.
- Link examples for different scenarios
-
Different scenarios trigger the following links generated using the fields described above:
If you want to take users who don't have the app to the app store:
- iOS, app installed: Universal link.
- iOS, app not installed: Automatic redirection to the app store.
- Android, app installed: Deeplink.
- Android, app not installed: Automatic redirection to the app store.
- Desktop: FALLBACK URL and REDIRECT MACOS.
Sample link:
https://nquw.adj.st/product/100586311342?adj_t=aflb3js&adj_fallback=https%3A%2F%2Fmarket.yandex.ru%2Fproduct--cold-steel-luzon-medium-20nql%2F388454980%3Fcpa%3D1%26sku%3D100586311342&adj_redirect_macos=https%3A%2F%2Fmarket.yandex.ru%2Fproduct--cold-steel-luzon-medium-20nql%2F388454980%3Fcpa%3D1%26sku%3D100586311342&adj_gps_adid=%7Bgoogle_aid%7D&yclid=%7Blogid%7D
If you want to take users who don't have the app to a webpage:
- iOS, app installed: Universal link.
- iOS, app not installed: REDIRECT URL IOS.
- Android, app installed: Deeplink.
- Android, app not installed: REDIRECT URL ANDROID.
- Desktop: REDIRECT URL.
Sample link:
https://nquw.adj.st/product/100586311342?adj_t=aflb3js&adj_redirect_ios=https%3A%2F%2Fmarket.yandex.ru%2Fproduct--cold-steel-luzon-medium-20nql%2F388454980%3Fcpa%3D1%26sku%3D100586311342&adj_redirect_android=https%3A%2F%2Fmarket.yandex.ru%2Fproduct--cold-steel-luzon-medium-20nql%2F388454980%3Fcpa%3D1%26sku%3D100586311342&adj_gps_adid=%7Bgoogle_aid%7D&yclid=%7Blogid%7D&adj_redirect=https%3A%2F%2Fmarket.yandex.ru%2Fproduct--cold-steel-luzon-medium-20nql%2F388454980%3Fcpa%3D1%26sku%3D100586311342&adj_gps_adid=%7Bgoogle_aid%7D&yclid=%7Blogid%7D
Screenshots of the generator UI with explanationsPLATFORM: Enter your app platform as it is set in the Adjust dashboard. Valid values include: Android, iOS, and Multiplatform.
AD ENVIRONMENT: There are a number of different deep link formats that all work in different ad environments. For Yandex Direct, select Other.
FORMAT: Depending upon your ad environment, there may be more than one deep link format that is supported. Here, you can specify what format you want to use. For Yandex Direct, select ulink (universal link).
APP: Choose the app in the dropdown menu. This list includes all apps for the selected platform.
TRACKER: Choose the tracker you want to use. All network-level trackers from the app are listed.
RAW UNIVERSAL LINK: The raw universal link is automatically added when you select an app that's enabled in the dashboard and features universal linking.
ANDROID APP SCHEME: The scheme is configured in your app and is specific to each mobile platform.
IOS UNIVERSAL LINK PATH: Path to the in-app destination your users are taken to on iOS. Enter a template or a path to a specific product or section within the app. Learn more about templates and path syntax.
ANDROID DEEPLINK PATH: Path to the in-app destination your users are taken to on Android. Enter a template or a path to a specific product or section within the app. Learn more about templates and path syntax.
CAMPAIGN, ADGROUP, CREATIVE: Macros for Yandex Direct. These are suggested automatically. If you don't need a suggested parameter, remove the associated macro from the field.
LABEL: Use this field to specify parameters that don't fit any other Adjust field.
FALLBACK URL: URL of a specific landing page where you send off-platform users (i.e., clicks from an unsupported OS). Note: If your selected tracker supports iOS, Adjust may redirect MacOS traffic to the Apple App Store. To prevent this, enter a URL for MacOS in the REDIRECT MACOS field.
REDIRECT URL/MACOS/iOS/Android: Add a redirect URL to override Adjust's default redirect to the app store and send users to a specific URL instead. You can redirect users by device platform (REDIRECT MACOS/iOS/Android) or send all users to one single location (REDIRECT URL).
DEVICE ID MACROS: Macros for Yandex Direct. These are suggested automatically. If you don't need a suggested parameter, remove the associated macro from the field.
Descriptions of the parameters in the Adjust documentation
- Mandatory parameters
-
For accurate attribution of in-app events to Yandex Direct clicks, make sure to include the required tracking parameters in the link:
- In the tracking link:
adj_ya_click_id={logid}
oradjust_ya_click_id={logid}
. - In the fallback URL inside the tracking link:
yclid={logid}
UTM tags are specified in the fallback URL.
Sample link:
https://sb00.adj.st/cars/new/group/bmw/3er/21398591-21398651?adjust_ya_click_id={logid}&adjust_t=abc_def&adjust_campaign={campaign_name}&adjust_deeplink=autoru%3A%2F%2Fcars%2Fnew%2Fgroup%2Fbmw%2F3er%2F21398591-21398651&adjust_redirect=https%3A%2F%2Fauto.ru%2Fcars%2Fnew%2Fgroup%2Fbmw%2F3er%2F21398591-21398651%3Fyclid%3D{logid}
See also Tracking links based on Universal Links.
- In the MMP settings, go to.
- Under Attribution, choose Re-engagement attribution.
- In the MMP settings, click the Reattribution tab.
Specify the indicators:
- Inactivity period: The time elapsed since the user last opened your app to qualify for attribution. This period is 7 days by default. Use 0 days to reattribute the last click.
- Reattribution window: The time period between the click and conversion, during which the conversion is attributed to the source. This period is 7 days by default. For example, if a user clicked on a Yandex Direct ad on Monday and bought your product on Friday, the purchase is attributed to Yandex Direct.
Applies only to dynamic ads and smart banners.
Add a tracking link to the element including the product link. The link must redirect the user to a specific product (either on the site or in the app). For XML/YML feeds, follow the additional requirements.
Example of a tracking link in the feed:
<offer id="21398651" available="true">
<url>https://sb00.adj.st/cars/new/group/bmw/3er/21398591-21398651?adjust_ya_click_id={logid}
&adjust_t=abc_def&adjust_campaign={campaign_name}&adjust_deeplink=autoru%3A
%2F%2Fcars%2Fnew%2Fgroup%2Fbmw%2F3er%2F21398591-21398651&adjust_redirect= https%3A%
2F%2Fauto.ru%2Fcars%2Fnew%2Fgroup%2Fbmw%2F3er%2F21398591-21398651%3Fyclid%3D{logid}
</url>
...
</offer>
Re-attribution means re-engagement of an inactive user to the app or re-installation of the app as a result of retargeting. If this occurs during the re-attribution window, the re-attribution is counted for the retargeting source.
Configure re-attribution settings in the MMP if you use the mobile app goal in the strategy settings to optimize your conversions or the target cost revenue ratio.
Retargeting attribution guide in the AppsFlyer documentation.
The re-engagement attribution settings are enabled separately for each app.
Reattribution tracking section in the Adjust documentation.