Industries
Gaming & digital media
We turn event data streaming from millions of users into an analytics warehouse that answers subscription and content questions in seconds.
A mobile game or content app produces two kinds of data. Operational data — users, books, subscriptions — sits in the app’s own database, in normalised tables designed for transactions. Behavioural data — which screen opened when, which book was read for how many seconds, which game was launched how many times — arrives from the device as events and piles up file by file in object storage. Each does its own job; but “which content held which age group this month” needs both at once and gets a slow answer from both.
Event design comes first
Data that is not collected cannot be produced later. Writing down, before the app ships, which event is sent at which moment with which fields — session id, profile, device, scene, duration — is the foundation of every later report. We build this list together with the development team and tie retention and session metrics to their source events from the start.
A separate warehouse for analytics
An operational database is designed for joins, an analytics warehouse for scans. In a columnar engine — ClickHouse, say — a book’s authors, categories and languages sit in one row as arrays; one table is read instead of seven. Event files are read straight from object storage into fact tables enriched with dimensions, with materialized views producing hourly and daily aggregates on top.
Start small, grow by report
The first step is not building every dimension and every fact; it is taking a single fact table live with user, content and time dimensions and producing three reports from it. As the schema grows, school, publisher, subscription and revenue layers are added — each layer answering a report need.
Our work in this area
Mayadem
Mayadem: from game events to a ClickHouse data warehouse
Two pieces of work in two periods for Mayadem, a studio building children's games and content apps: event design and marketing dashboards for TRT Çocuk Oyun Dünyası in 2022; and in 2025, for the MagicPages reading app, a ClickHouse analytics warehouse that brings PostgreSQL and S3 together — join-free array-based dimensions and fact tables that answer in seconds. Continues as data-organisation consulting.
- 7 → 1 Book dimension
- 130+ Event definitions
Upily
Upily: discovery and audit of the Wonjo Kids data infrastructure
The Firebase, Adjust and RevenueCat data of Wonjo Kids, a games app for children, had been gathered in BigQuery but had grown organically into complexity. Across seven areas — table inventory, pipelines, cross-platform matching, platform parity, taxonomy, event tracking, dashboards — we examined more than 1,500 BigQuery objects and 330 events, and delivered strengths, risks and a four-phase transformation roadmap in a single report.
- 1,500+ Objects examined
- 330+ Events