How to Diagnose and Fix (not set) Visits from Flowplayer in Google Analytics | Bedford NY Realtor

Webmasters using Flowplayer 3.2 or earlier may have woken up to a pleasant surprise in Google Analytics the day after implementation. Visits doubled overnight, but how is that possible? Don’t get too excited because half of those visits are most likely fake visits. Flowplayer 3.2 or earlier has its own built-in analytics code, which clashes and conflicts with Google Analytics. Whether or not these issues have been fixed in the newly released 5.0 is still questionable.

Here’s a few tips for understanding, diagnosing and fixing the issues between Flowplayer and Google Analytics.

not set analytics traffic spike e1352227557573 606x167 How to Diagnose and Fix (not set) Visits from Flowplayer in Google AnalyticsVisits doubled in the month of February as soon as Flowplayer was set up

Cause of the Flowplayer Analytics Issue

Flowplayer has its own custom analytics code embedded within the service. This tracking causes clashes with Google Analytics if the video is tagged as an Event in GA. The Events set up on Flowplayer videos get triggered as if they were interacted with even though the user may not actually interact with the video. The clash causes the Google Analytics tracking code to generate a second visitor ID, which doubles the number of visits. All of the fake visits show up as (not set) in Google Analytics as a result of not being an actual visit.

not set landing page 606x57 How to Diagnose and Fix (not set) Visits from Flowplayer in Google AnalyticsNot Set showed up as the top landing page during a two week span after launching Flowplayer

Diagnosing the Flowplayer Issue in Google Analytics

Diagnosing Flowplayer issues in Google Analytics is quite simple. The first step is to closely monitor Google Analytics on a daily basis after launching a Flowplayer video. The area to monitor closely is landing pages and page depth. Since this issue creates fake visits, there will be no landing page or page depth for the fake visits, and will show up as (not set) in GA. If (not set) shows up anywhere in GA, there is most likely a problem with one of the Events set up in GA. If any of the Events have been triggered much more than any realistically would be, you may have discovered the source of your issue. Flowplayer does not agree with Events tracking codes.

real visits advanced segment 606x56 How to Diagnose and Fix (not set) Visits from Flowplayer in Google AnalyticsAn advanced segment used for correcting the (not set) issue

How to Fix the Flowplayer Analytics Issue

Since the data collected in Google Analytics has already been skewed due to this issue, an advanced segment will be needed to filter out the fake visits. In most cases, excluding the dimension “page depth” of less than one will filter out the (not set) visits.
The event tracking code will also need to be customized to work with FlowPlayer. The first set of code is the stock version of the analytics tracking code provided by FlowPlayer. The second set of code is the fixed version of the code.

Stock analytics code from

<script src="flowplayer/flowplayer-3.2.11.min.js"></script> <script> (function() { $f("player", "flowplayer/flowplayer-3.2.15.swf", { plugins: { gatracker: { url: "flowplayer/", accountId: "UA-######-#", events: { all: true } } } }); })(); </script>

Fixed version:

1. Start and Finish will be treated as non-interactive events. This will make your bounce rates more accurate.
2. Event tracking Visitor ID will match with the trackPageview Visitor ID.
3. No extra bandwidth used by downloading an additional swf.

<script src="flowplayer/flowplayer-3.2.11.min.js"></script> <script> (function() { function trackEvent(options) { options = options || {}; options = { category : options.category || "Video", action : options.action || "", label : options.label || "", value : options.value || null, noninteractive : options.noninteractive || false } options.label += ""; // Coerce this into a string. _gaq.push(["_trackEvent", options.category, options.action, options.label, options.value, options.noninteractive]); } $f("player", "flowplayer/flowplayer-3.2.15.swf", { clip: { onStart: function() { trackEvent({ action: "Started", noninteractive: true }); }, onPause: function() { trackEvent({ action: "Pause", label: this.getTime() }); }, onResume: function() { trackEvent({ action: "Resume", label: this.getTime() }); }, onFinish: function() { trackEvent({ action: "Finished", noninteractive: true }); } } }); })(); </script>
Related Stories ▼

About Our Guest Expert – Harrison Jones

Harrison Jones is an SEO and Web Analyst at The MX Group – a full service b2b marketing firm near Chicago. He specializes in search engine optimization, link building, analytics, paid search, social media, and content marketing. Harrison writes frequently about SEM tactics and techniques as well as his own experiments. He has been published on several leading industry journals, and also writes for a series of food and travel blogs.

Please Note: Opinions expressed in this article are those of the guest author and not necessarily that of ReelSEO.comBecome a Guest Expert: Occasionally, we like to offer experts within the online video industry the chance to write a guest post for ReelSEO. We like it because it offers you readers great content, and it comes directly from those in the field that are working on the technologies to power this online video revolution of sorts 😉 If you are interested in becoming a guest author, please feel free to let us know. Read our post on becoming a guest author for additional information.

What do you think? ▼

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.