diff --git a/funkwhale_cli/cli/tracks.py b/funkwhale_cli/cli/tracks.py
index 743333818447d56c62fc1c6bdf9b2281768114c9..ba9e37dce97f30aaf5050f80d713afc6f3c846ff 100644
--- a/funkwhale_cli/cli/tracks.py
+++ b/funkwhale_cli/cli/tracks.py
@@ -36,10 +36,10 @@ async def get_track_download_url(id, remote, format=None):
         download_url = payload["uploads"][0]["listen_url"]
     except IndexError:
         if remote.token:
-            raise click.ClickException("This file is not available for download")
+            raise click.ClickException("This file is not available for download: " + id)
         else:
             raise click.ClickException(
-                "This file is not available for download, try to login first"
+                "This file is not available for download, try to login first: " + id
             )
 
     if download_url.startswith("/"):
@@ -73,9 +73,13 @@ async def track_download(
     async with ctx.obj["remote"]:
         progressbar = tqdm.tqdm(id, unit="Files")
         for i in progressbar:
-            download_url, format, track_data = await get_track_download_url(
-                i, ctx.obj["remote"], format=format
-            )
+            try:
+                download_url, format, track_data = await get_track_download_url(
+                    i, ctx.obj["remote"], format=format
+                )
+            except click.ClickException as e:
+                logs.logger.error(e.message)
+                continue
             logs.logger.info("Downloading from {}".format(download_url))
 
             filename_params = utils.flatten(track_data)