My recommendation for anyone who isn't already too deep/stuck in their current stack would be to look at starting something with a PostgreSQL + Elixir/Phoenix/LiveView combo. You'll end up with an incredible foundation that would be hard to outgrow. Lots of the simplicity/structure familiar to Rails, interactivity like React, but without most of the downsides. Performance/scale/dx is about as good as it gets. I can't do it justice in a short comment but there is plenty out there to read up on.
I do some of this but in a slightly different, maybe simpler way:
1. App runs in App Engine (flex). It includes a simple /collect endpoint for mobile events that just logs to /var/log/app_engine/custom_logs/track.json which automatically gets picked up by Google's Stackdriver. App code can just directly log to that file as well to record server-side events. (no network involved in recording events).
2. Stackdriver stores logs in Cloud Storage and also dispatches a Cloud PubSub push to a configured topic.
3. Another mini App Engine flex app receives the message, does the ETL, and inserts the row into BigQuery.