Make every action matter with customizable and dynamic rewards

Our team has built a comprehensive and customizable reward system. It is utilized all across the system. Quests, game rules, perks, and levels all rely on it. While talking about rewards, we are not talking about redemption options

You can reward your users with

  1. Perks
  2. Tokens
  3. Status Points
  4. Collectibles
  5. Active perk slots
  6. Custom reward you created

Dynamic values



Your dynamic value expression must be a valid math.js, which will return a single number. Read more about it here:

Every reward has a form that you need to fill out. For example, when you want to give a user a token, you must fill out a form asking how many tokens you want to share. In most other systems, you can specify a static value there, but we can make rewards dynamic based on the event that triggered it or the user.

Every dynamic value must be linked to an appropriate event property, becoming the “value” for the emotional value. However, thanks to our integration with math.js, you can transform that value with advanced math written with simple syntaxis

Calculated based on percentage by level or segment

This can customize rewards based on the user level or segment he is in. Every value represents a % of the value of the event property you selected.

Advanced Raw Expressions

Raw expression allows you to utilize math.js to generate reward values with advanced logic. It opens up additional opportunities for customization.

Here is what you can do with it

  1. Random. Instead of giving a reward for sure, you can give it a chance. Use the random() function to get a random number from 0 to 1.
  2. Accessing external data. You can use JSONPath query language to search your event properties or user stats.

Available entities

  1. value. Every dynamic property is based on a specific event property you selected using the selector. Here, you can access this value.
  2. event. Through the event, you can access the event that triggered the reward and all its properties.
  3. user. Through the user, you can access user properties.
  4. config. It is just a JSON entity that you can describe separately from expressions to make it more readable.

Available Rewards

You can choose your rewards from the library of pre-defined reward options or create additional rewards using user properties.


Represents the value of internal to in your system. Tokens are worth nothing unless you create a redeem option for them. You can enable inflation if you want the price of your token to inflate. This feature is helpful if you want your users to exchange your tokens for real money.


If you enable inflation you token price will drop

Inflation can allow you to reward high performers for a cost of passive players. However, inflation will impact the redeem price of your token. If you wanna utilize the inflation, please contact us via [email protected]


It is a duplicate of the Token reward type, which makes the reward attached to the currency, not the token. It means that if the token is inflationary, the reward in tokens will increase.

Specific Perk

Give specific perks to users. You can reward even perks that are disabled. This way, you can create exclusive bonuses not visible to other users.

Random Perk

Give a random enabled perk to the user. All perks that are valid and allowed will be subject to the unexpected.

Perk Slots

As you may know, only a limited number of perks can be active, and usually, this number is between one and three. You can reward your user his first perk slow from the quest and then reward the rest from leveling up.

You also have the power to reset perk slots and set a specific number of them.

Gold Trophy

The Gold Trophy is a predefined user property you can use as a collectible. The typical use case is to reward your users with gold Trophies for completing quests.

Featured Trophy

The Featured Trophy is another predefined user property designed to serve as an exclusive collectible. These trophies are typically awarded for extraordinary achievements, milestones, or participation in unique events. Their rarity and exclusivity make them a coveted item among users, encouraging engagement and continuous involvement in the system.


External rewards refer to incentives that exist outside the immediate digital environment. This could include physical merchandise, gift cards, or other tangible rewards. While managing these rewards requires additional logistics, they can effectively motivate users, especially in community-driven or promotional events.

While giving an external reward, you can save in the user profile that he claimed this reward. To do that, you need to configure the property's name to update. You can also customize the description, which users will see when they receive this reward or see it in the backlog.

User Property

User Stats are a versatile reward type that directly influences the user's profile or game statistics. This could be anything from increasing a user's level of magic, enhancing specific abilities, or unlocking new features within the system. User Stats are a powerful way to personalize the user experience and make the journey more engaging and rewarding.

You can select which user property to modify and choose from 3 available operations: ADD, SUBSTRACT, and SET.


Opting for 'None' as a reward might seem counterintuitive, but it has strategic applications. It can be used in scenarios where the mere participation in an event or completion of a quest is the primary goal, without any tangible reward. This approach can be practical in situations where intrinsic motivation is being promoted or for events that are preliminary qualifiers for more significant rewards.

UI customization

We support user-facing customization for rewards, which means even though you can’t customize how pre-defined properties like Gold Trophy will be named on your dashboard, you have total control over their icon and name across the user-facing widget.