Progression models
PlayGenus tags every game with one of four progression models — discrete levels, match-based, soft progression, or open world — and that tag decides which analytics events your game should track.
Which analytics events should your game track? It depends almost entirely on how progression works in your genre. A match-3 game progresses through numbered levels you can fail and retry; a Football Manager-like progresses through matches, seasons, and contracts; an idle RPG progresses along continuous power curves; a survival game progresses through whatever milestones the player sets for themselves. "Player is stuck" means a completely different thing in each — so the events that detect it have to be different too.
That's why every PlayGenus game is tagged with one of four progression models at onboarding, and why that single answer does more work than any other in your questionnaire.
The four models
| Progression model | Examples | Progression unit |
|---|---|---|
| Discrete levels | Puzzle, casual, runner, arcade (Candy Crush, Subway Surfers) | Numbered levels you can fail and retry |
| Match-based | Sports sim, MOBA, fighting, battler, sports manager (FIFA, Football Manager, Dota) | A match / round / fight with win–lose–draw outcomes |
| Soft progression | RPG, strategy, idle, 4X, city builder (Rise of Kingdoms, AFK Arena, Clash of Clans) | Continuous tracks — character level, kingdom power, base score |
| Open world | Survival, sandbox, open world (ARK, Rust, Minecraft) | Player-driven milestones — first base, first PvP kill, day N survived |
What the model changes
Your progression model determines four things:
- Which questionnaire you get — so we ask questions that fit your genre, not "what level number?" for a sports manager game.
- Which standard events go on your tracking plan — the catalog is genre-filtered before your plan is drafted (table below).
- Which custom events get seeded as defaults — the genre-shaped progression and failure events. See Custom events.
- How your data is analysed downstream — which events count as "progression" and which count as "friction" when we explain a churn prediction.
Which standard events apply to your game
The standard catalog holds 47 events. Most apply to every game; the two genre-specific groups at the bottom only make sense for their model.
| Category | Events | Applies to |
|---|---|---|
| Sessions | session_start, session_end, session_foreground | All |
| UI engagement | screen_view, ui_click, tutorial_step, tutorial_complete, feature_unlocked, social_share | All |
| Ads | ad_requested, ad_shown, ad_clicked, ad_completed, ad_failed | All |
| Performance | app_crash, error, performance_sample | All |
| Monetization | purchase_completed, purchase_refunded, subscription_started, subscription_renewed, subscription_cancelled | All |
| Economy | economy_earn, economy_spend, item_acquired, item_consumed | All |
| Player lifecycle | player_created, player_login, player_level_up, player_deleted | All |
| Social | guild_joined, guild_left, friend_added, gift_sent | All |
| LiveOps | live_event_started, live_event_milestone, live_event_completed, daily_reward_claimed | All |
| Moderation | player_reported, player_banned, chat_message_flagged | All |
| Progression | progression_start, progression_complete, progression_fail | Discrete levels only |
| Multiplayer | matchmaking_request, matchmaking_complete, match_result | Match-based only |
Full property schemas for all of these live in the client event reference and server event reference.
What about progression in the other three models?
If your game is match-based, soft-progression, or open-world, your
progression and failure events don't come from the standard catalog — they're
seeded as custom events shaped to your genre, and refined against your
questionnaire answers during tracking-plan review. A survival game gets
events like day_survived and base_destroyed; a sports manager gets
match_won and contract_terminated. Custom events shows
how that works, with examples per model.
Not sure which model you are?
Some games straddle the line — a puzzle game with a metagame, an RPG with discrete story chapters. The tiebreaker is: where does a player who's about to quit actually get stuck? If the honest answer is "on level 47", you're discrete levels. If it's "after a losing streak", you're match-based. If it's "when progress feels slow", you're soft progression. If it's "when their base got wiped", you're open world. And if you're still not sure, tell us about your game during onboarding and we'll work it out together.
Choosing your SDK
Client SDK, Server SDK, or plain REST — which PlayGenus integration fits your game's architecture, and why revenue events should always come from your server.
Client event reference
Every client-side PlayGenus event — sessions, screens, tutorials, ads, crashes, performance — with full property schemas and examples.