Mark
Prijzen Aanmelden
← Alle artikelen

Game-analytics-infrastructuur: zelf bouwen of kopen?

Mike Dalton Door Mike Dalton ·

Gestapelde databasecilinders, met pijlen verbonden met een dashboardkaart met een staafgrafiek.

Game-analytics-infrastructuur is het geheel van systemen dat events uit je game en je servers verzamelt, opslaat en omzet in rapporten. Je kunt het zelf bouwen bij een cloudprovider of betalen voor een tool die het voor je draait. Deze gids behandelt de onderdelen van een pipeline, wat het draaien ervan kost, de kleinste versie die het bouwen waard is en hoe je kiest tussen bouwen en kopen.

Wat is een game-analyticspipeline?

Een game-analyticspipeline brengt een event, zoals een matchresultaat of een voltooid level, van de game naar een rapport. De meeste pipelines hebben dezelfde onderdelen:

Onderdeel Wat het doet Voorbeelden van services
Verzameling De gameclient of gameserver stuurt events, via een SDK of HTTP-verzoeken. De code van je game
Ingest-endpoint Controleert inloggegevens, valideert events en accepteert ze in batches. API Gateway met Lambda, of je eigen webserver
Stream of wachtrij Houdt events vast tussen het endpoint en de opslag, zodat een piek in het verkeer geen data kost. Kinesis, Kafka, Pub/Sub
Opslag Bewaart elk event, als bestanden in objectopslag (een data lake) of in een datawarehouse. S3, BigQuery, Redshift, Snowflake
Transformatie en query's Zet events om in nette tabellen en beantwoordt vragen met SQL. Glue, Athena, dbt
Rapporten Maakt van queryresultaten dashboards en grafieken die mensen lezen. QuickSight, Metabase, Grafana

Een kleine pipeline kan meerdere onderdelen combineren. Een grote voegt er meer toe, zoals realtime verwerking voor live dashboards.

Het werk dat niet in het diagram staat

Een architectuurdiagram laat zien waar events naartoe gaan. Het laat niet het werk zien dat de data correct houdt:

  • Eventontwerp: bepalen wat je vastlegt en wat elk veld betekent, en dat daarna tussen gameversies aanpassen zonder oude rapporten te breken.
  • Verzenden vanuit de game: events in batches bundelen, mislukte verzoeken opnieuw proberen en events bewaren terwijl de speler offline is.
  • Dubbele events: door nieuwe pogingen worden sommige events twee keer verstuurd, dus je hebt een manier nodig om ze te herkennen.
  • Inloggegevens in de gamebuild: alles wat in een game wordt meegeleverd, kan worden uitgelezen, dus de sleutel in de game mag alleen events kunnen versturen. Zie welk API-token je game moet gebruiken.
  • Privacy: toestemming van spelers vastleggen, en de data van een speler vinden en verwijderen als die erom vraagt.
  • De rapporten zelf: retentie, funnels en winrate per gameversie zijn query's die iemand moet schrijven, controleren en bijhouden. De gids voor het balanceren van een game met data laat zien hoeveel zorg één winrate-rapport al vraagt.

Deze kosten zijn vooral engineeringtijd, en ze lopen door zolang de game live is.

De AWS Game Analytics Pipeline

AWS publiceert een kant-en-klaar ontwerp met de naam Guidance for Game Analytics Pipeline on AWS. Je zet het in je eigen AWS-account met de AWS CDK of Terraform. Het bevat:

  • Een REST API gebouwd met API Gateway, Lambda en DynamoDB, die events accepteert van gameclients, gameservers en backendservices.
  • Een datastack naar keuze: een data lake in S3 (Hive- of Iceberg-tabellen), verwerkt met Glue en bevraagd met Athena, of Redshift Serverless als datawarehouse.
  • Optionele realtime analytics met Kinesis Data Streams, Managed Service for Apache Flink en OpenSearch.

De schatting van AWS, van augustus 2025 in de regio US East (N. Virginia), voor 100 events van 1 KB per seconde (259,2 miljoen events per maand):

Datastack Geschatte kosten per maand
Data lake (Iceberg-tabellen) $ 65,88
Data lake (Hive-tabellen) $ 92,06
Redshift $ 252,50
Realtime analytics (bovenop het bovenstaande) $ 770,94

AWS noemt dit ruwe schattingen en raadt aan om zelf te testen. De meeste services rekenen af op gebruik, dus een game met minder verkeer betaalt minder.

AWS publiceert het ontwerp als voorbeeldcode, geleverd zoals het is. Zodra het draait, beheert je team het: updates, monitoring en reparaties zijn voor jou. Het dekt verzameling, opslag en query's, met voorbeeldquery's in Athena voor veelgestelde vragen over games, maar het bevat geen dashboards. Je koppelt zelf een dashboardtool zoals QuickSight.

De kleinste pipeline die het bouwen waard is

Als je game al een server en een database heeft, is de kleinste pipeline één tabel en SQL. De server schrijft een eventrij weg wanneer er iets gebeurt:

CREATE TABLE game_events (
  id bigserial PRIMARY KEY,
  player_id text NOT NULL,
  game_version text NOT NULL,
  name text NOT NULL,
  properties jsonb NOT NULL DEFAULT '{}',
  created_at timestamptz NOT NULL DEFAULT now()
);

Daarna beantwoordt een query een vraag. Deze berekent de winrate per personage voor elke gameversie, waarbij elk matchresultaat is opgeslagen als 1 voor een overwinning en 0 voor een verlies:

SELECT
  game_version,
  properties->>'character' AS character,
  round(avg((properties->>'result')::int), 3) AS win_rate,
  count(*) AS games
FROM game_events
WHERE name = 'match_finished'
GROUP BY game_version, character
ORDER BY game_version, character;

Dit werkt goed voor een kleine game, en de data blijft in een database waarvan je al back-ups maakt. Het bereikt zijn grens wanneer:

  • Analyticsquery's de database vertragen waar de game van afhangt.
  • Er meer vragen komen dan iemand tijd heeft om query's voor te schrijven.
  • Iemand anders dan de schrijver van de query's de resultaten moet lezen.

Wat bouwen kost tegenover kopen

Bouwen heeft twee kosten: de cloudrekening, en de engineeringtijd om de pipeline te bouwen en draaiende te houden. Voor een kleine studio is de cloudrekening vaak de kleinste van de twee.

Kopen heeft één kostenpost, het abonnement, en veel tools zijn gratis op kleine schaal:

  • GameAnalytics: gratis, zonder limiet op maandelijks actieve gebruikers (MAU).
  • Google Analytics for Firebase: gratis.
  • Unity Analytics: gratis tot 50.000 MAU, daarna per MAU.
  • Game Stats AI: gratis voor 1.000 bijgehouden records per maand, met betaalde abonnementen vanaf $ 19 per maand.

De vergelijking van game-analyticstools geeft per tool de prijzen, de ondersteunde engines en de toegang tot ruwe data.

Wanneer je zelf bouwt

Zelf bouwen is de betere keuze als:

  • Je al een datateam hebt, of een datawarehouse dat iemand onderhoudt.
  • Je de gamedata op dezelfde plek nodig hebt als andere bedrijfsdata, zoals marketing- of supportdata.
  • Je volume zo hoog is dat prijzen per speler of per event meer kosten dan een eigen pipeline.
  • Je eisen hebt voor de locatie of het eigendom van data waar geen leverancier aan voldoet.

Wanneer je een tool gebruikt

Een tool is de betere keuze als:

  • Niemand in het team een pipeline doorlopend kan beheren.
  • Je vragen de gebruikelijke zijn: retentie, omzet, voortgang of winrates.
  • Je rapporten wilt tijdens de ontwikkeling en bij de lancering, niet pas na afloop van een dataproject.

Houd de mogelijkheid om over te stappen

Wat je ook kiest, een paar gewoontes houden een latere overstap goedkoop:

  • Bepaal je eigen eventformaat. Leg je events en hun velden vast, en bewaar die definitie in je code, niet in het dashboard van één leverancier.
  • Verstuur events vanaf je server waar dat kan. Een bestemming wijzigen op een server kost één deploy. Hem wijzigen in de game kost een nieuwe build en spelers die updaten.
  • Controleer hoe je data eruit krijgt. Sommige tools bieden export van ruwe data in elk abonnement, sommige alleen in hogere abonnementen (Unity Analytics vereist Snowflake), en sommige alleen via een API.

Game Stats AI is hiervoor gemaakt. Het accepteert events via een REST API zonder dat je eerst een schema hoeft te registreren, en vanaf het Studio-abonnement accepteert een aangepast ingest-endpoint het payloadformaat dat je game of server al verstuurt. Als je later een eigen pipeline bouwt, of er al een hebt, kan je server dezelfde events naar allebei sturen. Rapporten zijn via de API te lezen met een servertoken.

Veelgestelde vragen

Wat is game-analytics-infrastructuur?

De systemen die events uit een game en de bijbehorende servers verzamelen, opslaan en omzetten in rapporten. Meestal gaat het om een ingest-endpoint, een stream of wachtrij, opslag in een data lake of datawarehouse, een query-engine en dashboards.

Wat kost een game-analyticspipeline?

AWS schat zijn Game Analytics Pipeline op ongeveer $ 66 tot $ 92 per maand voor een data lake, of ongeveer $ 253 voor Redshift, bij 100 events per seconde, plus ongeveer $ 771 voor realtime analytics. Tel daar de engineeringtijd bij op om hem te bouwen en te onderhouden. Veel analyticstools zijn gratis op kleine schaal.

Moet een indiestudio zijn eigen analytics bouwen?

Meestal niet in het begin. Tenzij de studio al iemand heeft die datasystemen onderhoudt, levert een tool sneller rapporten op. Als de game een server heeft, is events wegschrijven naar één databasetabel een goed begin, en kun je later overstappen op een grotere pipeline.

Wat zit er in de AWS Game Analytics Pipeline?

Een REST API voor events, een data lake in S3 met Glue en Athena of een Redshift-datawarehouse, en optionele realtime analytics met Kinesis, Apache Flink en OpenSearch. Je zet hem in je eigen AWS-account met de AWS CDK of Terraform en onderhoudt hem zelf.

Lees verder

© 2026 Rowhome Labs, LLC