diff --git a/api/funkwhale_api/music/serializers.py b/api/funkwhale_api/music/serializers.py
index cc78358cbce24ed8ca5d67b606a5cc6abf0a8096..6e2c0fe2c0d7f753dbe6ca8898bfeddd472dfa0a 100644
--- a/api/funkwhale_api/music/serializers.py
+++ b/api/funkwhale_api/music/serializers.py
@@ -201,7 +201,6 @@ class AlbumSerializer(OptionalDescriptionMixin, serializers.Serializer):
     release_date = serializers.DateField()
     creation_date = serializers.DateTimeField()
     is_local = serializers.BooleanField()
-    is_playable = serializers.SerializerMethodField()
 
     get_attributed_to = serialize_attributed_to
 
@@ -302,6 +301,7 @@ class TrackSerializer(OptionalDescriptionMixin, serializers.Serializer):
     license = serializers.SerializerMethodField()
     cover = cover_field
     get_attributed_to = serialize_attributed_to
+    is_playable = serializers.SerializerMethodField()
 
     def get_artist(self, o):
         return serialize_artist_simple(o.artist)
@@ -323,6 +323,9 @@ class TrackSerializer(OptionalDescriptionMixin, serializers.Serializer):
     def get_license(self, o):
         return o.license_id
 
+    def get_is_playable(self, obj):
+        return bool(getattr(obj, "playable_uploads", []))
+
 
 @common_serializers.track_fields_for_update("name", "description", "privacy_level")
 class LibraryForOwnerSerializer(serializers.ModelSerializer):
diff --git a/api/tests/music/test_serializers.py b/api/tests/music/test_serializers.py
index c0bb2298f71185dd2f0da849859e180a3e76b302..a0746d3b808e8b4c3ffc0f1d70610c48d4cd4fef 100644
--- a/api/tests/music/test_serializers.py
+++ b/api/tests/music/test_serializers.py
@@ -255,6 +255,7 @@ def test_track_serializer(factories, to_api_date):
         "attributed_to": federation_serializers.APIActorSerializer(actor).data,
         "cover": common_serializers.AttachmentSerializer(track.attachment_cover).data,
         "downloads_count": track.downloads_count,
+        "is_playable": bool(track.playable_uploads),
     }
     serializer = serializers.TrackSerializer(track)
     assert serializer.data == expected
diff --git a/changes/changelog.d/playable.bugfix b/changes/changelog.d/playable.bugfix
new file mode 100644
index 0000000000000000000000000000000000000000..331ab842158e2f92a51f78d48434da822fc9c41f
--- /dev/null
+++ b/changes/changelog.d/playable.bugfix
@@ -0,0 +1 @@
+Added missing is_playable serializer for the tracks endpoint.