I’m very perplexed because a question came to me from one of my customers:
“how many people saw my live, at which time and for how much time?”
I said: “easy, I have statistics!”
So I played around GA and I got out very useful information, I organized them into graphics, BUT the statistics are COMPLETELY different from WOWZA statistics!
For instance, my last live on october 21 was:
– FV on GA (sum of ‘Video/Seconds played’)= 114850s = 31.89h (44 visitors)
– Wowza = Total Viewing Time: 3d 11h 43m 10s (130 unique visitors)
That’s a huge difference.
I saw that a lot of visitors has only ‘Video starts’ (and heartbeat), but not ‘Video/Seconds played’ on GA. If I consider all of them, I reach about 130 visitors like Wowza.
I checked all my other live sessions and the behavior is the same.
What could be happened?
Hi, I checked again and I saw that if viewers on FV player move focus on different page, GA analytics stops get data.
I’m sure that ‘Video/Seconds played’ are missed. Others data as heartbeat or session time are still available, but are useless.
Sometimes if viewer get back focus on FV player, ‘Video/Seconds played’ value are collected, but it could happen any time after the live transmission ends. I collected a couple of ‘Video/Seconds played’ 1 and 2 hours late the live ended (!)
Finally Wowza info are good and the only solution, but not enough to show viewers number on time base graph.
Thank you for reaching out to us, and also for making the effort of looking more closely into what exactly is triggering the inequality between those two statistics.
I’ll forward this to our programmer’s team to look more closely on what specifically might be causing this issue, and we’ll get back to you soon.
the purpose of heartbeat event is to keep the Google Analytics tracking alive. I tried to start playing a video and then go to some other tab and then come back to the video later and I could see all the video quartile events were tracked.
But for a live stream these video quartiles are useless and I can see how that Video/Seconds Played could be failing if user simply closes the browser tab without coming back to it.
It’s bound to the window unload event and perhaps we need to revise that and use some more modern approach like the beacon or even track this when the video ends. But in some way that would work for a live stream which has ended as well.
are you able to test the upcoming FV Player version to see if we were able to fix this issue for you? If you please reinstall FV Player from this link: https://github.com/foliovision/fv-wordpress-flowplayer/archive/10918414-ga-load-module.zip To do that you will have to first deactivate and delete the current FV Player plugin you are using. WordPress will warn you that you might loose settings and data, but it’s not the case with our plugin, no settings now videos will be lost. Or you can just replace the plugin files via FTP.
In this new version we use a newer Google Analytics library and we also fixed the “Video / Seconds played” even to use proper video name. Until now it didn’t use a proper video name and that could be the reason why you couldn’t find proper stats for the videos too.
some bad news about new version.
I tried a 35 min live transmission and I got only a couple of heartbeats and only a Seconds played that reports 18min. No quarter as expected.
But the worst news is that Video Start is missing also, so I can’t monitor when a viewer start to watch.
Do you think is possible change the paradigma: if the player registers a Video Start event and then more closely Video heartbeat (let me say 30sec), I could trace all the heartbeats to understand if viewer is watching.
What is your tought?
I fixed the bug which prevented the Video start from being tracked for live streams which start with a non-zero time. You can reinstall from https://github.com/foliovision/fv-wordpress-flowplayer/archive/10918414-ga-load-module.zip again.
It’s strange that you only got 18 minutes tracked out of 35. I tried to watch a live stream for 21 minutes, it was playing in a background tab which I didn’t use for a while and it tracked just fine.
The “Video/Seconds played” even is tracked when unloading the player. How did you leave the page? Did you close the tab when it was still in background? Or did you go back to that tab and then close it? Or did you just leave it playing in background while using some other application on your computer? Could you hear the sound at all times?
The heartbeat only goes out once per 10 minutes, it’s there only to keep Google Analytics awake. But perhaps we will have to re-use it to send the video seconds watched more often to increase its reliability.
sorry for the delay, but I tried to find a different solution to have the best analytics report as possible.
In order to do this I added Google tag Manager to check minute by minute the viewer presence on page and I traced the player ID and the status play or not.
At the moment it works because I have a single player on page, so I easily call it by flowplayer(0), but what if I have multiple player on page as I have? I can’t use flowplayer(0) only but I have to get the player ID when a viewer click on it.
Have you a piece of code to get the player ID?
I’m sorry for the weird question, but developing is not my job.
Perhaps you will have to adjust ‘.flowplayer.is-ready’ to ‘.flowplayer.is-playing’.
finally I came out from the impasse.
Using GTAG I created a 1 minute heartbeat to check if a user is still on page even if with no focus on page, and I added some variables to count the userid on my website.
The sum of heartbeat gives me the total minutes of user on page and checking if the fv-player is playing or not, I have the total minutes of real watching time … finally.
It worked in my last live with a peak of more than 950 concurrent visitors and I’m going to move on GA4 platform on events based.
I know it could be done in a better way, but I’m not a developer as I said.
Thanks for your support.