Own your raw event data, reduce analytics costs, and avoid recurring SaaS pricing. Rawbbit is a self-hosted analytics pipeline for game studios looking for a practical alternative to Firebase Analytics, Amplitude, devtodev, etc.
No subscriptions. No per-user fees. No per-event pricing.
Many studios start with Firebase Analytics, Amplitude, or devtodev because setup is fast. The problem appears later: more players means more in-app events produced, more storage, more querying, and more cost pressure.
Once your game starts generating serious event volume, analytics pricing stops feeling lightweight. High daily event counts can quickly turn a convenient tool into a recurring cost problem.
Raw event access, exports, and downstream flexibility are often limited by the platform you chose early. That creates lock-in exactly when you need more control.
A custom analytics pipeline gives you freedom, but most studios do not want to spend weeks assembling ingestion, storage, modeling, and BI from scratch.

I work in data engineering and have spent time around game development teams where analytics volume grows fast and platform limits become real. I've seen what happens when Firebase Analytics hits the 1 million events per day limit: either you pay for the enterprise version or you start losing data.
Rawbbit gives you a deployable analytics pipeline that runs on your infrastructure and keeps raw event data portable from the beginning.
I deploy the system into your infrastructure for a one-time 500 EUR payment. No recurring service fee from me. If your team prefers, you can also install it yourself for free.
Events are written to the Blob storage in Parquet format (Google Cloud Storage by default). That means your raw event layer stays portable and can be moved, replayed, or connected to other systems later without locking your tracking model to one vendor.
RawbbitEvent is a self-hosted event tracking, ingestion, and raw-storage pipeline designed to keep the raw layer durable and portable.
The current runtime path is straightforward: producers send event batches to an HTTP collector, NATS JetStream buffers the write path, and a raw writer lands partitioned Parquet files in object storage.
The supported query path continues from that raw layer through a BigQuery external table and a small SQLMesh starter project, while keeping raw Parquet as the system-of-record boundary.
Producer โ Collector API โ NATS JetStream โ Raw Writer โ Parquet in object storage
Rawbbit uses a simple event envelope with stable top-level fields and flexible custom payload areas.
{
"event_id": "uuid",
"app_id": "mygame.prod",
"environment": "prod",
"event_name": "level_completed",
"event_timestamp": "2026-04-06T06:00:00.000Z",
"received_at": "2026-04-06T06:00:00.412345+00:00",
"user": {
"user_id": "123",
"user_pseudo_id": "anon_abc",
"session_id": "sess_xyz"
},
"device": {
"platform": "android",
"app_version": "1.4.2",
"os_version": null,
"device_model": null,
"locale": null,
"timezone": null,
},
"event_params_json": "{
"level": 12,
"duration_sec": 84
}",
"user_properties_json": "{
"payer": true,
"country": "FI"
}",
"traffic_source_json": "{}",
"geo_json": "{}",
"consent_json": "{}",
"ingest_request_id": "5d89a0c9-8e70-4108-b5e8-49bf9b2896d8",
"ingest_user_agent": "iOS ...",
"ingest_ip_hash": "d8e0...",
"nats_stream": "EVENTS",
"nats_sequence": 12345
}
event_id, app_id, event_name, and event_timestamp define the event envelope and make ingestion, replay, and downstream processing predictable.
user_id, user_pseudo_id, and session_id support both authenticated and anonymous analytics patterns.
event_params and user_properties are designed for custom sub-fields. These can later be transformed in SQLMesh into explicit reporting columns and output tables.
Free self-serve for technical teams, or a one-time โฌ500 done-for-you setup. No recurring fees.
โฌ0 โ for technical teams who want to deploy and operate the stack themselves.
โฌ500 one-time โ for teams that want the fastest path to a working self-hosted analytics stack.
This is not meant to be everything for everyone. It works best for teams with some analytics maturity who want ownership without building the whole stack from zero.
No. Rawbbit is a self-hosted analytics pipeline deployed into your infrastructure.
You do. The default supported setup uses your own VM and Google Cloud services where needed.
No. The service offer is a one-time 500 EUR setup payment. The self-serve version is free.
The default setup starts simple, usually on one VM, and can be scaled later as your traffic increases. Cloud VM is easy to scale, usually computing performance can be increased just by updating settings in the interface.
I personally worked with Google Cloud Platform and UpCloud, these two I would recommend.
Use my refferral link for UpCloud (https://signup.upcloud.com/?promo=UR4689) to get 25 EUR as bonus. VM costs start at 3 EUR/month.
Raw events are written to the blob storage in Parquet format (Google Cloud Storage by default).
Yes. Portability of the raw layer is one of the main design goals.
Yes. Backend producers are supported now. JavaScript support is included, and game SDK support is planned.
It is designed for teams that want to move away from those tools and own their analytics stack, though migration details depend on your current event setup.
Yes. I'm working on it.