We have an external hosting company for our video files. They provide us with detailed access statistics e.g. The duration how long how many people have seen a specific video. This is quite interesting because you can see how interesting a topic was or how fast people have switched off the video.

Unfortunately they do only video hosting and not the hosting of audio files.

With the limited bandwidth need for audio we could also host it on our own servers. But there is by far not that good access statistic like we have for video.

I have googled quite a lot but did not find anything similar to what I saw about the video access statistics.

Of course when I just provide a link to the mp3 file I can see only one line in my apache log file. Are there other solutions e.g. with a dedicated player that sends back some feedback about each second/10 seconds/minute that the user was listening to?

Or any other idea?

Am I right with my question at this Site "Pro Webmasters"? Thanks for any kind of feedback to this topic. I highly appreciate it.

2 Answers 2


Have you looking into SoundCloud? I noticed that Stack Exchange uses them to host their podcast files. They have an article about how to use the statistics they collect.


A good method is what Stephen posted but in additional to that I believe Google Analytics can be setup to pretty much any 'Event' using their API. I'm sure this is something you can get a web developer to code but then you would need to host the files on your own hosting such as a CDN since on a normal server it'll drain your bandwidth with large mp3's.

It should be more affordable and provide better stats if you outsource the hosting such as soundcloud which again Steve posted.

A typical HTML5 example of this working to track start and end would be:

<audio src="your_audio.ogg">
  Your browser does not support the <code>audio</code> element.

var v = document.getElementsByTagName("audio")[0];    
v.addEventListener("loadstart", function() {    
var _gaq = _gaq || [];    
_gaq.push(['_trackEvent', 'Audio', 'Start']);

}, true);   

v.addEventListener("ended", function() {     
var _gaq = _gaq || [];    
_gaq.push(['_trackEvent', 'Audio', 'End']);

}, true);

You can read more about Google's Analytics API on Google's Developers Site.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.