Go back to Developer Center

Product Documentation - Pyze Growth Intelligence®

Pyze is a Growth Intelligence platform for mobile & web app businesses, delivering Usage & Behavioral Analytics, Automated Segmentation, Contextual & Mobile Marketing, Growth Marketing Automation, and Personalization Intelligence. Pyze offers a number of key features to help app publishers with their biggest challenge - retaining and growing users.

How is the product organized?

The Pyze product is designed for managing multiple apps, websites and data sources.

  1. Portfolio is a top level organizational structure in Pyze to manage Apps and App Groups. Portfolio-level features and settings are accessible from the Portfolio Menu

  2. App Groups: App Groups enable aggregations, querying, analysis, intelligence & campaigns, across apps, websites and other data sources

  3. Apps: Features available to a mobile or web app are grouped under User and Behavioral Analytics, and Growth Marketing and Intelligence, and accessible from the App Menu

Portfolio

The Portfolio is a top level organizational structure in Pyze to manage Apps and App Groups.

Apps Portfolio

The Apps portfolio displays mobile and web apps, and other data sources that have been added in the Pyze Growth Intelligence Platform. Apps are visually represented as app-cards or a stack of app-cards. An app card visually provides some high level app details at a glance.

Portfolio

App-card

Each app-card visually represents some key metrics for the app, including the daily installs, average daily usage, daily active users and campaigns upto past 14 days, along with actuals for today with change from the previous day.

Portfolio

Stacked App-cards

Apps that do no meet the filter or search criteria are shown stacked.

Portfolio

Adding Apps to Portfolio

Adding app

Portfolio Menu

Portfolio Menu has access to mobile and web apps or data sources (apps), app groups, visual queries, dashboards, team and profile settings, user identity settings, api key and secret, user and dev documentation.

Portfolio Menu

App GroupsEnabling Growth Intelligence across digital assets

App Groups enable aggregations, analysis, intelligence & campaigns, across apps, websites and other data sources. The user interface allows managing of named groupings of apps, websites and server data sources.

App Groups

App groups can be created by clicking in the Add New Group button, giving the app group a name and selecting a web or mobile app, or a data source.

Add New App Group

AppsMobile and Web apps

App Menu

The App Menu is the command center for your app. It displays the menu of services that Pyze offers across behavioral analytics, mobile marketing, and intelligence to help grow, retain, and convert users.

The menu displays services logically grouped together to enable quick access to usage and behavioral analytics, events & event funnels, intelligence explorer, Personalization Intelligence™ and Growth Automation®.

App Menu

At A Glance

The At A Glance page provides an easy to visualize summary overview of current and historical app key performance indicators.

App Overview

14 Day Installs, Average Daily Usage, Daily Active Users and Campaigns

The top of the page visually represents daily installs, average daily usage, daily active users and campaigns up to past 14 days, along with actuals for today with change from the previous day.

Installs, Activations, Active User Devices, Average Daily Usage, Average Daily Sessions

The app-overview page is designed to provide an easy to read current and historical snapshot of installs, activations, active user devices, average daily usage, and average daily sessions, covering today, yesterday, previous 7 days, this week, previous week, previous 30 days, this month, and previous month. Previous 7 day and Previous 30 day metrics excludes today.

Stickiness and Usage Trends

Daily, Weekly, Monthly Retention Averages

Retention - Shows daily, weekly, and monthly retention averages.

d5 retention for July 11 is the ratio of a) number of user devices that used app on July 16 (i.e. 5 days after July 11) and b) number of installations on July 11. Similarly, m1 retention for July is the ratio of user devices that used app in August, and number of installations in July.

Trends & Projections

Trends & projections provides historical and comparative behavioral insights into key metrics like usage, engagement, retention, sessions, activations and activity.

Statistics

The metrics displayed are:

Statistics

Statistics shows a time series graph for each key metric over the course of the selected period. The slide that moves with the cursor over each graph show percentage differences from the average selected. Tri-mean along with low and high standard deviation, is shown with three dotted horizontal lines, above.

Comparative Statistics

The various metrics (Installs, Activations, Active Users, Sessions, Usage and Retention) can be compared against mean, median, mid range, tri mean, and the winsorized mean along with the deviation. Select what to compare with on the drop down menu on left side of the chart.

Another drop down provides the ability to select any metric and display a larger view.

trends

Periodic trends shows a comparison of the last period of time versus the previous period of time, allowing you to use the drop down at the top right to compare any two days, weeks, or months, i.e. Last 24 hours vs. 24-48 hours ago and the previous 2 months would show this month versus two months ago.

Answer questions like: "How did Weekly active users compare for week 40 and 41?"

A drop down provides the ability to select any graph for a larger view

Stickiness

Look at stickiness in a number of ways: Daily Active User Devices, DAU vs Previous 30D Active User Devices, Previous 30D Active User Devices, Previous 7D Active User Devices and DAU vs Previous 7D Active User Devices, all in one place.

Stickiness

Stickiness displays metrics on recent Active Users compared to different periods of time.

Options for mean, median, mid range, tri mean, and the winsorized mean all provide different average trend lines for each graph. Simply select a trend line to view across all graphs, or allow for selection of a specific graph from the Show drop down menu to view a specific graph.

Comparisons provides the ability to conduct homogeneous and heterogeneous comparisons. By selecting two different categories in drop down menus on the left, one can compare and contrast user data based on selections like country, phone capabilities, app version, even phone form factor. This information can be used to see correlations, determine which aspects of the app are performing, or weigh investment decisions.

Comparisons

Real-time ActivityRecent Activity

The real-time Activity page allows for a quick glance at real-time and recent data for Installs and Usage over the past 24 hours

trends

Real-time Activity

Usage & Behavioral Analytics

Pyze categorizes key behavioral metrics for Installs, Activations, Usage, Sessions, Active Users, and Retention. Daily, Weekly and Monthly time-series data is selectable via the drop down on the top right part of the screen.

Installs

Installs - Number of new devices of your app in specified period categorized by a specific metric. The various metrics are grouped as Choropleths, Categorizations, and heat maps.

Choropleths

A Choropleth is a geographical heat map and it display installs for each country either by Location or Locale. Countries with higher installs are shown green and countries with fewer installs are shown light green. Data can be viewed in aggregate across all days/weeks/months or on a per day/week/month basis by selecting the options on the top right part of the choropleth.

Daily Location Choropleth for last 7 Days, currently showing November 16, 2016:

Daily Location Choropleth for last 7 Days, currently showing November 16, 2016

Categorizations

Categorizations display metrics by day/week/month. The Categorizations can be viewed in Stack, Stream, Area format by day/week/month. Totals are also available as a Tree map chart. Data can also be viewed in tabular format or exported as CSV or PNG.

Available categorizations for Installs include:

Stacked Chart for Device Manufacturer for 7 Days and currently showing selected day 11/13/2016:

Portfolio

Treemap Totals Chart for Device Screen Resolution for 7 Days and currently showing selected 11/10/2016 to 11/16/2016:

Portfolio

Aggregate heat maps

heat maps and Spider charts display aggregate data for the time range selected using both By Hour and Day (GMT) and By Hour and Day (Timezone). The GMT aggregation display data based on GMT time zone and can be useful for understanding metrics like server load. The data by time zone displays user behavior based on local time zone and can be helpful in understanding user behavior at specific time of the day regardless of what timezone they come from.

Aggregate Installs heat map showing that the best time to run an install campaign is Thursday 8p - 9p, which makes sense as people download a book reader app in the evening before going to bed:

Portfolio

Activations

Activations - Number of user devices that were activated in a specified period categorized by a specific metric. The various metrics are grouped as Choropleths, Categorizations, and heat maps.

Activation is an important growth metric. Many product managers consider Installs and Monthly active users vanity metrics in comparison to activations (and loyalty). Activation type can be selected from the drop down menu next to the header and are used to learn more about the general usage of your consumers. Pyze has specifically created these to help companies keep track of important milestones.

Following activations are supported out of the box

Activation.App Launched or Resumed 3rd Time

Activation.App Launched or Resumed 5th Time

Activation.App Launched or Resumed 10th Time

Activation.First Time App Used for 2 Days in Last 7 Day Period

Activation.First Time App Used for 3 Days in Last 7 Day Period

Activation.First Time App Used for 3 Unique Days

Activation.First Time App Used for 5 Unique Days 0 of 1

Activation.First Time App Used for 7 Unique Days

Activation.Aggregate Usage Exceeds 15 Minutes

Activation.Aggregate Usage Exceeds 30 Minutes

Activation.Aggregate Usage Exceeds 60 Minutes

Activation.Aggregate Usage Exceeds 5 Minutes over 3 Previous Days

Activation.Aggregate Usage Exceeds 10 Minutes over 3 Previous Days

Activation.Aggregate Usage Exceeds 15 Minutes over 3 Previous Days

Activation.Aggregate Usage Exceeds 30 Minutes over 3 Previous Days

Activation.Aggregate Usage Exceeds 5 Minutes over 5 Previous Days

Activation.Aggregate Usage Exceeds 10 Minutes over 5 Previous Days

Activation.Aggregate Usage Exceeds 15 Minutes over 5 Previous Days

Activation.Aggregate Usage Exceeds 30 Minutes over 5 Previous Days

Activation.Aggregate Usage Exceeds 5 Minutes over 7 Previous Days

Activation.Aggregate Usage Exceeds 10 Minutes over 7 Previous Days

Activation.Aggregate Usage Exceeds 15 Minutes over 7 Previous Days

Activation.Aggregate Usage Exceeds 30 Minutes over 7 Previous Days

In addition, Custom app developer defined Activations are also supported

The various metrics are grouped as Choropleths, Categorizations, and heat maps.

Choropleths

A Choropleth is a geographical heat map and it displays activations for each country either by Location or Locale. Countries with higher installs are shown orange and countries with fewer installs are shown light orange. Data can be viewed in aggregate across all days/weeks/months or on a per day/week/month basis by selecting the options on the top right part of the choropleth.

Categorizations

Categorizations display metrics by day/week/month. The Categorizations can be viewed in Stack, Stream, Area format by day/week/month. Totals are also available as a Tree map chart. Data can also be viewed in tabular format or exported as CSV or PNG.

Available categorizations for Activations include:

Here is a categorization of "Cellular Capability" for Activations in last 30 days for activation type "First Time App Used for 3 Days in Last 7 Day Period"

Portfolio

Here is a categorization of "Manufacturer" for Activations in last 14 days for activation type "First Time App Used for 3 Unique Days", overlaid with tabular numeric data. Any chart can be exported or viewed in tabular format.

Portfolio

Here is another example of categorization of "Manufacturer" for Activations in last 14 days for activation type "First Time App Used for 3 Unique Days". A tree map shows the aggregate for entire selected period.

Portfolio

Aggregate heat maps

heat maps and Spider charts display aggregate data for the time range selected using both By Hour and Day (GMT) and By Hour and Day (Timezone). The GMT aggregation display data based on GMT time zone and can be useful for understanding metrics like server load. The data by time zone displays user behavior based on local time zone and can be helpful in understanding user behavior at specific time of the day regardless of what timezone they come from.

Usage

Average Daily Usage - Average daily usage per active user in hours, minutes and seconds an app was used in the selected period categorized by the chosen metric.

Similar to Installs and Activations, various metrics under Usage are also grouped as Choropleths, Categorizations, and heat maps.

Choropleths

A Choropleth is a geographical heat map and it displays usage for each country either by Location or Locale.

Categorizations

Categorizations display metrics by day/week/month. The Categorizations can be viewed in Stack, Stream, Area format by day/week/month. Totals are also available as a Tree map chart. Data can also be viewed in tabular format or exported as CSV or PNG.

Available categorizations for Usages include:

Inthis example: 30 Day Average Daily Usage categorized by Newness displayed using Area Chart

Usage

Inthis example: 30 Day Average Daily Usage categorized by Form Factor displayed using Stream Chart

Usage

Inthis example: 14 Day Average Daily Usage categorized by App Version displayed using Area Chart. Changing the time period is as easy as selecting a range from a dropdown or as shown selecting two sliders to automatically select period start and end, and time series type.

Usage

Aggregate heat maps

heat maps and Spider charts display aggregate data for the time range selected using both By Hour and Day (GMT) and By Hour and Day (Timezone).

Average Daily Sessions

Average Daily Sessions - Average daily sessions per active user an app was used in the selected period categorized by the chosen metric.

Similar to Installs, Activations and Usage, various metrics under Sessions are also grouped as Choropleths, Categorizations, and heat maps.

Choropleths

A Choropleth is a geographical heat map and it displays usage for each country either by Location or Locale.

Categorizations

Categorizations display metrics by day/week/month. The Categorizations can be viewed in Stack, Stream, Area format by day/week/month. Totals are also available as a Tree map chart. Data can also be viewed in tabular format or exported as CSV or PNG.

Available categorizations for Sessions include:

Example: Locale Language Code, 30 days, treemap aggregate categorization.

Sessions

Example: Diagonal Inches, 30 days categorization.

Sessions

Example: Newness, 30 days categorization.

Sessions

Aggregate heat maps

heat maps and Spider charts display aggregate data for the time range selected using both By Hour and Day (GMT) and By Hour and Day (Timezone).

Active User Devices

Active User Devices - Active User Devices (DAU, WAU and MAU) for an app in the selected period categorized by the chosen metric.

Choropleths

A Choropleth is a geographical heat map and it displays usage for each country either by Location or Locale.

Categorizations

Categorizations display metrics by day/week/month. The Categorizations can be viewed in Stack, Stream, Area format by day/week/month. Totals are also available as a Tree map chart. Data can also be viewed in tabular format or exported as CSV or PNG.

Choropleth, showing Mean of Daily Active Users:

Active Device Users

Available categorizations for Sessions include:

Aggregate heat maps

heat maps and Spider charts display aggregate data for the time range selected using both By Hour and Day (GMT) and By Hour and Day (Timezone).

Active Device Users

Retention

Daily, Weekly & Monthly Retention is supported.

d5 retention for July 11 is the ratio of a) number of user devices that used app on July 16 (i.e. 5 days after July 11) and b) number of installations on July 11.

Similarly, m1 retention for July is the ratio of user devices that used app in August, and number of installations in July.

Choropleths

A Choropleth is a geographical heat map and it displays usage for each country either by Location or Locale.

Categorizations

Available categorizations for Sessions include:

dx-Retention Supported:

d1, d2, d3, d4, d5, d6, d7, d8, d9, d10, d12, d14, d30

d5 retention for July 11 is the ratio of a) number of user devices that used app on July 16 (i.e. 5 days after July 11) and b) number of installations on July 11.

retentions

wx-Retention Supported:

w1, w2, w3, w4, w5, w6, w7, w8, w9, w10, w11, w12, w13

E.g. w2 retention for Week#33 is the ratio of user devices that used app in Week#35, and number of installations in Week#33.

retentions

mx-Retention Supported:

m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12

E.g. m1 retention for July is the ratio of user devices that used app in August, and number of installations in July.

retentions

Screens, Scenes & PagesScreen Flow

screenflow.png

Screen Popularity

Screen Popularity tab displays details on screen usage.

This data can be utilized to optimize applications to either redesign screens that have poor usage and visit counts or perhaps remove them all together to double down on better performing features of the app.

Screen Popularity - Average Screen Usage

Average Screen Usage displays how much time is spent on each screen of the application, over the course of the time period selected. Top 40 screens are requested across the period.

Screen Popularity - Average Screen Usage

Screen Popularity - Screen Visit Count

Screen Visit Count displays how many times each screen was visited, over the course of the time period selected. Top 40 screens are requested across the period.

Screen Popularity -  Screen Visits

Cohort Retention & ChurnRetention

Cohort Retention displays the daily, weekly, and monthly retention numbers and rates for the application. Measuring retention based on cohort analysis is a great way to measure the impact of different releases, marketing campaigns or user groups. The dropoff point where major retention is lost can be useful in determining product enhancements and also launching engagement campaigns to bring users back into the app.

Click on any cell to display the meaning of the information shown

The toggle for # vs % allows viewing the data in terms of percentages or absolute number of users

Cohort Retention

Retention Comparisons

The comparisons tab provides the ability to conduct homogeneous and heterogeneous comparisons. By selecting two different categories in drop down menus, one can compare and contrast user data based on selections like country, phone capabilities, app version, even phone form factor. This information can be used to see correlations, determine which aspects of the app are performing, or weigh investment decisions.

Cohort Retention Comparisons

Cohort Retention Comparisons

Churn

Cohort Churn displays the daily, weekly, and monthly churn numbers for rates for the application. Measuring churn based on cohort analysis is a great way to understand why users are leaving the application. The point where users churn can be useful in determining product enhancements and also launching engagement campaigns to bring users back into the app.

The drop-down for Churn relative to installs shows the churn rate relative to the number of users that installed the app.

The drop-down for Churn relative to previous day shows the current days churn relative to the last day.

Click on any cell to display the meaning of the information shown

The toggle for # vs % allows viewing the data in terms of percentages or absolute number of users.

Cohort Churn

Churn Comparisons

The comparisons tab provides the ability to conduct homogeneous and heterogeneous comparisons. By selecting two different categories in drop down menus, one can compare and contrast user data based on selections like country, phone capabilities, app version, even phone form factor. This information can be used to see correlations, determine which aspects of the app are performing, or weigh investment decisions.

Churn Retention Comparisons

Events OverviewPyze Events

Pyze has a very extensive events implementation, with real-time and massively-parallel event sequence searches implemented using state-of-the-art technology.

Pyze Dynamic Funnels

App publishers drag and drop events into sequences, define filters that apply to all events, define filters that apply to each event and can search for users in real-time that meet the criteria. They can then reach out to these users in real time using personalized in-app or push notifications at a time the user is most likely to be receptive of messages at an individual level.

Pyze has an Extensive Event Sequence Implementation

For example, app publishers can reach out to users who

Developers can use curated event classes: PyzeCommerceBeacon, PyzeCommercePayment, or use custom events. Similary, an app that relies on ads for monetization can track ads using PyzeAd class.

Enterprise customers can also post event data to Pyze from their backend using a RESTful api. See here for details.

Custom App-defined Events

Pyze supports events that are specific to your app.

Pyze supports custom events for dynamic funnels and funnel analysis. In addition custom events are also available for intelligence and Growth Automation®.

An app can send custom events by using (class api: iOS and Android). For example user clicked on a deep link embedded in an in-app notification.

[PyzeCustomEvent postWithEventName:@"deep-link-clicked"];

You can send any number of additional attributes using:

+ (void)postWithEventName:(nonnull NSString *)eventName
           withAttributes:(nullable NSDictionary *)attributes;

Timed Events

Timed Events are used for timing events. Pyze implementation can support multiple overlapping events of same type.

Your UI may support downloading multiple songs at the same time or uploading multiple files at the same time. Using timed events with Pyze supports multiple instances of same event.

Time multiple overlapping events

//started uploading video
double timerReference1 = [Pyze getTimerReference];

sleep(1);

//started uploading photo
double timerReference2 = [Pyze getTimerReference];

sleep(2);

//second media (photo) finished before first
[PyzeCustomEvent postWithEventName:@"Media Uploaded" withTimerReference: timerReference2];

sleep(1);

//first media (video) finished
[PyzeCustomEvent postWithEventName:@"Media Uploaded" withTimerReference: timerReference1];

Pre-Enabled Pyze Events

Pyze Events, numbering 24-30, are available right out of the box and can be used without any app-instrumentation in dynamic funnels, funnel analysis, intelligence and Growth Automation®. These events are either generated by the smart agent or server automatically. These include the Install event, OS change event, app version change and two dozen activation events. Pyze events are also automatically used in various intelligence features.

Pyze.Install

Pyze.Reach out

Pyze.In-App displayed

Pyze.Push notification opened

Pyze.Reach out action taken

Pyze.Activation

Activation.App Launched or Resumed 3rd Time

Activation.App Launched or Resumed 5th Time

Activation.App Launched or Resumed 10th Time

Activation.First Time App Used for 2 Days in Last 7 Day Period

Activation.First Time App Used for 3 Days in Last 7 Day Period

Activation.First Time App Used for 3 Unique Days

Activation.First Time App Used for 5 Unique Days 0 of 1

Activation.First Time App Used for 7 Unique Days

Activation.Aggregate Usage Exceeds 15 Minutes

Activation.Aggregate Usage Exceeds 30 Minutes

Activation.Aggregate Usage Exceeds 60 Minutes

Activation.Aggregate Usage Exceeds 5 Minutes over 3 Previous Days

Activation.Aggregate Usage Exceeds 10 Minutes over 3 Previous Days

Activation.Aggregate Usage Exceeds 15 Minutes over 3 Previous Days

Activation.Aggregate Usage Exceeds 30 Minutes over 3 Previous Days

Activation.Aggregate Usage Exceeds 5 Minutes over 5 Previous Days

Activation.Aggregate Usage Exceeds 10 Minutes over 5 Previous Days

Activation.Aggregate Usage Exceeds 15 Minutes over 5 Previous Days

Activation.Aggregate Usage Exceeds 30 Minutes over 5 Previous Days

Activation.Aggregate Usage Exceeds 5 Minutes over 7 Previous Days

Activation.Aggregate Usage Exceeds 10 Minutes over 7 Previous Days

Activation.Aggregate Usage Exceeds 15 Minutes over 7 Previous Days

Activation.Aggregate Usage Exceeds 30 Minutes over 7 Previous Days

Pyze Explicit Activation

PyzeExplicitActivation

Explicit Activation Event is the only exception and requires instrumentation. For example, a social photography app could consider a user activated only if the user shared at least two pictures even though the user may have taken 1200 pictures in the app. Similarly, another app may consider a user activated after the user makes the first trade in the stock market.

Curated Events

Pyze supports curated events by vertical for a variety of apps so app publishers know what to instrument in their apps. If you are writing a mobile commerce app, you can get a head start with Pyze Mobile Commerce event classes. Similarly, if you are writing a Messaging App or an app-controlled Drone app, we have a long list of curated event classes for each vertical.

Curated Events Class reference can be found here: iOS, Android and Unity

Listing of the Curated Event classes:

Pyze Explicit Activation

PyzeExplicitActivation

Pyze Account and Identity

PyzeAccount

PyzeIdentity

Pyze In-App Advertisement Tracking

PyzeAd

Pyze Advocacy and Feedback Class

PyzeAdvocacy

PyzeSupport

Pyze Mobile Commerce

PyzeCommerceSupport

PyzeCommerceDiscovery

PyzeCommerceCuratedList

PyzeCommerceWishList

PyzeCommerceBeacon

PyzeCommerceCart

PyzeCommerceItem

PyzeCommerceCheckout

PyzeCommerceShipping

PyzeCommerceBilling

PyzeCommercePayment

PyzeCommerceRevenue

Pyze Mobile Gaming

PyzeGaming

Pyze Mobile Health and Fitness class

PyzeHealthAndFitness

Pyze Content, Messaging, Tasks and Social

PyzeContent

PyzeMessaging

PyzeTasks

PyzeSocial

Pyze Media: Video, Audio, Pictures etc.

PyzeMedia

Pyze In-App Purchases and Bitcoin

PyzeInAppPurchaseRevenue

PyzeBitcoin

Pyze Drone and Quadcopter Event tracking

PyzeDrone

Pyze Weather and Forecast tracking

PyzeWeatherAndForecast

EventsEvent Flow

Event Flow shows the top events collected per session. Hovering over a path displays the selectd flow funnel both as a percentage of first event or percentage of previous event.

Event Flow

Event Popularity

Top popular events are displayed over time (day, week or month). Click on a timeseries to display the counts for a day, week or month.

Event Popularity

Event Occurence

Event Occurence displays the number of times a selected event occured. Click on a timeseries to display the count.

Event Occurence

Event Attribute Popularity

Top popular event attributess are displayed for a selected event, over time (day, week or month). Click on a timeseries to display the counts for a day, week or month.

Event Attribute Popularity

Dynamic FunnelsDynamic Funnels - Actionable Event Sequences

Recent Sequences

Recent Sequences

Campaign History

LoyaltyWeekly Loyalty

Weekly Loyalty

Monthly Loyalty

Monthly Loyalty

Last Activity

Last Activity

Resurrection

Ressurection

Automated SegmentationIntelligence Explorer

Pyze automatically clusters the entire user base across a number of key attributes like Engagement, Loyalty, Revenue and many more right out of the box.

Intelligence Explorer provides an easy to use graphical interface to explore the entire user base across multiple dimensions.

Navigation

On the top left, the buttons allow for re-centering the intelligence explorer, zooming in and zooming out

On the top right, buttons allow for toggling labels on/off, and resetting the Intelligence canvas to create a new exploration.

Terminology

Built-in Dimensions

For each dimension, pyze shows the distribution of the entire user base for that dimension. For instance, selecting usage will display the 5 clusters of usage from lowest to highest whereas selecting Monthly Cohort will display the distribution of Cohorts by month. The dimensions that are available out of the box are as follows:

Once a dimension is added to the Explorer, there are a number of actions for a selected node or path displayed on the right. They include:

App Dimensions

App Dimensions - enable the inclusion of app-defined categorizations of users in segment-less data explorations via the Intelligence Explorer and initiate personalized actions based on their level of usage or loyalty. For example, a ticketing app may want to compare engagement and loyalty of seasonal ticket holders vs. single-game buyers.

Creating an App-Dimension from any Event's Attribute

An App Dimension can be created from any Event Attribute that is configured in your application. Start by Selecting an Event and Event Attribute.

Select an Aggregation Method & Aggregation Period

The Aggregation Method determines how the data will be aggregated and the Aggregation Period defines the time range that will be used for analysis

Select Aggregation Algorithm

By selecting the aggregation algorithm, one can define the ranges to be used for analysis and also the number of clusters/groups to be generated.

Pyze recommends selecting "Use best clustering algorithm" though expert users that understand the range of the data can define exact ranges

Picking the number of clusters/groups for the data is dependent on analysis needs and the type of distribution desired.

PersonalizationPersonalization Tags

Personalization Intelligence™ enables delivery of unique content and experiences to each user based on their behavior, usage, preferences and social graph. Publishers can utilize Pyze Intelligence to create custom experiences for different groups of users. For example, apps can now offer individualized experiences to user groups such as Novice, Expert, Dormant, High Value, Whales, or app publisher defined user groups.

Adding Personalization Tags in Intelligence Explorer

A personalization tag can be added to any node, path or edge created in the Intelligence Explorer. To Add a tag, select a node, edge, or path and click on "Add Personalization Tag" on the right hand menu. Any existing Tag or a New Tag can be assigned to the selected set of users.

These tags will be available in the application and can be used to personalize content, experience, or the user interface. For example, we may want to tag users with low recency as dormant users and the next time they use the application, perhaps they get shown a tour. There is no limit to the number of nodes, paths, or edges that can be associated with a given tag. For instance, clusters of users who spend a lot of money in the app and users who have extremely high engagement could both be tagged as High Value Users. {Hyperlink} to Development Center

All Tags that have paths, nodes or edges that have been assigned to them can be viewed in the Personalization tab of the Intelligence Explorer. Here, one can view the tags and the number of users that match each tag. The tags can also be deleted or paths, edges, or nodes that have been assigned to a particular tag can be removed.

Growth Automation

Growth Automation provides Intelligence Bots that work on intelligence and insights collected by Pyze smart app agents. App specific and custom data is also available to intelligence bots to define both user lifecycle events and user behavior to define workflows that enable automated engagement. For example, custom onboarding campaigns can ensure greater retention. Similarly, for an eCommerce app, sending an user that adds an item to a cart and then abandons the cart a coupon can yield greater conversions.

Onboard

The goals of providing dynamic onboarding experience to first-launch users are simple, show them an experience so they become repeat users. App Publishers can welcome and thank the user, introduce the benefits and key functionality of the app, and show them how to get started, all with personalized experiences and messaging based on user's traits.

Pyze Onboarding bot allows app publishers to customize the onboarding experience with key messaging to convert first time users into repeat users of app.

Activate

An activated user is more likely to be engaged, retained and monetized. Pyze allows app publishers to take an action as soon as a user activates. Users are reached out on an individualized schedule where they are most likely to respond based on a number of inputs.

Pyze activation bot includes two dozen built-in activation criteria that app publishers can associate actions to personalize activation per user. App publishers are also free to create custom activation criteria.

Engage

Retain

Pyze can auto-engage users who are at risk of attrition and reengage them. Using the retain bot, App publishers can send push notifications to users at the time the users are most likely to respond positively and get them re-engaged with the app. These actions can be sent based on dormancy period (last usage being 5,7,10,14, 21, 28, or 60 days ago).

Ressurect

Campaign History

CampaignsOverview

Campaigns are a key component of the Pyze Growth Intelligence platform and enable delivery of timely messages and communications to a specific groups of users based on attributes, actions, or funnels.

Creating Campaigns

Campaigns are integrated into every aspect of the Pyze platform and allow for very general or very specific communication with a group of users.

Creating ad-hoc campaigns from Dynamic Funnels

Ad-hoc Campaigns can be created from dynamic funnels consisting of one of more events. Campaigns run on dynamic funnels are useful for targeting users who have executed a funnel. Examples might be sending a coupon to users who have completed events leading up to checking out, but abandoning.

  1. From an event sequence, click on Reach Out button to create a campaign:

    Create campaign from event sequence

  2. Creating a message

    Select when you want the message to be delivered. Pyze can automatically determine the time when users will be most responsive to the notification and interact with it. Also select the type of campaign: Push, in-app, or SMS campaigns.

    Create In-App Message

  3. Creating message content

    Select a template, upload and adjust images, add display title and message, and create call-to-action buttons. Note, call to action buttons can be deeplinks, web links, app links, universal links or none. Your app will receive a callback regardless.

    Create In-App Message Content

To learn more about creating Dynamic Funnels and Funnels see section: Dynamic Funnels and Funnels

Creating ad-hoc campaigns from Intelligence Explorer

Ad-hoc Campaigns can be created based on explorations defined in the Intelligence Explorer

  1. From an exploration, reach out to users:

    Create In-App Message

  2. Creating a message from Intelligence Explorer:

    Create In-App Message Content

  3. Creating message content:

    Create In-App Message

To learn more about creating Intelligence Explorer see section: Intelligence Explorer

Creating automated campaigns from Growth Automation

Advanced, automated and workflow-based Campaigns can be defined from Growth Automation to automate onboarding, engagement, ressurection of users. For example, offering a coupon to a user who has placed an item in a wish list and yet not purchased it.

To learn more about Growth Automation See section: Growth Automation. Creating an automated campaign is very similar, as shown in screenshots below.

  1. Step1: Creating a message:

    Create In-App Message Content

  2. Step2: Creating message content:

    Create In-App Message

To learn more about Growth Automation See section: Growth Automation.

Creating test campaigns from Developer Tools

Test Campaigns can be defined and run from Developer Tools for specific devices.

  1. Step1: Creating a message:

    Creating test campaigns from Developer Tools

  2. Step2: Creating message content:

    Creating test campaign content from Developer Tools

To learn more about Developer Tools, see Developer Tools.

Linking

When creating call to actions in an in-app notification, you can link to a registered deep link within another app, a registered deep link to your own app, a web page, a universal link or an app link. Linking is optional within Pyze In-app notifications.

The Pyze SDK first attempts to call the specifed link and the outcome (success, failure, deeplink not provided) is passed to the completion handler or call back method. This allows the app developer to handle the click accordingly.

Pyze supports Deep Links, Web Links, iOS Universal Links, Android App Links, and Facebook App Links. Pyze also self-linking and calling web-hooks directly from within the agent.

Deep Links

A deep link is a link to some content in a mobile app. Examples of deep links include: twitter:// or yelp://.

Twitter or Yelp must register "twitter://" or "yelp://" as a link.

If the app is available on the user's device, the operating system will ask for permission to open the app. If the app is not available, the operating system will alert the user that the app can not be opened.

Deep links usually point to some content on the page.

For instance, typing the following in Safari on an iOS device will open twitter app to the Pyze Page, if the twitter app is present on your device.

twitter://user?screen_name=pyzeinc

For instance, typing the following in Safari on an iOS device will open Facebook app to the Pyze Page, if the Facebook app is present on your device.

fb://profile/529330563808607

Is target app installed?

You can check to see if an app is installed before linking to a deep link. For instance use "twitter://" to check if app is installed. If not redirect to the app store.

  1. In your app, test if twitter is installed by attempting to launch using the openURL: method

    twitter://
  2. Redirect to app store, if app not installed.

    https://itunes.apple.com/us/app/twitter/id333903271

    Once app is installed and user switches back to the app that launched twitter, the app has to re-execute the deep link

  3. Redirect to app deep link is app is installed

    twitter://user?screen_name=pyzeinc

Web Links

Web links are http:// or https:// links. They can point to a web page or be deep and point to content on a web page.

https://pyze.com
https://docs.pyze.com
https://pyze.com/articles/growth-hackers-need-growth-intelligence.html

Including a web link as an call to action link would open the specified page in the mobile browser.

For example, you could send an in-app notification to your users when you have added a new article about sharing your wishlist with your facebook friends.

iOS Universal Links

Universal links allow using standard "https://" links to deep-link into iOS apps, or download, install and deep-link directly to the app without involving a third party service, or requiring Safari app.

To enable universal links:

  1. You will need to establish trust and create an association between your website and app by placing a JSON file named "apple-app-site-association" in the root folder or in the .well-known subfolder of your website.

    Here is an example of an apple-app-site-association file from the dropbox website.

    The file references 8KM394JM3R.com.getdropbox.Dropbox, the application bundle for the dropbox app

  2. You will need to establish trust and create an association between your app and website by adding your website domain to your app capabilities on Xcode.

    Prefix websites and websites with domains with applinks:

    E.g. applinks:www.dropbox.com, applinks:dropbox.com

    Dropbox added applinks: www.dropbox.com in the capabilities section of app identified by bundle Id 8KM394JM3R.com.getdropbox.Dropbox

  3. To support Universal Links in your app, you need to implement the application(_:continue:restorationHandler:) on your AppDelegate.

Here is an example of a universal link that should open in safari or the dropbox app if you have it installed:

https://www.dropbox.com/s/bz5k4ql1kwzwoyp


To learn more about Universal Links, click here.

Android App Links

App Links are the Android equivalent of Universal Links. An https:// link points to both a website and content inside an app.

Custom URI schemes (e.g. twitter://user?screen_name=pyzeinc) are, however, fully supported by Android and many developers continue to use them.

Learn more about app links here.

Facebook App Links

You can link to web content, iOS apps and Android Apps supporting Facebook App links from Pyze.

The web content you are linking to needs to add metadata on the pages to support iOS and Android. You will need a custom url, app stroe ID for iOS or package ID for Android, and the name of the app that will handle the content. See Adding App Links to Your Existing Web Content. If your app is mobile only, see Using Facebook's Mobile Hosting API for App Links.

You can specify a globally unique identifier that you code already understands and can parse to take a custom action within the completion handler, delegate or listner. Examples: unique-identifer:redeem-offer-wb10

Web-hooks

The agent can POST to a webhook specified by you along with key-value pairs in the body. For instance: https://webhook.myservice.com/eventid/2342/. Key data for personalization or tracking is also sent to the server handling web-hook. For instance, "Recency" : "3 months", "Model": "iPhone 6,2", "ppi": "401",...

Campaign HistoryReach Out

Growth Automation

App ProfileApp Settings

Basic: Information such as App Name, Appstore URL, and app timezone can be set or auto detected. The Pyze App Key, which is required for integrating Pyze into the app, can also be copies from this screen.

Icon & Images

Icon & Image enables modification of the Icon and Screenshot for the App.

Push Notifications

Push Notifications allows for entering the credentials required to send Push Notifications for iOS and Android.

The daily and weekly push quotas can be changed to make sure an app’s users don’t get overwhelmed with notifications.

Developer Instructions for Setting up Push Notifications are available here:

Managing Team Members

User Settings Screen can be accessed by clicking on Users in the upper right hand corner of the Portfolio Screen and allows for the management of users in your Pyze Portfolio or team.

Managing Users

My Profile

Click on My Profile for updating you own user profile such as profile picture, first and last name.

My Profile

Manage Team Member Profiles

Manage Team Member Profiles

Manage Profiles allows a user to manage other accounts with access to the portfolio. Changing a scope determines what apps an account has access to and can be as general as iOS or Android apps or as specific as one or two apps only, as well as the tools the user is able to access, such as Intelligence or managing other user accounts.

Manage Team Member Profiles

Invite Team Members

Invite Users (Team Members)

The Invite Team Members Page gives access to new users with a preset scopes of accessibility for the entire app portfolio both in terms of App Scope and Feature Scope.

Invite Team Members

Developer Tools

The Developer Tools allow for adding test devices, testing push messages, in-app messages, and personalization tags.

Get ASCII85 token

To send data to a developer device, you will need to generate an ASCII85 token unique to an instance of an app on a specific device.

The Ascii 85 token is a safe variant of base85 encoding that indirectly identifies an instance of your app within Pyze. Developers can use their development devices and simulators for testing Reachout via push notifications (devices only for iOS) and in-app messages, and Personalization.

Logging ASCII85 token in Xcode

To print the ASCII85 token in Xcode, add a property "devmode" of type "string" and value "true" in your app's property list (usually Info.plist) file.

Add devmode = true in your Info.plist

When viewed as source code, the entry should look like:

<key>devmode</key>
<string>true</string>

Logging ASCII85 token in Android Studio or Eclipse

To print the ASCII85 token in Android add the following line to your AndroidManifest.xml file

<meta-data android:name = "devmode" android:value = "true"/>

Unity

To print the ASCII85 token in Unity add the "devmode" property to Info.plist and/or AndroidManifest.xml depending on the OS platforms you are targeting.

Run App

Run the app once without breakpoints to make sure the app has sent the install packet to the Pyze servers.

The Ascii85 code will be printed in the console window.

Example output

Here is an example, of an ascii 85 token ASCII-85^g!T^V8@M^{j[b9%^IBY!}yxt-This-is-an-example-gIBYyxR@}ws{^3CR#Y$CYASCII-85 and here is what the Ascii85 token would look like when printed from the IDE when devmode is set to true in app's Info.plist and/or AndroidManifest.xml

####
Copy and paste the following Ascii-85 token to reach out to this specific device from "app profile" for your app under "Developer" section. 
Learn more at http://ascii85.pyze.com ASCII-85^g!T^V8@M^{j[b9%^IBY!}yxt-This-is-an-example-gIBYyxR@}ws{^3CR#Y$CYASCII-85 ####

Devices

To add a new developer device, you will need the device's Ascii85 token.

Add Developer Devices

Developer Devices

Add Developer Devices

Reach out

Reach Out allows specific In-App or Push Notification Campaigns to be created for testing on specific Developer Devices.

  1. Step1: Creating a message:

    Creating test campaigns from Developer Tools

  2. Step2: Creating message content:

    Creating test campaign content from Developer Tools

Campaign History

Campaign History shows a history of all Developer Devices Campaigns.

Developer campaign history

Personalization Tags

Personalization Tags are only applicable to Developer Devices to help develop personalization for tags.

Developer Personalization Tags

Click on add tags and create new tags or add listed tags

Add Developer Personalization Tags


Enterprise FeaturesImport User Traits

In addition to sending a users' traits via the PyzeIdentity class (See for iOS and Android) , Pyze allows upload of custom user traits data, for example the date of birth, gender or a subscription level of an user. A CSV file can be uploaded via SFTP using key-based authentication.

This user data can then be used in various features e.g. Intelligence Explorer, within the Pyze platform for further correlation and analysis.

App Vs Bulk Import

Guidelines

CSV Format

First Row of your CSV must include the names of the fields you wish to create. The first column must be “User Identifier”. Field names are case insensitive

Data Types

Pyze is typically data-agnostic, and most data is treated as a string until processed. The Pyze UI will prompt for formatting specifications for fields such as dates.

Quoting

Text may be quoted or not. Unclosed quotes will cause processing failure for that record. Commas inside unquoted strings may cause a failure for that record, it is typically advised to quote any longer strings.

File Size

SFTP uploads are essentially unlimited, but may need special handling for files > 1GB.

Contact Pyze Support for help with this.

Notes

Example

"User Identifier", Gender, "Subscription Status", "Subscription Date", "Field Notes" GH-123, F, Premium, 2016-12-14, "This customer is great" GH-484, M, Standard, 2016-01-01, "New Years Resolution" GH-1890, F, None, , "Not yet signed up"

Posting Events From Server to Pyze

Enterprise customers can also post event data to Pyze from their backend using a RESTful api.

The Pyze Enterprise Events API allows you to send events from your servers along with the data from your mobile and web apps. You can send these events at the same speed as the Pyze SDK’s and with the same level of detail.

The Pyze Enterprise Events API accepts HTTPS POST events authenticated using HTTP Basic Authentication using an API Key/Secret generated per mobile or web app. You can attach any custom attribute data to an event, and use this data throughout the Pyze system as attributes to filter and understand your users.

Endpoint

The url for all transactions is: https://enterprise.pyze.com/rest/[api_version]/events

The current api version is ‘v1’

Content-Type HTTP Header should be application/json

Authentication

The Pyze Enterprise Events API uses Basic Access Authentication headers. You can find your application's API key and secret by navigating to the “API Keys” section of the App Profile in growth.pyze.com.

Data Format

The Pyze Enterprise Events API accepts standard JSON documents with the following fields

Field

Required

Format

Description

pak

Yes

String

Your application’s Pyze App Key (PAK)
Example: Act75oocQxiFzUAjeENW9A

event_name

Yes

String

The name of this event
Example: Subscription_Purchased

timestamp

Yes

String (epoch)

The time that this event occurred formatted as (UTC) milliseconds since epoch
Example: 1481444255513

user_identifier

Yes

String

Your custom string that identifies this specific user. The same User Identifier should be used within the Pyze SDK’s for this event to be properly attributed to that user
Example: GH-1235

uuid

Yes

UUID

UUID that uniquely identifies this event request; to ensure that each event is processed exactly once. This should should be randomly generated.

UUIDs must be a version 4 UUID 36 characters in length and contain only hex characters and dashes (0-9, a-f, A-F, -).

Example: 7102810b-8848-44ca-8301-6b0702dfc22e

ip

Optional

String

Your customer's IP address. If this is not included the ip address of the last activity will be used.

Example: 123.345.123.12

attributes

Optional

Object

JSON object containing any arbitrary key-value pairs to attach to this event.

Example:
"attributes": {
  "Custom_key": "Any value",
  "Custom_key2": "Any value2"
}

Rate Limits

Pyze Enterprise Events API limits each API key to 200 events per second

Response

The Pyze Enterprise Events API will return a 200 response code if your event was properly formatted and accepted. The api will only validate if the overall format and validity of the JSON object, and if the request was properly Authenticated

200

Event accepted for processing

400

Invalid Data

401

Authentication Failure

429

Rate Limit Exceeded

Example

A Curl Example:

curl \ -i -H "Accept application/json" \ -H "Content-Type: application/json" \ -u api_key: secret \ -X POST \ -d '{ "pak": "tKxuJDvwRV6944kz3GosUw", "timestamp": "1481444255513", "user_identifier": "GH-123", "ip": "123.345.123.135", "uuid": "7102810b-8848-41ca-8301-6b070ddfc2de", "event_name": "My_Custom_event", "attributes": { "Custom_key": "Any value", "Custom_key2": "Any value2" } }' \ https://enterprise.pyze.com/rest/v1/events

Creating Apps Programmatically

Endpoint for bulk app creation

To create Apps Programmatically via an API, use the following endpoint. This endpoint is available to Pyze Enterprise Customers.

endpoint: https://e.pyze.com/api/apps
Request Type: POST
Content-Type: applicaiton/json
Authorization: HTTP Basic Authentication
JSON payload:  {
  "platform": "iOS",
  "appname": "My Awesome App",
  "appgroupids" : ["Uy1tWo8FQ7WvNMSrMf2a6A","Tz1tWo8FQ7WvNMSrMf2a6A"]
  "timezone": "America/Los_Angeles",
}

JSON payload Legend

Key and Secret

To locate your key and secret, please log in to growth.pyze.com and click on "Menu" from the main Portfolio screen.

Select API keys and secret.
Generating Key and Secret

Generate Key and Secret
Generating Key and Secret

Copy Key and Secret
Generating Key and Secret

CURL request example

For CURL, use your key and secret separated by a ":" to generate the basic authentication string. For example, if your key and secret are as follows,
    Key: e5f2b490-9fbf-4bb2-91df-6105cf4c871b
    Secret: 257040a4-998b-4379-8239-0977972c2a17

You can use a base 64 encoder to encode <key>:<Secret>:
    e5f2b490-9fbf-4bb2-91df-6105cf4c871b:257040a4-998b-4379-8239-0977972c2a17
into a base64 basic authentication string:
    ZTVmMmI0OTAtOWZiZi00YmIyLTkxZGYtNjEwNWNmNGM4NzFiOjI1NzA0MGE0LTk5OGItNDM3OS04MjM5LTA5Nzc5NzJjMmExNw== for use in a CURL request.

curl --request POST \
  --url https://e.pyze.com/api/apps \
  --header 'authorization: Basic ZTVmMmI0OTAtOWZiZi00YmIyLTkxZGYtNjEwNWNmNGM4NzFiOjI1NzA0MGE0LTk5OGItNDM3OS04MjM5LTA5Nzc5NzJjMmExNw==' \
  --header 'cache-control: no-cache' \
  --header 'content-type: application/json' \
  --data '{"platform":"iOS","appname":"Application Name","timezone":"America/Los_Angeles"}'





About Pyze

Pyze Growth Intelligence® is a transformative SaaS platform that enables mobile and web app businesses to automate engagement, retention and growth of their users. Signup at Pyze, install and initialize the Pyze SDK and watch your app grow.