cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

What Are ReachOut™ Variables and How Are They Used With In-App Messages?

What Are ReachOut™ Variables and How Are They Used With In-App Messages?

ReachOut™ variables are variables that can be used in the message content of a ReachOut™ campaign. Before the message is delivered to the client, these variables are replaced by actual data from that client's profile. For example, if the message includes a variable for the product version, if the client is using version "1.2.3" of your software then the product version variable will be replaced by this value. 

ReachOut™ Variables can be used in these cases:

  • Manual Campaigns: As part of the Plain Text message or Plain Text URL
  • Automatic Campaigns: As part of the URL that will be displayed to the user or the target URL when the user clicks on an image

Use Cases for ReachOut™ Variables

Creativity is your only limit when using these variables, but here are some of the popular use cases we have seen:

  • Personalize the message you deliver to your clients by including variables like their product version and build or relevant environment info such as the operating system they are using
  • Inject data into your website forms, marketing framework, shopping cart or sales tracking solutions to be able to associate a user with an action following a ReachOut™ message
  • Track which users have seen and interacted with your ReachOut™ message by passing their unique Usage Intelligence client ID as a URL parameter
  • If you use ReachOut™ to deliver surveys from SurveyMonkey, Qualtrics or other major survey frameworks you can automatically split your survey responses based on customer profile or product usage by passing variables as survey parameters in the URL

Creating a Message Using ReachOut™ Variables

To create a ReachOut™ campaign and include variables in the message content, perform the following steps.

To create a ReachOut campaign and include variables in the message content:

  1. Log in to the Usage Intelligence Dashboard.
  2. From the menu on the left-hand side, select ReachOut.
  3. Once on the ReachOut™ page, click the Add New Auto Campaign or Add New Manual Campaign button.
  4. In the Message Content section, click on the available categories and select the property you'd like to include. The variable will be inserted in the message or URL at the cursor position.
  5. Alternatively, you may also type '_-' to see a list of all the available variables

ReachOut™ Variables Examples

Example 1

Consider a user that is using version 1.2.3 of your software that is running on Microsoft Windows 7. If you enter the following Plain Text message content in your campaign:

It seems that you are still using version _-(prodVersion)-_ of MySoftware. Visit our website to download the latest version of MySoftware for _-(os.platform)-_.

The variables will be replaced so that the client will receive the following content:

It seems that you are still using version 1.2.3 of MySoftware. Visit our website to download the latest version of MySoftware for Microsoft Windows.

Example 2

Let's say you have created an automatic ReachOut™ campaign which shows a URL where the content displayed depends on which country the user is in and whether the software has expired or not. If you enter the following target URL in your campaign:

http://www.mycompany.com/campaigns?id=1204&country=_-(geography.country)-_&expired=_-(licenseStatus.expired)-_

A user who is in the USA and whose software is expired will receive the following URL:

http://www.mycompany.com/campaigns?id=1204&country=us&expired=true

List of Available ReachOut™ Variables

The following is a list of variables that can be used in ReachOut™ messages or URLs.

Product Properties

Variable Code
Product Version _-(prodVersion)-_
Product Edition _-(prodEdition)-_
Product Build _-(prodBuild)-_
Product Language _-(prodLanguage)-_
Usage Intelligence Machine ID _-(machineId)-_
Usage Intelligence Client ID _-(clientId)-_

Licensing Properties

Variable Code
License Type _-(licenseType)-_
License Status: Activated _-(licenseStatus.activted)-_
License Status: Blocked _-(licenseStatus.blocked)-_
License Status: Expired _-(licenseStatus.expired)-_
License Status: Allowed _-(licenseStatus.allowed)-_

Platform Properties

Variable Code
OS Platform _-(os.platform)-_
OS Version _-(os.version)-_
OS Edition _-(os.edition)-_
OS Language _-(osLanguageFriendly)-_
OS Language Code _-(osLanguage)-_
Continent _-(geography.continentFriendly)-_
Continent Code _-(geography.continent)-_
Country _-(geography.countryFriendly)-_
Country Code _-(geography.country)-_
US State _-(geography.usStateFriendly)-_
US State Code _-(geography.usState)-_
Form Factor _-(formFactor)-_
Virtual Machine _-(vm)-_
CPU Type _-(cpuType)-_
CPU Cores _-(cpuCores)-_
Monitor Count _-(displayCount)-_
RAM _-(ram)-_
Horizontal Resolution _-(resolutionWidth)-_
Vertical Resolution _-(resolutionHeight)-_
Screen Pixels per Inch _-(screenPpi)-_
GPU Vendor _-(gpu.vendor)-_
GPU Model _-(gpu.model)-_
Touch Screen _-(touchScreen)-_
OS Word Length _-(osWordLength)-_
.NET Version _-(dotNetVersion)-_

Java Environment Properties

Variable Code
Java Version _-(javaVersion)-_
Java VM Version _-(javaVmVersion)-_
Java VM Name _-(javaVmName)-_
Java Vendor _-(javaVendor)-_
Java Runtime Version _-(javaRuntime)-_
Java AWT Graphics Environment _-(javaGraphics)-_
Java VM RAM _-(javaVmRam)-_

Data Collection Properties

Variable Code
Previously Opted-Out _-(optOut.historical)-_
Previously Backed-Off _-(backOff.historical)-_

Usage Properties

Variable Code
Days Since Install _-(daysSinceInstall)-_
Lifetime Runtime Minutes _-(lifetimeRuntimeMinutes)-_
Lifetime Session Count _-(lifetimeSessionCount)-_

Custom Properties

ReachOut™ Variables support all custom property types and therefore if you make use of custom properties these can also be used in the format _-(C01)-_, _-(C02)-_, etc...

For more information about the different types of custom properties, see What Type of Data Can I Store in Custom Properties?

Lifetime Event Count

You may include the number of times a user generated an event by adding a Lifetime Event Count variable. This variable uses the format _-(lifetimeEvent:<ID>)-_ where <ID> is to be replaced by the event ID. When the message is delivered to the client, the variable will be replaced by the number of times that event was triggered by the user. For example:

If you have Event A with ID 123 and you create a message with the following content:

This user has triggered Event A _-(lifetimeEvent:123)-_ times.

A client that never generated Event A will receive:

This user has triggered Event A 0 times.

In the Message Content section of your campaign, click on Lifetime Event Count to easily add events to your message. If a campaign contains an event that is disabled, the message will still be delivered but the lifetime event count value will be blank. For example:

This user has triggered Event A _-(lifetimeEvent:123)-_ times.

Will be delivered to all clients as:

This user has triggered Event A  times.

You may manage the list of events for your product doing the following:

  • Usage Intelligence v2: Open the Admin page and under Product Settings click on Event Tracking Management.
  • Usage Intelligence v3: On the Administration menu, select Product and open the Event Tracking Management tab.
Was this article helpful? Yes No
No ratings
Version history
Last update:
‎May 17, 2023 05:41 PM
Updated by: