diff --git a/netlify/edge-functions/now-playing.js b/netlify/edge-functions/now-playing.js
index f517964c..6e8f62a0 100644
--- a/netlify/edge-functions/now-playing.js
+++ b/netlify/edge-functions/now-playing.js
@@ -58,6 +58,7 @@ export default async () => {
   return Response.json({
     artist: track['artist']['#text'],
     title: track['name'],
+    url: track['url'],
     genre,
     emoji: emojiMap(genre, track['artist']['#text']),
   })
diff --git a/src/_includes/partials/now/playing.liquid b/src/_includes/partials/now/playing.liquid
index 574d13db..7b88065e 100644
--- a/src/_includes/partials/now/playing.liquid
+++ b/src/_includes/partials/now/playing.liquid
@@ -4,6 +4,6 @@
   </span>
   <span id="now-playing-display" class="flex flex-row items-center">
     <span id="now-playing-emoji" class="mr-1"></span>
-    <span id="now-playing-content"></span>
+    <a href id="now-playing-content"></a>
   </span>
 </p>
\ No newline at end of file
diff --git a/src/assets/scripts/script.js b/src/assets/scripts/script.js
index 9b647c2c..7dac00d6 100644
--- a/src/assets/scripts/script.js
+++ b/src/assets/scripts/script.js
@@ -7,6 +7,7 @@
     const populateNowPlaying = (data) => {
       loading.style.display = 'none'
       emoji.innerText = data.emoji
+      content.href = data.url
       content.innerText = `${data.title} by ${data.artist}`
       emoji.classList.remove('hidden')
       content.classList.remove('hidden')