Farming games
Last updated
Last updated
The gameplay of this genre revolves around developing your farm/land/city, etc. A player has to gather various resources and then use them to build and expand his territory. They can also buy new buildings and complete tasks to level up. Often the game has a mechanic that allows for spending currency on speeding up the production of certain items.
Basic events allow you to analyze your game as described in this example.
To make the analysis more smooth and productive, we recommend you to use the following basic events:
LevelUp and CurrencyAccrual for analyzing distribution of players among levels and balance as well as movement of in-game currency among levels.
Tutorial Step for tracking tutorial completion to find stages where users drop off of the app or skip tutorial altogether because he is familiar with all the mechanics of farming games.
Real Payment for building financial reports and calculating basic financial metrics: revenue, ARPU, ARPPU, paying share, transactions, etc.
Virtual Currency Payment for tracking in-app purchases made with virtual currency and evaluation of in-game economy. In this event, as a purchasing vehicle you can use not only hard currency, but also energy that the player spends on resource collection. Then you can open the In-game analysis section and analyze energy collection and spending by levels as well as the most popular sources and sinks of energy:
We should analyze the in-game currency, the dynamics of its spending and saving. Go to the Virtual goods & purchases report. Let's see which products are the most popular in terms of levels and time.
It is also important to know what a player’s shopping basket is composed of and how it changes depending on the level. For this we open the Purchases structure report:
Let's see how the demand for certain items changes at the given levels or over time:
Besides out-of-the-box reports based on basic events, you can use custom events to analyze how users are using your app – the most desirable actions, quests, live ops events, whether or not users invite friends, interact with new mechanics, etc. You can also analyze custom event data in the Custom event report.
You can build a funnel and analyze conversion rates at each stage. For example, you send an event every time a user enters an in-game shop, clicks on an item, buys an item. Based on these events, you can build a funnel and check the conversion rate at each stage in the Conversion funnel report. Below you can find examples of events that may be useful to you.
In the table below you can find examples of custom events that can be useful for you:
Description | Custom event | Parameters |
Store opening is an event that allows you to find out at what point and at what level users enter the store. You can also use this event in funnels to see the stages where users have difficulty shopping | Event name store_open Parameters source, level, e.g., main_menu, 10 | level (int) – highest available level for the user source – in-game store points of entrance: the main menu, the playing field, etc. |
Showing offers and user interaction with them, e.g., tap on an icon to view the offer. This makes it possible to build offer funnels, compare the effectiveness of offers with each other | Event name open_offer Parameters offer_name, level, e.g., welcome_offer, 2 | offer_name (string) – the name of the offer that the user opened level (int) – highest available level for the user |
Viewing items in the store and user interaction with them, e.g., tap on an icon to view the item. This provides an opportunity to build purchase funnels | Event name goods_tap Parameters product_name, level, category, e.g., corn, 10, products | product_name (string) – the name of the item that the user tapped on level (int) – highest available level for the user category (int) – item category: products, buildings |
Authorization: this event highlights the levels where players log in, and the ways of logging in | Event name authorization Parameters level, method, e.g., 10, fb | level (int) – highest available level for the user method (string) – authorization method: social networks, email, game center |
Interaction with friends. The event allows you to analyze social activity of the gamers and virality of your game. Use it to compare retention rates of the players who added other gamers to friends with those who play solitarily | Event name interaction_friends Parameter level, action, e.g., 102, add_friend | level (int) – highest available level for the user action – player actions targeted at a friend:
|
Event is sent when the user helps their friend with order completion | Event name sent_help Parameter level, name_product, count, count_experience e.g., 102, eggs, 1, 10 | level (int) – current player level name_product (string) – name of a product sent to a friend by the user count (int) – number of sent items count_experience (int) – amount of gained experience |
Event is sent when the user gets an Achievement | Event name achievements Parameter name, level,count_experience, e.g. city_architect, 11, 10 | name (string) – name or number of the achievement level (int) – current player level count_experience (int) – amount of gained experience |
Event is sent when the user speeds up something | Event name use_acceleration Parameter reason_name, name, level e.g., products, apple, 7 | type (string) – cause of speeding up:
name (string) – name of the sped up item, e.g.:
level (int) – current player level |
Event is sent when the user completes tasks that allow him to level up | Event name task_completed, Parameter name, count, level, e.g., added_building_1, 12, 1 | name (string) – name or number of the task, that the user has accepted or completed count (int) – number of active tasks with account for completed tasks level (int) – current player level count_experience (int) – amount of gained experience |
Event is sent when a user earns virtual currency. It allows for detailed analysis of earned currency | Event name currency_balance_earned Parameter balance_crystals, balance_energy, currency, amount, source, name, level | balance_crystals (int) – the number of crystals owned by a user after earning balance_energy (int) – the amount of energy owned by a user after earning currency (string) – currency type: gold, crystals amount (int) – amount of earned currency source (string) – currency source:
name (string) – details of currency acquisition level (int) – current player level |
Event is sent when a user spends virtual currency. It allows for detailed analysis of spent currency | Event name currency_balance_spent Parameter balance_crystals, balance_energy, currency, amount, source, sub_source, level | balance_crystals (int) – the number of crystals owned by a user after spending balance_energy (int) – the amount of energy owned by a user after spending currency (string) – currency type: gold, crystals amount (int) – amount of spent currency source (string) – what the user spent currency on:
purchase_currency – purchase of different currency (energy, gold) sub_source – detailed information on what currency was spent on, e.g. for spent_type = acceleration:
level (int) – current player level |
Receiving a daily gift: this way you can assess whether the bonus encourages players to re-engage with the game | Event name daily_bonus Parameters reward, amount, level, day_number, e.g., heart, 2, 10, 7 | reward (string) – the reward name amount (int) – the reward amount, level (int) – highest available level, day_number (int) – sequential number of the day, when the user picked up the gift |
Event is sent when a user upgrades a building | Event name upgrade_building Parameters level, name, level_building | level (int) – current player level name (string) – task name level_building (int) – level of the building after upgrade |
Event is sent when a user purchases a building | Event name purchases_building Parameters level, name | level (int) – current player level name (string) – task name |
Event is sent when a user completes an order | Event name order_completed Parameters level, name, source, count_order, count_gold, count_experience | level (int) – current player level name (string) – order number source (string) – name of order source, e.g. an order board count_order (string) – order number count_gold (string) – amount of acquired gold count_experience (string) – amount of experience gained from order completion |
Event is sent when a user purchases resources needed for order completion | Event name, purchases_resources Parameters level, name, source, count_order, count_gold, count_experience | level (int) – current player level name (string) – purchase name source (string) – name of order source, e.g. an order board count_order (string) – order number count_gold (string) – amount of acquired gold count_experience (string) – amount of experience gained from order completion |
Event is sent when a user charges slots for production | Event take_slot Parameters level, place, count | level (int) – current player level place (string) – production place count (int) – number of occupied slots |
Event is sent when a user collects manufactured goods | Event took_goods Parameters level, name, place | level (int) – current player level name (string) – item name place (string) – production place |