diff --git a/src/audio/queue.js b/src/audio/queue.js
index 975f35c1cfa72c60294ea85de892d3a546f7c4bd..ba0af486f53b30f95872fb115b303a455c8ef6cf 100644
--- a/src/audio/queue.js
+++ b/src/audio/queue.js
@@ -1,8 +1,10 @@
 import logger from '@/logging'
 import cache from '@/cache'
+import config from '@/config'
 import Audio from '@/audio'
 import backend from '@/audio/backend'
 import radios from '@/radios'
+import Vue from 'vue'
 
 class Queue {
   constructor (options = {}) {
@@ -176,6 +178,7 @@ class Queue {
   }
 
   handleAudioEnded (e) {
+    this.recordListen(this.currentTrack)
     if (this.currentIndex < this.tracks.length - 1) {
       logger.default.info('Audio track ended, playing next one')
       this.next()
@@ -185,6 +188,14 @@ class Queue {
     }
   }
 
+  recordListen (track) {
+    let url = config.API_URL + 'history/listenings/'
+    let resource = Vue.resource(url)
+    resource.save({}, {'track': track.id}).then((response) => {}, (response) => {
+      logger.default.error('Could not record track in history')
+    })
+  }
+
   previous () {
     if (this.currentIndex > 0) {
       this.play(this.currentIndex - 1)