Loyalty (GM) is the Gigya platform for social interaction and rewards that can be used for gamification, for collecting user data and behavioral data, increasing site engagement and making user experience more enjoyable. Loyalty is highly flexible. You can use it as a straightforward gamification platform, based on Gigya's out-of-the-box configurations, or customize it to count and track any user actions in your site or app. Then use Game Mechanics Reports to analyze these interactions.
This guide takes you through the steps of integrating GM into your site:
- Use Loyalty in one of the following ways:
- Get familiar with Loyalty terminology.
- Learn about Overall Rank, Gigya's default challenge.
- Set up and configure your Loyalty platform.
- Go through our best practice checklist.
- Get statistics through GM reports.
- Understand GM points, and how to redeem them.
There are two ways to use Gigya Loyalty:
Incorporating Loyalty Add-Ons
Gigya's Loyalty (GM) add-ons are customizable pre-built Web GUI elements that can be used to display Loyalty information, such as the user's current points, the current achieved level, the number of points needed to achieve the next level, the highest ranking users, etc. The add-ons are easy to implement, and the process involves only adding a few lines of code using the Web SDK. For details of implementing one of the add-ons, go to its relevant page:
There are five GM plugins:
Enables users to view their currently achieved level, badge image and title per challenge.
Enables users to view all the badges, both locked and unlocked, of a specified challenge.
Enables users to view their current status in a specific challenge, and control their privacy settings.
Displays the top ranking users in a specific challenge.
|Notifications||gm.showNotifications||Notifies the users of their latest achievements, and allows them to share this to their social networks.|
In the Loyalty add-ons demo you will find a complete working example of a web-page that uses all five add-ons. You may review the code, run it and view the outcome.
For more details, refer to the Loyalty Add-Ons guide.
Please pay special attention to the following GM API methods:
- gm.notifyAction - notifies the GM engine about an action that a user has taken in the site. This method should be used to notify about site custom actions. You may read about setting up site custom actions in the Custom User Actions section of the Loyalty Configuration and Administration guide.
- gm.redeemPoints - deducts a specified number of points from a user in a specific challenge. You can use this method to redeem points in exchange for benefits such as coupons, gifts, etc.
Gigya's Loyalty platform (GM) uses specific terminology throughout the documentation, site administration, and user interfaces. In order to implement Gigya's Loyalty more easily, familiarize yourself with these commonly used terms:
- Action - An action that a user performs on your site, such as login, share, etc. The actions can be default Gigya actions or custom user actions, and each action has a point value. Users are also able to refer other users to your site, and actions performed by a referred user may grant the original user additional points. These actions are called referral actions.
- Point - A unit that is appointed to users when they perform an action on your site. A user can accumulate points to earn virtual rewards, such as levels and badges.
- Challenge - A set of actions and levels of the same theme. Users participate in site challenges by performing actions associated with the challenges.
- Level - A milestone within a challenge. A level is achieved by a user who earns a specified number of points, and / or performs a specified action or a set of specified actions. The level is represented by a badge and a level title.
- Badge - A visual representation of a level of a challenge. Each level has two badges, an unlocked version if the user has reached the level, and a locked version if the user has not yet reached the level.
- Leaderboard - A display of the top users. It is a way for users to know where they rank within the challenge's community.
To summarize: once you integrate Loyalty, your site will have challenges in which users can participate. The challenges have defined levels, and each level has a badge associated with it. Users on your site will be able to perform predefined actions or simply-defined new actions, and receive virtual rewards such as points for these actions.
Overall Rank is the Loyalty default challenge. Overall Rank encourages site engagement through rewards and increases user activity and loyalty.
The Overall Rank challenge has all enabled actions associated with it, including newly defined actions and default Gigya actions. These actions are all initiated by Gigya's Engagement Add-Ons or APIs; Gigya tracks the enabled actions and rewards users with points, the site does not need to report them. To view all predefined Gigya actions, all of which belong to this challenge, refer to the Default Gigya Actions section of the Gigya Console.
You may define new actions, and any new actions you define are automatically associated with the Overall Rank challenge. These custom user actions are not tracked by Gigya, and your site must report them to Gigya.
Overall Rank has four defined levels; the titles of the levels are Beginner, Enthusiast, Expert, and Master. Each level can be reached by users who perform social actions and accumulate the specified number of points that the level requires. Each level of the challenge also has a badge to represent it.
To view all levels that belong to this challenge, refer to the Levels section of the Challenge Settings page in the Gigya Console.
Many of the Overall Rank challenge properties are customizable; you can add or remove levels, and redefine each level's title, description, badges, and threshold. The default Gigya actions cannot be removed, but the following properties of each action can be changed: name, description, points value, daily cap, minimal Interval, and status.
When you integrate Gigya's Loyalty platform, we recommend you use the Overall Rank challenge, as well as defining new challenges that are suited to your site needs.
Setting up Your GM Console
Your Loyalty console can include just the Overall Rank challenge, which is configured and ready to use, but we recommend adding more challenges to your site, specific to your users' needs.
- Go to the Game Mechanics Setup section of Gigya's website.
- Press the Add new challenge button. Fill in a unique challenge ID and a challenge title, and press Save. The new challenge is now added to the challenges table.
- Press the Challenge Settings button to open the Challenge Settings page, which is divided into three sections: 'Configuration', 'Actions', and 'Levels'.
- In the 'Configuration' section: Add a description of the new challenge (optional).
- In the 'Actions' section: Select the actions you want to associate with your challenge. You must select at least one.
- In the 'Levels' section: Add at least one level to your new challenge:
- Press the Add new level button in the Levels table in order to open a blank new level form.
- Fill in the fields. You need to define at least one of the thresholds (action or points). Press Apply.
- Return to the 'Configuration' section on the page and change the Status to Enabled .
- Press Save Settings.
The actions you added to your new challenge were selected from the predefined default Gigya actions, but you can define new custom user actions and add them to your new challenge.
Best Practice Checklist
The following checklist summarizes the best practices for implementing Gigya's Game Mechanics platform:
- Use Overall Rank, Gigya's default challenge.
- Incorporate all five GM plugins: the Notifications plugin should be displayed as a dialog (pop-up), while the Achievements, Challenge Status, User Status, and Leaderboard plugins should be embedded inside the page.
- Show the User Status plugin when a user logs in, by registering an event handler to the global onLogin event. For implementation, refer to the Logged-out State section of the User Status plugin page.
- If you added Custom user actions, use gm.notifyAction method to notify the GM engine about a custom action that a user has taken in the site.
- We recommend working server-to-server whenever applicable, which is more secure than client-side access.
Gigya’s cross-platform analytics deliver interaction and traffic data, including details by challenge and activities. Gigya’s graphic reports are available on Gigya's website under the Reports tab (please make sure you are logged in).
The available GM reports are:
- Top users
- Daily activity
- New daily users by challenge
- Users by challenge
- New daily users by level
For detailed explanations, see Game Mechanics Reports.
Loyalty points are appointed to users when they perform an action on your site. These actions for which your users earn points can be either Default Gigya Actions or Custom user actions. A user can accumulate points to earn virtual rewards, such as levels and badges.
In addition, you are allowed to give Custom user actions negative point values, and every time a user performs an action that has a negative point value, the points will be deducted from the user's points. The only limitation is that the user cannot have accumulated points that are less than zero.
The Loyalty engine accumulates points in three different manners:
- Total Points - Overall earned points that have been accumulated up to date. The 'total points' value can only increase, you can't subtract from it. The idea behind this is that once a user achieves a certain level on a challenge, it's for lifetime, levels (badges) achieved will not be taken from him even if he redeems points.
- Current Points - The current points a user has. When a user redeems points he is left with the current points. Current point are accumulated and can be redeemed using the gm.redeemPoints method for benefits such as coupons, gifts, etc.
- 7 Days Points - Points earned during the past 7 days. Similar to the 'Total Points', 7 Day Points are only accumulated and can not be redeemed.
You can redeem points by using the gm.redeemPoints method. This method deducts a specified number of points from a specified user in a specified challenge. The points are redeemed only if the number of points to redeem isn't higher than the number of current available points, in which case the operation will fail.
Manually Granting Points to Challenges
You can manually grant points to specified challenges by using the gm.notifyAction API method. Call the method with an action called _points , then in the points parameter specify the number of points you want to award the challenges, and in the challengeIDs enter the challenge IDs of all the challenges to which you want to grant these points. You can also use this method to reduce points, by awarding negative points to the challenge.