SlideShare a Scribd company logo
Adam Longhorn
Head of Analytics
Reality Games
adam.longhorn@reality.co
https://pl.linkedin.com/in/adamlonghorn
Making life easier and delivering insight faster:
Simplifying App analytics and reporting in a few easy steps with Firebase and
BigQuery
Award-winning f2p games using
real-world data from across the globe
Launched
2015
Launched
2016
Launched
2017
Launching
2020
Coming 2021 Coming 2021
ⓘ Start presenting to display the poll results on this slide.
How long does it take to perform a 'typical'
data analysis request from your team
member?
ⓘ Start presenting to display the poll results on this slide.
When would your team member 'typically'
like to have their analysis request delivered?
What would be helpful for analysts:
➢ Accessible data, at the appropriate granularity
➢ Simple data structures so analysts (and quasi-analysts) are able to use it easily
➢ Relevant business metrics and dimensions that make it truly useful instead of just ‘nice to
have’ data
A challenge many analysts face (including myself):
➢ Business requests for analysis come in fast and business decisions get made even faster
➢ Our businesses generate a ton of data. A lot of that data not readily available to support the
pace of the business
Solution: The ‘Daily KPI’ table
➢ An easy-to-use BigQuery table
➢ Granulated at the user/day level
➢ Covers 80% of ad-hoc analysis requests
➢ (Bonus) Connectable to Google Data Studio reporting
SQL
Tools:
Agenda for today:
➢ Integrate BigQuery with Firebase (assumes we all have
Firebase SDK installed)
➢ Set-up SQL data-pull in BigQuery and schedule
data-extraction job (step-by-step instructions and tools
are given -- making your life easier!)
➢ Review what we have done, takeaways, and final
thoughts
Estimated time to implement
yourselves:
● 1-min to integrate BigQuery
● 1-day of rest
● 30-min to build and schedule
the jobs
ⓘ Start presenting to display the poll results on this slide.
How familiar are you with Firebase and
BigQuery?
Navigate to Firebase console, open your Firebase project and navigate to the BigQuery
‘Integration’ manager
Select your project1 Project settings2
BigQuery3
Next
window
Next
window
Toggle ‘Google Analytics’ integration
Side note -- Other BigQuery integrations
available:
● Crashlytics
● Predictions
● Performance Monitoring
● Cloud Messaging
...So much to analyze!
Toggle this!1
Great job! Firebase is now sending raw analytics event data to BigQuery
You have just opened up a new world of possibilities w/ BigQuery!
…..
….
But what now?
Take a (1 day) break. You deserve it!
AND You need to give Firebase time to export the raw data
Navigate to GCP platform, select your project and initialize BigQuery
Scroll-down
for BigQuery
Select your project1
2
Navigate to your project and create dataset ‘reporting’
Highlight your project
Create dataset
Name:
‘reporting’
Create dataset
Pop-up
window
1
2
3
4
Paste in 1st SQL query (link) into any text editor
Will look similar to
this
Point the 1st SQL query to your project’s analytics
events dataset
Find this string within the query: <analytics events dataset>
...Replace with: your project’s events
dataset (ex: ‘analytics_201716494’)
….For each instance of <analytics events dataset> in the query
1
2
3
4
Link to 1st SQL query: https://bit.ly/DailyKPIs1
Paste modified 1st SQL query into editor, run and save as BQ table named ‘daily_KPIs’
Paste query here
Run query
Save results
Clear editor
Name table ‘daily_KPIs’ in the
‘reporting’ dataset
Pop-up
window
1
2
3
4
5
6 Save
Paste in 2nd SQL query (link) into any text editor
Point 2nd SQL query to your project’s analytics events
dataset
Find this string: <analytics events dataset>
...Replace with: your project’s events dataset
(ex: ‘analytics_201716494’)
….For each instance of <analytics events dataset> in the query
(Exactly like we did with the 1st
SQL query)
1
2
3
4
Link to 2nd SQL query: https://bit.ly/DailyKPIs2
Paste modified 2nd SQL query into editor and schedule query to run automatically every day
Paste query here
Create new
scheduled query
Clear editor
Pop-up
window
Schedule it!
1
2
3
4
5
Fill in
required
data
Nice job! You are finished!
But wait!
…..
What did I just
create?
Scheduled job in
BigQuery
Extracts raw
analytics event data
from previous day
IAP
First opens
sessions
transforms raw data
into daily summary
for every user that
logs into your app
User info
Appends user data
to ‘daily_KPIs’ table
on BQ to keep
running history
reporting.daily_KPIs
Your Project
space on BQDaily user summary
FIELD TYPE EXAMPLE DESCRIPTION
event_date STRING 20200523 YYYYMMDD format for the day’s summary
user_pseudo_id STRING 9544015614101dfce88afd6cf2ac6eb5 Unique identifier (to your project) for each of your app’s users
country STRING United States Long form of user’s country
platform STRING ANDROID ANDROID or iOS
sessions INTEGER 3 Number of total sessions generated by user in given day
seconds FLOAT 350 Total number of seconds user spent within your app on given day
first_open INTEGER 1 1 = this is the device’s first time using your app. 0 = not first time
payments INTEGER 2 Number of IAP user made on given day
revenue FLOAT 9.98 Total amount of gross IAP revenue from user on given day (in USD)
‘daily_KPIs’ table: details
How your life has become easier: super quick analysis
What was MAU, by country,
in March?
What percentage of new users
converted to payers on D0 in the
first week of February?
What is the average session
length by platform?
What was our ARPU in
January?
How your life has become easier: Customized/Flexible reporting with Google’s Data Studio
Built-in connectors
reporting.daily_KPIs
Your Project
space on BQ
Your Logo Here!
How your life has become easier: Framework for more building a more sophisticated
‘daily_KPIs’ table
You can modify the queries provided earlier by ...
● adding more dimensions (ex: mobile device or brand, app
version, etc.) to group and filter by
● metrics from customized analytics events (level-ups, tutorial
completes, etc.) that you would like to report on
Enhance your own ‘daily_KPI’ table to…
● best-fit your businesses needs
● make your job easier
● deliver insight faster
Thank You for your time today
and Good Luck!
Adam Longhorn
Head of Analytics
Reality Games
adam.longhorn@reality.co
https://pl.linkedin.com/in/adamlonghorn
ⓘ Start presenting to display the audience questions on this slide.
Audience Q&A Session

More Related Content

PDF
User Acquisition focused on LTV on steroids
PDF
How to boost your ASO with data analytics?
PDF
Optimising user acquisition through LTV prediction
PDF
Building cost-effective mobile product & marketing app analytics based on GCP...
PDF
Build your own event analytics pipeline using BigQuery, Dataflow, and k8s. Je...
PDF
LTV measurement and multi-touch attribution
PDF
Big Problem, BigQuery: User Feature Engineering in Event-driven Analytics
PDF
LTV from Ads. Challenge and solution: Huuuge Games and Tap Tap Games example
User Acquisition focused on LTV on steroids
How to boost your ASO with data analytics?
Optimising user acquisition through LTV prediction
Building cost-effective mobile product & marketing app analytics based on GCP...
Build your own event analytics pipeline using BigQuery, Dataflow, and k8s. Je...
LTV measurement and multi-touch attribution
Big Problem, BigQuery: User Feature Engineering in Event-driven Analytics
LTV from Ads. Challenge and solution: Huuuge Games and Tap Tap Games example

What's hot (20)

PDF
Ad-hoc tasks in the Data Scientist team based on Outfit7 example
PDF
Adjust Workshop - PUSHING AND PULLING YOUR DATA
PDF
Unlock App Marketing Success With Rewarded Ads
PDF
Growth Strategies: Lower Your CPI by Implementing ASO into UA Workflow.
PDF
Top 5 Do's and Don'ts for App Retargeting
PDF
State of the gaming app marketing in 2018. Things to consider for 2019
PPTX
Most Valuable Retargeting Strategies for Mobile Gaming Apps
PDF
Best Practice Audience Segmentation for App Retargeting: Early and Late Stag...
PDF
Enabling the growth of the game through performance marketing in 2020
PDF
Leveling Up: Best Practices for Your Mobile Gaming App Launch
PDF
A/B testing in ad monetisation
PDF
The Best Mobile Retargeting Strategies for the Future - EMEA
PDF
All Your Burning UAC Questions Answered
PDF
Predictive Marketing In A Nutshell
PDF
Driving revenue with Mobile Re-engagement - Go beyond the install
PPTX
Rise of Hyper-Casual as challenge for the UA of mid-core games (without videos)
PDF
[Adjust & Snapchat] How to capture meaningful attention in 3 seconds
PDF
Data behind UA
PPTX
Introduction to Digital Analytics for Apps - Trusted Conf
PDF
A/B testing in Firebase. Intermediate and advanced approach
Ad-hoc tasks in the Data Scientist team based on Outfit7 example
Adjust Workshop - PUSHING AND PULLING YOUR DATA
Unlock App Marketing Success With Rewarded Ads
Growth Strategies: Lower Your CPI by Implementing ASO into UA Workflow.
Top 5 Do's and Don'ts for App Retargeting
State of the gaming app marketing in 2018. Things to consider for 2019
Most Valuable Retargeting Strategies for Mobile Gaming Apps
Best Practice Audience Segmentation for App Retargeting: Early and Late Stag...
Enabling the growth of the game through performance marketing in 2020
Leveling Up: Best Practices for Your Mobile Gaming App Launch
A/B testing in ad monetisation
The Best Mobile Retargeting Strategies for the Future - EMEA
All Your Burning UAC Questions Answered
Predictive Marketing In A Nutshell
Driving revenue with Mobile Re-engagement - Go beyond the install
Rise of Hyper-Casual as challenge for the UA of mid-core games (without videos)
[Adjust & Snapchat] How to capture meaningful attention in 3 seconds
Data behind UA
Introduction to Digital Analytics for Apps - Trusted Conf
A/B testing in Firebase. Intermediate and advanced approach
Ad

Similar to Building the BI system and analytics capabilities at the company based on Reality Games example (20)

PDF
How and Why: Embedded Analytics Interfaces For Your SaaS Product
PPTX
Modern Product Data Workflows: How and Why: Embedded Analytics Interfaces For...
PDF
ML, Statistics, and Spark with Databricks for Maximizing Revenue in a Delayed...
PPTX
How the economist with cloud BI and Looker have improved data-driven decision...
PDF
The Complete Guide to Embedded Analytics
DOC
PDF
Building a Marketing Data Warehouse from Scratch - SMX Advanced 202
PPTX
Google Data Studio for business
PPTX
Monitoring and Measuring SharePoint to Guarantee Your ROI
DOCX
426769701-Pet-Shop-Management-System.docx
PPTX
Navigating the Workday Analytics and Reporting Ecosystem
DOCX
ContentsTeam Work Schedule3Team Task Assignment3Project .docx
PDF
Automated reporting with With Google Sheets/Slides/Data Studio
PDF
Application Migration: How to Start, Scale and Succeed
PPTX
Q1 and q2 2020 role overview
DOC
Shrivastav
PPTX
Applying linear regression and predictive analytics
PDF
Why and How SmartNews uses SaaS?
PDF
[Case study]Utilize STLC data for Process Improvement
DOCX
battery pa report.docx
How and Why: Embedded Analytics Interfaces For Your SaaS Product
Modern Product Data Workflows: How and Why: Embedded Analytics Interfaces For...
ML, Statistics, and Spark with Databricks for Maximizing Revenue in a Delayed...
How the economist with cloud BI and Looker have improved data-driven decision...
The Complete Guide to Embedded Analytics
Building a Marketing Data Warehouse from Scratch - SMX Advanced 202
Google Data Studio for business
Monitoring and Measuring SharePoint to Guarantee Your ROI
426769701-Pet-Shop-Management-System.docx
Navigating the Workday Analytics and Reporting Ecosystem
ContentsTeam Work Schedule3Team Task Assignment3Project .docx
Automated reporting with With Google Sheets/Slides/Data Studio
Application Migration: How to Start, Scale and Succeed
Q1 and q2 2020 role overview
Shrivastav
Applying linear regression and predictive analytics
Why and How SmartNews uses SaaS?
[Case study]Utilize STLC data for Process Improvement
battery pa report.docx
Ad

More from GameCamp (20)

PDF
Practical approach to creative testing and creative optimisation at Google UA...
PDF
Creativity and science behind creative testing. creative testing framework an...
PDF
8 Types of mobile game and app creatives you should try
PDF
Developing an effective LTV model at the soft launch and keeping it valid fur...
PDF
Driving profitability of Google App Campaigns in scale. What is easy, what is...
PDF
Scaling UA activity - the challenges of growth
PDF
Growth trends in mobile gaming based on the data
PDF
Facebook's and Social Creative Best Practice that worked for Huuuge
PDF
Using Data Science for Behavioural Game Design
PDF
Learnings and insights from Benchmarks+. Performance Insights for 1.2bn Month...
PDF
In-app offers monetization from basics to advanced technics based on Crazy Pa...
PDF
How ASO Has Changed in 2019 and What’s Next. Our experience in creatives and ...
PDF
Growth markets in mobile gaming
PDF
Not so trivial lessons learned from launching mid-core games.
PDF
Ad LTV in mobile gaming: deep dive into industry
PDF
Monetisation trends based on the data
PDF
Transit King case study - data driven design with its benefits and challenges.
PDF
User path analysis and user profiling
PDF
Innovating classic genre as the way to create new value for gaming users. Cas...
PDF
Personalisation as the key to optimising your game's revenue & LTV.
Practical approach to creative testing and creative optimisation at Google UA...
Creativity and science behind creative testing. creative testing framework an...
8 Types of mobile game and app creatives you should try
Developing an effective LTV model at the soft launch and keeping it valid fur...
Driving profitability of Google App Campaigns in scale. What is easy, what is...
Scaling UA activity - the challenges of growth
Growth trends in mobile gaming based on the data
Facebook's and Social Creative Best Practice that worked for Huuuge
Using Data Science for Behavioural Game Design
Learnings and insights from Benchmarks+. Performance Insights for 1.2bn Month...
In-app offers monetization from basics to advanced technics based on Crazy Pa...
How ASO Has Changed in 2019 and What’s Next. Our experience in creatives and ...
Growth markets in mobile gaming
Not so trivial lessons learned from launching mid-core games.
Ad LTV in mobile gaming: deep dive into industry
Monetisation trends based on the data
Transit King case study - data driven design with its benefits and challenges.
User path analysis and user profiling
Innovating classic genre as the way to create new value for gaming users. Cas...
Personalisation as the key to optimising your game's revenue & LTV.

Recently uploaded (6)

DOC
Camb毕业证学历认证,格罗斯泰斯特主教大学毕业证仿冒文凭毕业证
PDF
Lesson 13- HEREDITY _ pedSAWEREGFVCXZDSASEWFigree.pdf
PPTX
ASMS Telecommunication company Profile
DOC
证书学历UoA毕业证,澳大利亚中汇学院毕业证国外大学毕业证
PDF
6-UseCfgfhgfhgfhgfhgfhfhhaseActivity.pdf
PDF
heheheueueyeyeyegehehehhehshMedia-Literacy.pdf
Camb毕业证学历认证,格罗斯泰斯特主教大学毕业证仿冒文凭毕业证
Lesson 13- HEREDITY _ pedSAWEREGFVCXZDSASEWFigree.pdf
ASMS Telecommunication company Profile
证书学历UoA毕业证,澳大利亚中汇学院毕业证国外大学毕业证
6-UseCfgfhgfhgfhgfhgfhfhhaseActivity.pdf
heheheueueyeyeyegehehehhehshMedia-Literacy.pdf

Building the BI system and analytics capabilities at the company based on Reality Games example

  • 1. Adam Longhorn Head of Analytics Reality Games adam.longhorn@reality.co https://pl.linkedin.com/in/adamlonghorn Making life easier and delivering insight faster: Simplifying App analytics and reporting in a few easy steps with Firebase and BigQuery
  • 2. Award-winning f2p games using real-world data from across the globe Launched 2015 Launched 2016 Launched 2017 Launching 2020 Coming 2021 Coming 2021
  • 3. ⓘ Start presenting to display the poll results on this slide. How long does it take to perform a 'typical' data analysis request from your team member?
  • 4. ⓘ Start presenting to display the poll results on this slide. When would your team member 'typically' like to have their analysis request delivered?
  • 5. What would be helpful for analysts: ➢ Accessible data, at the appropriate granularity ➢ Simple data structures so analysts (and quasi-analysts) are able to use it easily ➢ Relevant business metrics and dimensions that make it truly useful instead of just ‘nice to have’ data A challenge many analysts face (including myself): ➢ Business requests for analysis come in fast and business decisions get made even faster ➢ Our businesses generate a ton of data. A lot of that data not readily available to support the pace of the business
  • 6. Solution: The ‘Daily KPI’ table ➢ An easy-to-use BigQuery table ➢ Granulated at the user/day level ➢ Covers 80% of ad-hoc analysis requests ➢ (Bonus) Connectable to Google Data Studio reporting SQL Tools:
  • 7. Agenda for today: ➢ Integrate BigQuery with Firebase (assumes we all have Firebase SDK installed) ➢ Set-up SQL data-pull in BigQuery and schedule data-extraction job (step-by-step instructions and tools are given -- making your life easier!) ➢ Review what we have done, takeaways, and final thoughts Estimated time to implement yourselves: ● 1-min to integrate BigQuery ● 1-day of rest ● 30-min to build and schedule the jobs
  • 8. ⓘ Start presenting to display the poll results on this slide. How familiar are you with Firebase and BigQuery?
  • 9. Navigate to Firebase console, open your Firebase project and navigate to the BigQuery ‘Integration’ manager Select your project1 Project settings2 BigQuery3 Next window Next window
  • 10. Toggle ‘Google Analytics’ integration Side note -- Other BigQuery integrations available: ● Crashlytics ● Predictions ● Performance Monitoring ● Cloud Messaging ...So much to analyze! Toggle this!1
  • 11. Great job! Firebase is now sending raw analytics event data to BigQuery You have just opened up a new world of possibilities w/ BigQuery! ….. …. But what now?
  • 12. Take a (1 day) break. You deserve it! AND You need to give Firebase time to export the raw data
  • 13. Navigate to GCP platform, select your project and initialize BigQuery Scroll-down for BigQuery Select your project1 2
  • 14. Navigate to your project and create dataset ‘reporting’ Highlight your project Create dataset Name: ‘reporting’ Create dataset Pop-up window 1 2 3 4
  • 15. Paste in 1st SQL query (link) into any text editor Will look similar to this Point the 1st SQL query to your project’s analytics events dataset Find this string within the query: <analytics events dataset> ...Replace with: your project’s events dataset (ex: ‘analytics_201716494’) ….For each instance of <analytics events dataset> in the query 1 2 3 4 Link to 1st SQL query: https://bit.ly/DailyKPIs1
  • 16. Paste modified 1st SQL query into editor, run and save as BQ table named ‘daily_KPIs’ Paste query here Run query Save results Clear editor Name table ‘daily_KPIs’ in the ‘reporting’ dataset Pop-up window 1 2 3 4 5 6 Save
  • 17. Paste in 2nd SQL query (link) into any text editor Point 2nd SQL query to your project’s analytics events dataset Find this string: <analytics events dataset> ...Replace with: your project’s events dataset (ex: ‘analytics_201716494’) ….For each instance of <analytics events dataset> in the query (Exactly like we did with the 1st SQL query) 1 2 3 4 Link to 2nd SQL query: https://bit.ly/DailyKPIs2
  • 18. Paste modified 2nd SQL query into editor and schedule query to run automatically every day Paste query here Create new scheduled query Clear editor Pop-up window Schedule it! 1 2 3 4 5 Fill in required data
  • 19. Nice job! You are finished!
  • 20. But wait! ….. What did I just create?
  • 21. Scheduled job in BigQuery Extracts raw analytics event data from previous day IAP First opens sessions transforms raw data into daily summary for every user that logs into your app User info Appends user data to ‘daily_KPIs’ table on BQ to keep running history reporting.daily_KPIs Your Project space on BQDaily user summary
  • 22. FIELD TYPE EXAMPLE DESCRIPTION event_date STRING 20200523 YYYYMMDD format for the day’s summary user_pseudo_id STRING 9544015614101dfce88afd6cf2ac6eb5 Unique identifier (to your project) for each of your app’s users country STRING United States Long form of user’s country platform STRING ANDROID ANDROID or iOS sessions INTEGER 3 Number of total sessions generated by user in given day seconds FLOAT 350 Total number of seconds user spent within your app on given day first_open INTEGER 1 1 = this is the device’s first time using your app. 0 = not first time payments INTEGER 2 Number of IAP user made on given day revenue FLOAT 9.98 Total amount of gross IAP revenue from user on given day (in USD) ‘daily_KPIs’ table: details
  • 23. How your life has become easier: super quick analysis What was MAU, by country, in March? What percentage of new users converted to payers on D0 in the first week of February? What is the average session length by platform? What was our ARPU in January?
  • 24. How your life has become easier: Customized/Flexible reporting with Google’s Data Studio Built-in connectors reporting.daily_KPIs Your Project space on BQ Your Logo Here!
  • 25. How your life has become easier: Framework for more building a more sophisticated ‘daily_KPIs’ table You can modify the queries provided earlier by ... ● adding more dimensions (ex: mobile device or brand, app version, etc.) to group and filter by ● metrics from customized analytics events (level-ups, tutorial completes, etc.) that you would like to report on Enhance your own ‘daily_KPI’ table to… ● best-fit your businesses needs ● make your job easier ● deliver insight faster
  • 26. Thank You for your time today and Good Luck! Adam Longhorn Head of Analytics Reality Games adam.longhorn@reality.co https://pl.linkedin.com/in/adamlonghorn
  • 27. ⓘ Start presenting to display the audience questions on this slide. Audience Q&A Session