diff --git a/changes/changelog.d/95.bugfix b/changes/changelog.d/95.bugfix
new file mode 100644
index 0000000000000000000000000000000000000000..fea5c947a0a2d07cdbe45080ff80f68ae698435f
--- /dev/null
+++ b/changes/changelog.d/95.bugfix
@@ -0,0 +1 @@
+Now loop properly on queue when we only have one track (#95)
diff --git a/front/src/components/audio/Track.vue b/front/src/components/audio/Track.vue
index e291dae78a71184a8b5b129389899851be9fb61b..370d8ae2d3a6c5a4076c5220f5e6d0f1f7f80e66 100644
--- a/front/src/components/audio/Track.vue
+++ b/front/src/components/audio/Track.vue
@@ -102,9 +102,10 @@ export default {
       if (this.$refs.audio) {
         this.$store.dispatch('player/updateProgress', this.$refs.audio.currentTime)
       }
-    }, 1000),
+    }, 250),
     ended: function () {
-      if (this.looping === 1) {
+      let onlyTrack = this.$store.state.queue.tracks.length === 1
+      if (this.looping === 1 || (onlyTrack && this.looping === 2)) {
         this.setCurrentTime(0)
         this.$refs.audio.play()
       } else {