question

Myname avatar image
Myname asked

How is the average screen time calculated?

Hello,

I am using the Unity SDK and I would like to know how the average screen time presented in the "Trends" page is calculated?

I have already had a look at that question but it does not answer my question.

I have read this blog post that confirms the way I thought the session time was calculated but I still have some questions.

How is the session length calculated?

For example, if a user logs in and play 10 minutes straight then closes the app I imagine the session will be 10 minutes long.

However what happens if a user logs in, plays 5 minutes, sends the app in the background and then sometime later plays another 5 minutes. Does this count as two sessions of 5 minutes each or does this count as one session of 10 minutes?

I would like to know because that will change the average session time value.

Secondly, I would like to know if the average session time is calculated per user who played the game on particular day or for the total number of users.

For example, say I have 500 players and only 10 of them play for 20 minutes on the 14th of September, will the average session time be calculated as follows:

20 minutes x 10 users / 10 (users that played on that day) = 20 minutes average session time

or

20 minutes x 10 users / 500 (total number of users) = 24 seconds average session time

The infobox in the "Trends" page says:

I am not clear on what per user means here.

Cheers,

Tristan

,

Hello,

I am using the Unity SDK and I would like to know how the average screen time presented in the "Trends" page is calculated?

I have already had a look at that question but it does not answer my question.

I have read this blog post that confirms the way I thought the session time was calculated but I still have some questions.

How is the session length calculated?

For example, if a user logs in and play 10 minutes straight then closes the app I imagine the session will be 10 minutes long.

However what happens if a user logs in, plays 5 minutes, sends the app in the background and then sometime later plays another 5 minutes. Does this count as two sessions of 5 minutes each or does this count as one session of 10 minutes?

I would like to know because that will change the average session time value.

Secondly, I would like to know if the average session time is calculated per user who played the game on particular day or for the total number of users.

For example, say I have 500 players and only 10 of them play for 20 minutes on the 14th of September, will the average session time be calculated as follows:

20 minutes x 10 users / 10 (users that played on that day) = 20 minutes average session time

or

20 minutes x 10 users / 500 (total number of users) = 24 seconds average session time

The infobox in the "Trends" page says:

I am not clear on what per user means here.

Cheers,

Tristan

zublj.png (1.8 KiB)
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

·
Seth Du avatar image
Seth Du answered

The calculation for average screen time is via PlayStream Events. If you are using the latest Unity SDK and have enabled entity API option(it is on by default) in the PlayFab Unity extension, when you observe PlayStream monitor, there will be plenty of focus changes events generating. An event will be generated when the player switch the game to the backend meanwhile it will also generate one if the game is switched back. Thus, the focus time can be calculated based the generating time of the events. The session monitoring feature is only available on Unity (at least for now I am aware of). Since the SDK is open-sourced, you may refer to the corresponding codes to implement the same feature on other platform.

2 comments
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Myname avatar image Myname commented ·

Thanks for the reply however, your answer addresses how the data is collected. I am wondering how is the data is processed to calculate the average screen time. Do you have any information on that particular topic? If my question and examples are not clear I will be happy to try to come up with better ones.

Cheers,

Tristan

0 Likes 0 ·
Seth Du avatar image Seth Du ♦ Myname commented ·

After the discussion with the team, we believe PlayFab averages over the total number of uninterrupted sessions right now. The current calculation method is that one uninterrupted session is counted immediately after the player changes focus. In addition, only those who have sent focus changing events will be counted.

Hence, this assumption should be correct:

"20 minutes x 10 users / 10 (users that played on that day) = 20 minutes average session time."

However, like the blog mentioned "In reality, players are often interrupted briefly by text messages, toast, etc. so we plan to also calculate Session Duration as the sum of all Focus Duration 10 minutes apart.", we do anticipate getting back to these metrics and adding more nuance in the future. If you have specific needs on on-screen time recording, since all the events we use are exposed via the explorer(it is located at [Data] - > [Explorer] and is a feature based on Azure), you can write custom query to calculate metrics by your own.

0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.