One of the first users of Rudder was a mobile casino game. Their spin wheel game is one of the most popular games in that category, having ~60K daily active users generating 30M daily spin events. And they are doubling every six months.
They are highly data-driven so want to track all their in app activities. The growth-hacking team wants to know who their top users are, who is going to churn etc and run targeted campaigns. The product team wants to know which spin wheels are popular and how people are using the app to improve the product. Even their customer support team wants access to the data – sometimes their paid users complain about pay-outs so having data around spins is helpful. This last case requires them to track individual spin events, not just at aggregate level – that’s 1B+ events every month and doubling every 6 months!!
While that was a really impressive milestone in itself, it blew through their free limits of most analytics software – Google Analytics, Amplitude etc. With 90%+ of free users, they didn’t have the budget to pay tens of thousands of dollars to the analytics vendors.
This was a very interesting use case for Rudder. Rudder enabled them to
- Sample (1 in 10) spin events and send to Google Analytics. The sampling was implemented in a transformation function.
- SUM up the spin events in a session and send to Amplitude. Their users would typically do multiple spins (20-30) in quick succession before closing the app and that would constitute ONE session. This SUM too was implemented in a transformation function
- Dump the individual spin events to S3/Redshift.
Each one served a specific purpose. Google Analytics was used by the product team for app analytics. For that purpose a representative sample of the events were good enough, they didn’t need all the events.
The amplitude data was used by their growth hacking team to identify the high value users, churning users etc and run targeted campaigns. They needed to know the “total” win of a user as that was included in the campaign messages. Summing up the wins from multiple spin events before sending to Amplitude ensured that rate limit of the target platform was not breached while it still had data around total amount won by individual users. Finally, the raw event dumps in S3/Redshift was used by their Customer Support team to resolve any customer support queries around payouts from spins.
This shows how people are using Rudder in interesting ways even beyond the standard use case of sending events to multiple destinations.