diff --git a/changes/changelog.d/585.enhancement b/changes/changelog.d/585.enhancement
new file mode 100644
index 0000000000000000000000000000000000000000..51c6aa8214ad787657e53d9c0c62e8f47d1d5dcc
--- /dev/null
+++ b/changes/changelog.d/585.enhancement
@@ -0,0 +1 @@
+Now start radios immediatly, skipping any existing tracks in queue (#585)
diff --git a/front/src/components/radios/Card.vue b/front/src/components/radios/Card.vue
index 20300f7ec67ed2e59489d084540cada456b30990..ba612f50e7d702019994a636a1e2519770e739a6 100644
--- a/front/src/components/radios/Card.vue
+++ b/front/src/components/radios/Card.vue
@@ -14,7 +14,7 @@
         </div>
       </div>
       <div class="extra content">
-        <user-link :user="radio.user" class="left floated" />
+        <user-link v-if="radio.user" :user="radio.user" class="left floated" />
         <radio-button class="right floated button" :type="type" :custom-radio-id="customRadioId"></radio-button>
         <router-link
           class="ui basic yellow button right floated"
diff --git a/front/src/store/queue.js b/front/src/store/queue.js
index 0435c867ee1137c308f997bd2442a330fa0ffcf8..b6edb2242a3d09092baacf3b5b3af817bc9695dd 100644
--- a/front/src/store/queue.js
+++ b/front/src/store/queue.js
@@ -135,6 +135,9 @@ export default {
         }
       }
     },
+    last ({state, dispatch}) {
+      dispatch('currentIndex', state.tracks.length - 1)
+    },
     currentIndex ({commit, state, rootState, dispatch}, index) {
       commit('ended', false)
       commit('player/currentTime', 0, {root: true})
diff --git a/front/src/store/radios.js b/front/src/store/radios.js
index 49bbd4f9410dff015721f57073c4d95c58d7146a..c27421ed06ca4fbbd6b8c0926c226e7099550165 100644
--- a/front/src/store/radios.js
+++ b/front/src/store/radios.js
@@ -48,7 +48,7 @@ export default {
         logger.default.info('Successfully started radio ', type)
         commit('current', {type, objectId, session: response.data.id, customRadioId})
         commit('running', true)
-        dispatch('populateQueue')
+        dispatch('populateQueue', true)
       }, (response) => {
         logger.default.error('Error while starting radio', type)
       })
@@ -57,7 +57,7 @@ export default {
       commit('current', null)
       commit('running', false)
     },
-    populateQueue ({rootState, state, dispatch}) {
+    populateQueue ({rootState, state, dispatch}, playNow) {
       if (!state.running) {
         return
       }
@@ -69,7 +69,12 @@ export default {
       }
       return axios.post('radios/tracks/', params).then((response) => {
         logger.default.info('Adding track to queue from radio')
-        dispatch('queue/append', {track: response.data.track}, {root: true})
+        let append = dispatch('queue/append', {track: response.data.track}, {root: true})
+        if (playNow) {
+          append.then(() => {
+            dispatch('queue/last', null, {root: true})
+          })
+        }
       }, (response) => {
         logger.default.error('Error while adding track to queue from radio')
       })