Product Analyst Portfolio

Mercantail — Playtest Data Analysis

Event-level analysis of n=10 playtest sessions · 5,393 logged events · 17 dimensions · March 2026
Dataset: EventLog_Clean (5,393 rows)
17 dimensions: Auto_ID, Session, Player, Timestamp, Event_Type, Item_Path, Tier_Before, Tier_After, Energy_Before, Energy_After, Gold_Before, Gold_After, Order_Slot, Churn_Signal, Shop_Voluntary, Qualitative_Notes, Data_Type
Rich data sessions: S02, S08, S09, S10 (embedded logger)
Players: P01–P08 (8 players, 10 sessions)
Analyst: Diana Sinohardjo

1. Session overview

Aggregated session metrics across all 10 sessions. Sessions S02, S08, S09, and S10 are Rich Data — they have complete gold/energy state tracking, item paths, and decimal timestamps from the embedded in-game logger. All other sessions use Basic Data from manual event logging.

Query 1 — Session summary
-- Session-level engagement summary
-- Identifies session length distribution and merge efficiency
SELECT
  session,
  player,
  ROUND(session_length_s / 60.0, 1)           AS duration_min,
  total_events,
  orders_fulfilled,
  energy_refills,
  ROUND(items_merged * 1.0 / NULLIF(items_spawned, 0), 2) AS merge_ratio,
  max_tier_reached,
  churn_signal,
  data_type
FROM session_summary
ORDER BY session_length_s DESC;
Query result
SessionPlayerDurationEventsOrdersEnergy refillsMerge ratioMax tierChurnData type
S08P0830.5 min1,56112869
0.79
T5NoRich
S10P0827.5 min1,60214470
0.78
T5NoRich
S07P0715.0 min5203921
0.72
T5NoBasic
S05P0514.8 min6323732
0.81
T5NoBasic
S06P069.4 min4533917
0.67
T5NoBasic
S04P048.6 min4144725
0.68
T4NoBasic
S02P023.2 min6432
0.59
T4NoRich
S09P022.5 min6843
0.87
T5NoRich
S01P012.1 min6382
0.47
T3NoBasic
S03P030.8 min1620
0.00
T1YesBasic
Engagement finding: bimodal session distribution

Sessions cluster into two distinct groups: under 3 minutes (S01, S02, S03, S09) and over 8 minutes (S04–S08, S10). No middle ground exists. The industry median session is 3.1–3.5 min (GameAnalytics 2025) — 7 of 10 sessions crossed this threshold. The long cluster averaged 18+ minutes, placing them in the top 10% of industry session lengths. P08's two sessions at 30.5 and 27.5 minutes sit at the 99th percentile.

Hypothesis for A/B test: The bimodal split is an onboarding threshold problem — players who get past the first energy gate find the loop. Guided onboarding should compress the short-session cluster upward.
Session length distribution
Minutes per session — bimodal pattern visible
Orders fulfilled vs session length
Engagement depth scales with session time

2. Churn signal analysis

Identifying where and why players disengage. With n=10 sessions, this is directional — sufficient to form hypotheses for formal testing, not for statistical conclusions.

Query 2 — Churn signals
-- Identify sessions with churn signals and their characteristics
-- Churn defined as: session_ended before first energy gate OR no merges completed
-- Note: Churn_Signal in event_log marks friction shop_opens (S08/S10 only).
-- Session-level churn comes from session_summary.churn_signal
SELECT
  s.session,
  s.player,
  s.session_length_s,
  s.items_merged,
  s.max_tier_reached,
  s.churn_signal
FROM session_summary s
WHERE s.churn_signal = 'Y'
   OR s.session_length_s < 180  -- sessions under 3 min flagged for review
ORDER BY s.session_length_s;
Query result — sessions flagged for churn or early exit
SessionPlayerDurationItems mergedMax tierChurn signalChurn type
S03P0349s0T1YesHard churn — no merges completed, exited before first energy gate
S01P012m 5s16T3NoShort session — completed loop but did not return. No explicit churn signal.
S09P022m 32s26T5NoMid-game recording — T5 already on board. Context: second session for P02.
Churn finding: one confirmed early exit, onboarding is the likely cause

S03 is the only confirmed churn: 49 seconds, 0 merges completed, Tier 1 only. The player opened the game but did not discover the merge mechanic. This is consistent with three other players independently requesting a tutorial. The free-play start is not sufficient to orient all new players — particularly those without prior merge game experience.

Pre/post test design: Implement guided 3-step onboarding → measure % of players completing first merge vs current baseline (9/10 = 90%). S03 profile is the target cohort for the intervention.

3. Monetisation — energy gate analysis

The energy gate is the primary monetisation surface in the prototype. This analysis measures how reliably it triggers shop engagement and identifies friction vs aspiration context issues.

Query 3 — Energy gate and shop engagement
-- Measure energy gate conversion: energy_refilled → shop_opened
-- Also captures voluntary vs friction-driven shop opens (Rich Data only)
SELECT
  e.session,
  COUNT(CASE WHEN e.event_type = 'energy_refilled' THEN 1 END) AS energy_refills,
  COUNT(CASE WHEN e.event_type = 'shop_opened'    THEN 1 END) AS shop_opens,
  COUNT(CASE WHEN e.event_type = 'shop_opened'
              AND e.shop_voluntary = 'Yes'           THEN 1 END) AS voluntary_opens,
  COUNT(CASE WHEN e.event_type = 'shop_opened'
              AND e.shop_voluntary = 'No'            THEN 1 END) AS friction_opens,
  e.data_type
FROM event_log e
GROUP BY e.session, e.data_type
ORDER BY e.session;
Query result
SessionEnergy refillsShop opensVoluntary opensFriction opensData type
S0122Basic
S0224Rich
S0300Basic
S042538Basic
S053238Basic
S061723Basic
S072133Basic
S086998098Rich
S0934Rich
S10701061105Rich
Monetisation finding: gate triggers reliably — context is always friction

9 of 10 sessions triggered the energy gate and opened the shop. The monetisation moment is reliably produced. However, shop opens track energy refill events almost exactly across all sessions — meaning players open the shop because they're blocked, not because they want to spend. S08 had 0 voluntary opens (100% friction); S10 had just 1. First-purchase conversion will remain low until the shop can also be reached in an aspiration context. P08 flagged sell prices as too low relative to refill cost — an economy calibration signal surfaced independently, not in response to a prompt.

LiveOps recommendation: Delay the first energy gate by ~50% to allow players to experience one full order cycle before hitting a monetisation moment. Measure: shop open rate before vs after gate delay. Success = same shop open rate, higher first-purchase conversion rate.

4. Merge funnel — tier progression efficiency

Rich Data sessions only (S08 + S10). Measures actual merge efficiency at each tier against the theoretical 2:1 baseline — since two items of tier N must be merged to produce one item of tier N+1, a perfectly efficient player would lose exactly 50% of items at each stage.

Query 4 — Tier merge funnel with efficiency vs baseline
-- Tier progression funnel for Rich Data sessions (S08, S10)
-- Compares actual merge counts to 2:1 theoretical baseline
-- Efficiency < 100% indicates items consumed before reaching higher tiers
WITH tier_counts AS (
  SELECT
    session,
    1                                         AS tier,
    COUNT(CASE WHEN event_type = 'item_spawned' THEN 1 END) AS item_count
  FROM event_log WHERE session IN ('S08', 'S10')
  GROUP BY session
  UNION ALL
  SELECT session, tier_after, COUNT(*)
  FROM event_log
  WHERE session IN ('S08', 'S10')
    AND event_type = 'item_merged'
    AND tier_after BETWEEN 2 AND 5
  GROUP BY session, tier_after
)
SELECT
  tier,
  SUM(item_count)                                    AS actual_items,
  LAG(SUM(item_count)) OVER (ORDER BY tier) / 2    AS expected_items,
  ROUND(
    SUM(item_count) * 100.0 /
    (LAG(SUM(item_count)) OVER (ORDER BY tier) / 2), 0
  )                                                   AS efficiency_pct
FROM tier_counts
GROUP BY tier
ORDER BY tier;
Query result — S08 + S10 combined (Rich Data only)
TierActual itemsS08S10Expected (2:1 baseline)Efficiency vs baseline
T1 Spawned1,424705719
T2 First merge68034034071296% ✓
T330314815534089% ✓
T4118586015178% ↓
T5 Max tier211475936% ✗
Key finding: T1→T3 efficiency is strong. T4→T5 drops sharply — and there are no T5 orders.

Players merge efficiently at T1–T3 (96% and 89% of theoretical baseline). The drop begins at T4 (78%) and collapses at T5: only 36% of the expected T5 items were produced. Players are consuming T4 items for lower-tier orders rather than investing them into T5 merges — rational behavior when there are no T5 orders to justify the investment. P08 raised this directly and independently: "Why no Lv5 order? What's the purpose of Lv5 item?" The data confirms the design gap.

LiveOps recommendation: Introduce at least one rotating T5 order with a Gold reward that justifies the merge chain cost (~50 spawns per T5 item based on observed efficiency). A "Tier 5 Double Gold" limited event would directly incentivize the T4→T5 merge that players are currently skipping.
Merge funnel: actual vs expected (2:1 baseline)
S08 + S10 combined · Rich Data only · T5 efficiency at 36% of theoretical baseline

5. Gold economy trajectory

Gold is the soft currency — earned by fulfilling orders, spent on energy refills (100 Gold = +10 Energy). This analysis tracks accumulation rate and spend patterns across the two Rich Data sessions to surface economy calibration signals.

Query 5 — Gold economy trajectory and spend analysis
-- Gold economy: earnings, spend, and net trajectory
-- gold_start = gold_before of first event (FIRST_VALUE by timestamp)
-- gold_end   = gold_before of session_ended event (final snapshot before close)
-- Rich Data sessions only (S08, S10)
SELECT
  session,
  FIRST_VALUE(gold_before) OVER (
    PARTITION BY session ORDER BY timestamp
  )                                                 AS gold_start,
  MAX(CASE WHEN event_type = 'session_ended'
        THEN gold_before END)                         AS gold_end,
  SUM(CASE WHEN event_type = 'order_fulfilled'
        THEN gold_after - gold_before ELSE 0 END)  AS gold_earned,
  SUM(CASE WHEN event_type = 'energy_refilled'
        THEN gold_before - gold_after ELSE 0 END)  AS gold_spent,
  ROUND(
    AVG(CASE WHEN event_type = 'order_fulfilled'
          THEN gold_after - gold_before END), 1
  )                                                 AS avg_gold_per_order,
  COUNT(CASE WHEN event_type = 'order_fulfilled'
          THEN 1 END)                              AS orders_fulfilled
FROM event_log
WHERE session IN ('S08', 'S10')
GROUP BY session;
Query result
SessionGold startGold endNet changeGold earnedGold spentAvg gold/orderOrders
S082502,018+1,7688,8026,90068.8128
S102503,220+2,9709,9707,00069.2144
Gold balance over session — S08 vs S10
Both sessions start at 250 gold · Each data point = 100 events · S10 ends at 3,220
Economy finding: Gold accumulates faster than spend opportunities — sell prices need calibration

Both sessions show consistent Gold accumulation over time: S08 ended at 2,018 (+707%), S10 at 3,220 (+1,188%). Gold is earned at ~69 per order and spent at 100 per energy refill. The net positive trajectory means players are spending on energy but still accumulating surplus — which sounds healthy, but P08 flagged sell prices as "too low." The real signal is that players have Gold but not enough reasons to spend it beyond energy refills. The economy needs a second spend destination — which is exactly what the Pearl currency and T5 orders would provide.

Economy calibration recommendation: Increase item sell prices by 25–50%. Introduce T5 orders with Gold rewards ~2–3x higher than current average (target: 150–200 Gold per T5 order). Measure: Gold balance trajectory and energy refill rate before vs after calibration.

6. P08 longitudinal analysis — S08 → S10

P08 completed two full sessions (S08 and S10) using the embedded logger — the only player with two Rich Data sessions. This provides a within-player longitudinal view: how did engagement, efficiency, and economy behavior change across sessions? Note: no product changes were made between S08 and S10. This is a player learning curve analysis, not a pre/post test. A true pre/post is designed below.

Query 6 — Within-player session comparison (P08)
-- Compare P08's two sessions across key engagement and economy metrics
-- No product change between sessions — measures player learning curve
SELECT
  session,
  ROUND(session_length_s / 60.0, 1)                      AS duration_min,
  orders_fulfilled,
  ROUND(orders_fulfilled * 60.0 / session_length_s, 2)   AS orders_per_min,
  energy_refills,
  ROUND(orders_fulfilled * 1.0 / energy_refills, 2)       AS orders_per_refill,
  merge_ratio,
  max_tier_reached,
  ROUND(events_per_minute, 1)                             AS events_per_min
FROM session_summary
WHERE player = 'P08'
ORDER BY session;
S08 — first session
Duration30.5 min
Orders fulfilled128
Orders / min4.20
Energy refills69
Orders per refill1.86
Merge ratio0.79
Events / min51.2
T5 items produced14
Gold end2,018
S10 — second session
Duration27.5 min −3 min
Orders fulfilled144 +12.5%
Orders / min5.24 +24.8%
Energy refills70 +1
Orders per refill2.06 +10.7%
Merge ratio0.78 −0.01
Events / min58.2 +13.7%
T5 items produced7 −50%
Gold end3,220 +59.6%
Longitudinal finding: P08 became significantly more efficient in session 2

Despite playing 3 minutes less in S10, P08 fulfilled 16 more orders — a 24.8% improvement in orders per minute. Event cadence also increased 13.7%, suggesting faster decision-making with board familiarity. T5 item production dropped by 50% (14→7), consistent with increasingly order-focused play: P08 learned to consume items at lower tiers for faster order turnover rather than investing in the T5 merge chain. Gold accumulation doubled to 3,220 — the economy accommodated high-volume play without breaking.

Pre/post test design (not yet run): Implement Tier 5 orders → ask P08 to play a third session (S11). Hypothesis: T5 production will recover toward S08 levels (target: 10+ T5 items) because there is now a Gold reward that justifies the merge investment. Primary metric: T5 merge count. Secondary: orders/min and Gold trajectory.
S08 vs S10 — key metrics comparison
S10 shows higher throughput despite shorter session — player learning curve visible

7. LiveOps recommendations — data-grounded

Each recommendation traces directly to a finding in the event log. Framing: data signal → LiveOps event design → success metric.

Economy event
Tier 5 Double Gold Week
For one week, all Tier 5 orders pay 2× Gold reward. Directly addresses the T5 dead-end: players who invest in the ~50-spawn merge chain get a meaningful return.
Data signal
T5 efficiency at 36% of baseline — players skip T5 merges. 6/10 sessions reached T5 with no purpose.
Measure success by
T5 merge count per session (baseline: 10.5 avg S08+S10). Target: +40% during event.
Engagement event
Energy Surge — 10 min unlimited
Once per session, one rewarded ad unlocks 10 minutes of unlimited energy. Non-IAP revenue layer for non-spenders. Keeps high-engagement players in session without undermining the soft paywall.
Data signal
P08: 69–70 energy refills per session, flagged "too fast." P05: "bisa ada opsi buat langsung full." 9/10 players hit the gate.
Measure success by
Session length delta for players who use the surge vs those who don't. Target: +15% session extension.
Seasonal event
Spring Market — limited decor
6-week seasonal event: spring-themed limited orders (flower arrangements, garden produce), exclusive park decor items, community milestone (total orders fulfilled across all players unlocks bonus item).
Data signal
4/10 players independently flagged lack of goals/stakes beyond Gold accumulation. Seasonal events give a time-bounded goal that creates urgency.
Measure success by
D7 retention during event vs non-event cohort. DAU during event window.