State of Analytics

I’m guessing the changes to Analytics was pushed to the next release as I don’t see any changes in the SAB 4.3 release from last week.

@ChrisHubbard let me know if/when you need help with the documentation related to Analytics. Also, when you have more info about offline analytics to share, I’m eager to hear it. Thanks for all your efforts on this project!

Hello Luke,

Updates to analytics didn’t make it into 4.3. I have started working on it for 4.4. I hope to get it updated for that release.

Chris

Thanks Chris, does it mean that if we add the google analytics using 4.3, it will actually not work?

Cheers,

Aure

Also Chris, do you think you could add the Facebook for SDK so we can do analysis and app engagement with Facebook. This would help with marketing app using Facebook.

https://developers.facebook.com/docs/app-ads

Cheers,

Au

I believe Google Analytics still works fine. This discussion is more related to getting analytics when users use the apps while NOT connected to the internet. Google Analytics works but in my experience of using with SAB, Google Analytics doesn’t really capture any information if the user is offline while using the app.

I’m hoping there is a way with Amazon Analytics or FCBH analytics to capture some information of what/how users used the apps while offline that is reported when the user occasionally connects to the internet.

When is SAB v4.4 scheduled to be released with the analytics fixes?

Hello @nazukeoya - SAB 4.4 is released on March 15 and available for download from
https://software.sil.org/scriptureappbuilder/download/

Yes, SAB v4.4 was released. With any of the analytics packages, the network connection has to be active while the app is in the foreground for events to be transmitted. We don’t have a way to send events when the network connection becomes available and the scripture app in not foreground.

It includes the following Analytics packages:

  • Firebase Analytics (new)
    • Events older than 72 hours are ignored by the server
  • Amazon Mobile Analytics (now called Pinpoint)
  • Amplitude (new)
    • Will keep the latest 1000 events and send them when online
  • Google Analytics
  • FCBH Digest Analytics
    • Summary of events is sent once a day with small payload. FCBH hosts software that processes payloads and shows result on a dashboard.
  • S3 Digest Analytics (new)
    • Same implementation as FCBH Digest Analytics, but allows the app-builder to have data sent to their own S3 Bucket. They will need software to process the digest payloads.

See the Building Apps document for details on configuring these different analytics packages. Please provide feedback to me if these instructions are not clear.

Thanks,
Chris Hubbard

Thank you very much! I really just wanted to say “thank you” but apparently I have to write 20 characters.

Thanks for this detailed post @ChrisHubbard. I have a/some follow up questions related to offline usage.

  • Scenario: Many users of our apps have intermittent access to internet and/or limited access to internet. If, for example, many users were only to connect to the internet (and be using our SAB-built apps with analytics turned on) once every 4 days or even once per week, which analytics package that you’ve listed above is the best one to capture the most events logged via analytics for these types of users?

  • This sentence I highlighted below from your post is important for understanding how analytics works. I understand what you are saying but here is my follow-up question: is the limitation regarding sending analytics only when app is in the foreground and network connection is active the case for any app that has analytics built-in or specifically a limitation within the SAB platform? Just wondering as this seems like a huge limitation for the analytics world as a whole but maybe that’s just way it is and most people expecting to benefit from analytics also assume a network connection will always be available when their users are using their app and the app tries to send an analytics package.

“the network connection has to be active while the app is in the foreground for events to be transmitted. We don’t have a way to send events when the network connection becomes available and the scripture app in not foreground.”

@ChrisHubbard or anyone else have any thoughts/feedback about my scenario and question that I posted here?

I imagine that there are multiple user bases where because of limited internet, many users will be using the SAB app and be online at the same time less often than 1-3 days. I’d be interested in anyone’s recommendations/thoughts about which analytics platform may work best in these scenarios.

Or is analytics in general not designed with such user scenarios in mind?

[Note: I had started this message and realized I hadn’t posted it. Thankfully the website kept the draft.]

Hello @lasnider,

I would recommend trying it out for yourself. Make an app with multiple analytics in it (creating the accounts are free) and have some friends use it and see what you get.

If you want real-time analytics of individual events, I would recommend Amplitude (I prefer their dashboard).
If you want push notifications in the future, it looks like we might be working on this with Firebase so give Firebase Analytics a try.
If daily summaries are fine, then use FCBH Digest Analytics. The other advantage is that analytics will be stored until the app is running when the device is connected to the internet and the sent information is very small (less than 300 bytes per daily summary).

Also, If you are using FCBH audio (especially when not streamed from their Digital Bible Platform), then you really should really consider using FCBH Analytics so they a get report of it (and they donate to the text holders when audio associated with the text is used).

Thanks,
Chris

Thanks for the response @ChrisHubbard, trying out multiple analytics is a good idea!

Just one more follow up question. Regarding using the FCBH Digest Analytics, in your understanding are you saying

  • that multiple daily summaries would be stored until the device is connected to the internet while using the app (thus if a user used the app daily but only connected to the internet 1x/week, 7 daily summaries would be sent?)
    OR
  • that only the most recent daily summary would be sent?

All 7 daily summaries would be sent.

1 Like

That’s really helpful. Thanks for the back and forth on this Chris!

Hello,
I just run a new build for iOS with Amplitude API. (The reason I went with Amplitude was that I lacked a clear instruction on using Firebase for iOS build) What I did was I copied the long string of API numbers into the Analytics section in SAB. I installed the new build on my phone via iTunes. I am wondering if this is all I should do or anything I am missing. How about the instruction I see in Amplitude about copying the Amplitude sub-folder in Xcode project, etc.? Are they all done for us in SAB? Sorry, I am not knowledgable about all this.
Thank you very much for all your help.

Sorry, we have not implemented Analytics on iOS yet. You can see the comparison of features between Android and iOS on http://software.sil.org/scriptureappbuilder/android-and-ios-app-features/

Chris

Thanks Chris,

That’s why I am not seeing anything.

Bayar

@O_Dev

Here is the info for FCBH Analytics

FYI, we still don’t have Analytics for iOS. We have a new volunteer who is an iOS developer. Analytics is on his list of things to do. First will be proper Accessibility support (which will be a good task for him to get used to the code).