Repro - Mobile Analytics for growth
日本語
Resources
Growth Hack Journal (JA)
Sign Up Back to Dashboard
  • System Requirements
  • Dashboard Guide
    • Analytics
    • Marketing
      • Push Notification
      • In-App Message
      • HTML In-App Message
      • Web Message
      • Custom Message
      • Custom JavaScript
      • Available HTML tags and attributes for custom messages
      • Silver Egg Recommendation Messages
      • UX Optimizer (Beta version)
        • How UX Optimizer can be used
        • How UX Optimizer works
          • The hierarchy of values
        • Restrictions to UX Optimizer
        • Create UX Optimizer
          • Create default parameters
          • Create a Campaign
          • A/B Testing
      • Email
      • Viewer Count
      • Audience
      • Ads
      • Testers Management
    • Data Export
    • Misc
  • Development Guide
  • Release Notes
  • FAQ

UX Optimizer (Beta version)¶

UX Optimizer is a mechanism where app vendors can dynamically change the appearance or the behavior of the app without forcing users to update the app. Our servers will send sets of pre-configured values to the app which can later be used to modify the appearance or the app's functionalities. You can either send default values to all exising users, or send specific value just to targetted users for campaign use.

How UX Optimizer can be used¶

Usage

Details

Apply changes to the appearance or functionality quickly

Once you update the values configured in the dashboard, those values will immediately be applied to the app. For example, if you use UX Optimizer to control the app's background color, you can change the color seasonally just by changing the values from the dashboard.

Customize the app only to particular segment of users and A/B Test.

You can start an A/B Test by distributing variant values as an campaign and compare the results. Once you find out which variant performs the best from the A/B Test which had been activated only to limited group of users, you can then apply the best result to all of the users.

Warning

  • Implementation on the app side is always mandatory when using UX Optimizer. Once the correct APIs are being called with the desired parameter names, you can change the values dynamically anytime you wish.

How UX Optimizer works¶

UX Optimizer works by receiving a set of parameters, a combination of keys and its values, from Repro's server and using each values for any desirable purposes. For example, if you wish to control the background color of the app using UX Optimizer, you could assign a value white to a key called main_background_color . Key names can be any string, so it is recommended to give a descriptive name to each key.

There are four different ways to set a value to each parameter.

  1. Set static default values in the app

    • Assign static default values that are hard-coded in the app. When the app launches for the first time, or is off-line and cannot connect to Repro's server to retrieve server-side values, this default value will be used.

  2. Dynamically set default values in the app

    • Call Repro SDK's APIs to dynamically set default values while the app is running.

  3. Set default values from the dashboard

    • Create set of default parameters that you wish to distribute to all users. The values can always be modified from the UX Optimizer Settings page, and once changes are saved new values will be sent to apps and be applied later.

  4. Create campaigns from the dashboard

    • You can configure a UX Optimizer campaign to deliver values to a segment of users. The values can always be modified from the UX Optimizer Settings page, and once changes are saved new values will be sent to apps and be applied later.

The hierarchy of values¶

Which value set by one of the 4 methods presented above finally will be the active one is illustrated in the graphic below.

How a value is applied
  1. Campaign values that are active only in a certain user segment.

    • If a user belongs to the target segment of multiple campaigns and both campaigns overwrite the same parameter key, value from the campaign with newer update date will be used.

    • If a campaign is under an A/B Test using Control Group variant, values assigned in the campaign will not be overwritten to users who belong to the Control Group.

  2. Default value set from the dashboard

  3. Default values set dynamically in the app

  4. Default values set statically in the app

Note

  • Values retrieved from the server will not be cached in order to reduce network traffic. Once you change something from the dashboard, the app will fetch the newest values from the server when it launches the next time which will then be applied to the device.

  • Please note that the last fetched values will be used if retrieving newest values from the server failed due to poor network connection and etc.

Restrictions to UX Optimizer¶

UX Optimizer allows apps to dynamically modify its appearance or even functionality, however please refrain from using UX Optimizer for any of the purposes listed below.

  • Do not use it to perform updates that will normally require the end-users' consent. This could potentially lead to app store rejection.

  • Do not use to send or receive secure or private data.

  • Do not use it to circumvent platform restrictions or regulations.

Warning

UX Optimizer cannot and should not be used to achieve something that is not allowed nor is possible on the platform. For example, dynamically changing the app's icon on home screen is restricted on some platforms. Using UX Optimizer does not allow the app to get around such restrictions.

Create UX Optimizer¶

Create default parameters¶

In this section we will demonstrate how to deliver the exact key-value pair to all exising users.

Create Default Parameter 1

First, open SETTINGS > UX OPTIMIZER SETTINGS and click the CREATE NEW button.

Create Default Parameter 2

Enter a parameter name and its default value. For example, if you wish to configure a parameter that will be used to control the background color of the app, you can name it background_color or main_background_color and assign white or #fff as its default value. Please note that the name of the key will be referenced in the app and needs to exactly match. It is also recommended to leave notes of the purpose of the parameter for future reference.

After entering, click the save button.

Note

  • Parameter keys can only contain alphabetic characters, numbers or underscores.

  • The name should be descriptive and reflect where it is used and what function it has.

  • You can use the JSON editor to writing the parameter default value, however, the given value will still be String value and not a raw JSON object. If you want to assign a structured object as a value, you need to parse the String value and then use is accordingly.

Create a Campaign¶

Create Campaign 1

Open MARKETING > UX OPTIMIZER and click the Create New button.

Create Campaign 2

Write the name of this campaign and select the campaign goal event.

Create Campaign 3

Next you will enter the parameters that you intent to overwrite with this campaign

Key

Parameter keys that are already given default values will be listed here, so choose the ones you wish to overwrite. You can also create a new key and assign a value that is only associated with this campaign.

Value

Enter the overwrite value of the selected parameter key. Users who become the target of this campaign will receive this overwrite value instead of the default.

Distribute Users Among Variants¶

Variant Distribution

Divide the target user of campaigns between multiple variants and a control group as configured in Select Target. Control Group refers to a group of users who will not receive the overwrite value in order to see how effective the campaign was by comparing the results between users who received the value and who did not. See A/B Testing for more details how to change the settings with additional variants.

For example, in case of a distribution with a single Variant 1 (80%) and a Control Group (20%), then 80% of the existing users will receive the overwritten value and 20% will receive the default.

Set distribution percentages¶

By default, the Control Group is set as 0% and Variant 1 is set as 100% which will make all of the target users receive the overwrite value. If you do not wish to use the Control Group, you can leave these settings as is. If you want to use the Control Group then you can adjust the percentages with the total being 100%.

You can assign 50% each to Control Group as well as Variant 1 by clicking Distribute evenly, while Distribute evenly (without control group) will make Control Group 0% and Variant 1 100%.

Note

  • Control Group's percentage can be anything between 0% and 99%.

  • Variant 1's percentage can be anything between 1% and 100%.

  • Only integers can be set.

  • Changing the distribution settings is not possible after a campaign has been saved.

  • The actual number of message delivery may fluctuate depending on the volume of the target user.

Delivery Type¶

Delivery period

Set the time period in which the campaign should be delivered to your users. Users are identified by User ID.

Schedule Delivery

Select Target¶

../../_images/segmentation-filter.png

You can target all existing users or a segment of users by filtering with events or user profiles with the filters. The filters can be combined as either and , and not, or condition up to 5 in total.

  • and: Add the users to the delivery target who match all the specified condition.

  • and not: Exclude the users from the delivery target who match the specified condition.

  • or: Add the users to the delivery target who match any of the specified condition.

For example:

  • When delivering to users who have used the app 3 days ago, but have not done so for 2 days since then

../../_images/segmentation-filter-case1.en.png
  • When delivering to users whose gender is female and have performed either Event A or Event B within the last 3 days

../../_images/segmentation-filter-case2.en.png
Filtering with audiences¶

You can segment the target by using existing audiences created as explained in Audience

Note

  • Filtered Audience: This audience cannot be combined with other filtering conditions.

  • Import Audience: This audience can be combined with other filtering conditions.

  • Smart Audience ™: This audience can be combined with other filtering conditions.

Filter with Events¶

You can segment the target by the usage of the events, specifying how many times an event has been done within certain period.

Filter with Event Property¶

You can segment the target by the usage of the events and its associated properties, specifying the property value within certain period.

Note

  • With Event Property filters you cannot specify how many times event has been performed. Users who have done the event with the property at least once within the specified period will be included in the target.

Filter with User Profile¶

You can segment the target by registered user profile data. With either number or date types data set in the SDK, the condition can be constructed using comparison with the assigned value such as 'is more than,' 'is less than,' 'is more than or equal' or 'is less than equal.'

Existing Users¶

The campaign will be delivered to all the existing users registered to Repro. If you wish to exclude users who match special conditions, please add desirable filters using combined as and not.

Testers¶

Send message only to test users' devices. You can specify the target users in Testers Management.

Note

The target is automatically specified and cannot be modified if you choose a user group from analytics pages.

First-time Users¶

Deliver overwrite values to users who have launched the app for the first time.

Note

  • Please note that the user will not be regarded as First-time if more more than a week has past since the app's installation.

To Launch or Launch As Private¶

Before clicking the "LAUNCH" or "LAUNCH AS PRIVATE" button, please carefully check the contents of the campaign. After a campaign has been launched or launched as private, it is no longer possible to change the Campaign Goal or Parameter variants.

Once your campaign is ready to be launched, please click the LAUNCH or the LAUNCH AS PRIVATE button.

Campaign Measurement¶

You can check the effectiveness of the campaigns.

measurement
Delivery Result¶
Deliveries

Total number of users who received the overwrite value on a daily basis.

Conversions

Number of total users who have performed the campaign goal event set from the creation page within 24 hours on a daily basis.

Conversion Ratio

Number of conversions devided by deliveries.

Campaign Progress

Results of the deliveries, opens and occurrence of the campaign goal event on a daily basis: Note that the results represent the number of users.

Note

  • Assuming you have two UX Optimizer campaigns launched at the same time which target Existing Users and both campaigns overwrite the same parameter. In such a case, target users will only receive overwritten campaign values from the latest created campaign. However, these users will be included in both campaign performance measurements since they still belong to the same target group.

A/B Testing¶

A/B testing allows you to see what kind of content drives better conversion rate by delivering different patterns of the overwrite different groups of users.

You can also keep the most effective pattern from the A/B testing as the winner of the campaign and only deliver the selected variant.

Create Message¶

By composing a campaign with two or more variants, an A/B-Test can be performed.

Enable A/B Testing
  • You can create up to 4 different patterns.

  • Adding or removing message variants is not possible after a campaign has been saved.

Distribute Users Among Variants¶

Variant Distribution with multiple variants

Distribution percentages can be individually adjusted when having more than 2 variants making the total 100%.

You can assign equal percentages to Control Group as well as each of the variants by clicking Distribute evenly, while Distribute evenly (without control group) will make Control Group 0% and make percentages even among multiple variants.

Note

  • Control Group's percentage can be anything between 0% and 99%.

  • Each of the variants' percentage can be anything between 1% and 100%.

  • Only integers can be set.

  • Changing the distribution settings is not possible after a campaign has been saved.

  • The actual number of message delivery may fluctuate depending on the volume of the target user.

  • « Silver Egg Recommendation Messages
  • Email »

About Us Careers Terms of Service Privacy Policy Cookie Policy

© 2020 Repro Inc.