Need help? That's okay. Everyone needs help sometimes. You can get real-time help via chat on Discord.
Before posting, make sure your request is clear. Describe the problem and your setup, including your OS/distribution, .NET version, Lidarr version, and download client and its version. If you are using Docker please run through Docker Guide first as that will solve common and frequent path/permissions issues. Otherwise please have a docker compose handy. How to Generate a Docker Compose Describe what you've tried and what you've looked at. Use the Logging and Log Files section to turn your logging up to trace, recreate the issue, pastebin the relevant context and include a link to it in your post. Include screenshots if they help highlight the issue.
The more context you provide, the easier it's to help you.
Lidarr only supports builds created by the Servarr build platform.
It's likely beneficial to also review the Common Troubleshooting problems:
If you're asked for debug logs your logs will contain debug and if you're asked for trace logs your logs will contain trace. If the logs you are providing don't contain either then they aren't the logs requested.
To provide good and useful logs for sharing:
Ensure a spammy task isn't running, such as an RSS refresh
Warnings:
Important Note:
When using 0bin, be sure to disable colorization and don't burn after reading.
To search across old log files in Windows, use the Notepad++ Find in Files function.
Unix only: To search across old log files, use grep. For example, to find entries for an artist or release named "Shooter": grep -inr -C 100 -e 'Shooter' /path/to/logs/*.trace*.txt. If your Appdata Directory is in your home folder: grep -inr -C 100 -e 'Shooter' /home/$User/.config/logs/*.trace*.txt
* The flags have the following functions
* -i: ignore case
* -n: show line number
* -r: recursively check all files in the path
* -C: provide # of lines before and after the line it's found on
* -e: the pattern to search for
Lidarr stores log files in the Appdata Directory, inside the logs/ folder. You can also access the log files from the UI at System => Logs => Files.
Note: The Logs ("Events") Table in the UI isn't the same as the log files and isn't as useful. If you're asked for logs, please copy/paste from the log files and not the table.
Lidarr stores update log files in the Appdata Directory, inside the UpdateLogs/ folder.
Logs are long and hard to read in forum posts, and too verbose to paste into Discord. Use Pastebin, Hastebin, Gist, 0bin, or a similar paste site. The full file isn't needed. Share context from before and after the issue. Wait for spammy tasks like an RSS sync or library refresh to finish before capturing logs.
You can change the log level at Settings => General => Logging. Lidarr doesn't need to be restarted for the change to take effect. This change only affects the log files, not the logging database. The latest debug/trace log files are lidarr.debug.txt and lidarr.trace.txt respectively.
If you can't access the UI to set the log level, edit config.xml in the AppData directory. Set LogLevel to Debug or Trace instead of Info.
<Config>
[...]
<LogLevel>debug</LogLevel>
[...]
</Config>
You can clear log files and the logs database directly from the UI, under System => Logs => Files and System => Logs => Delete (Trash Can Icon)
Lidarr uses rolling log files limited to 1MB each. The current log file is always lidarr.txt. For the other files, .0.txt is the next newest (higher numbers are older). This log file contains fatal, error, warn, and info entries.
With Debug log level enabled, lidarr.debug.txt rolling log files appear. This log file contains fatal, error, warn, info, and debug entries. It covers a 40-hour window.
With Trace log level enabled, lidarr.trace.txt rolling log files appear. This log file contains fatal, error, warn, info, debug, and trace entries. Due to trace verbosity it only covers a couple of hours at most.
If an upgrade goes wrong, these steps will help you recover your installation.
/tmp directory and deletes critical Lidarr files during the upgrade, causing both the upgrade and rollback to fail. In this case, reinstall in-place over the existing installation.14-2-4 18:56:49.5|Info|MigrationLogger|\*\*\* 36: update\_with\_quality\_converters migrating \*\*\*
14-2-4 18:56:49.6|Error|MigrationLogger|SQL logic error or missing database duplicate column name: Items
While Processing: "ALTER TABLE "QualityProfiles" ADD COLUMN "Items" TEXT"
Permissions issues are due to the application being unable to access the relevant temporary folders and/or the app binary folder. Fix the permissions so the user/group the application runs as has the appropriate access.
Synology users may encounter this Synology bug Access to the path '/proc/{some number}/maps is denied
Synology users may also encounter being out of space in /tmp on certain NASes. You'll need to specify a different /tmp path for the app. See the SynoCommunity or other Synology support channels for help with this.
Post to r/lidarr or ask in Discord. If others have the same issue, someone has likely filed it already.
Don't use a database from
nightlyon the stable version. Branch hopping is ill-advised.
Fix the permissions to ensure the user/group the application is running as can access (read and write) to both /tmp and the installation directory of the application.
For Synology users experiencing issues with /proc/###/maps, updating Lidarr should resolve this. This is an issue with the SynoCommunity package.
Grab the latest release from the Lidarr website.
Install the update (.exe) or unpack (.zip) the contents over your existing installation and re-run Lidarr as you normally would.
Downloading and importing is where most people experience issues. From a high level perspective, Lidarr needs to be able to communicate with your download client and have access to the files it downloads. There's a large variety of supported download clients and an even bigger variety of setups. This means that while there are some common setups, there isn’t one right setup and everyone’s setup can be a little different.
The first step is to turn logging up to Trace, see Logging and Log Files for details on adjusting logging and searching logs. You’ll then reproduce the issue and use the trace level logs from that window to examine it. If someone is helping you, put context from before/after in a pastebin, Gist, or similar site to show them. It doesn’t need to be the whole file and it shouldn’t just be the error. You should also reproduce the issue while tasks that spam the log file aren’t running.
When you reach out for help, be sure to read asking for help so you can provide the details needed.
Ensure your download clients are running. Start by testing the download client, if it doesn’t work you’ll be able to see details in the trace level logs. You should find a URL you can put into your browser and see if it works. It could be a connection problem: wrong IP, hostname, or port, or a firewall blocking access. It might be obvious, like an authentication problem where you’ve gotten the username, password or apikey wrong.
Next, try a download. Pick a song and do a manual search. Pick one of those files and attempt to download it. Does it get sent to the download client? Does it end up with the correct category? Does it show up in Activity? Does it end up in the trace level logs during the Check For Finished Download tasks (Refresh Monitored Downloads and Process Monitored Downloads tasks) which runs every minute? Does it get correctly parsed during that task? Does the queued up download have a reasonable name? Since searches by are by id on some indexers/trackers, it can queue one up with a name that it can’t recognize.
Import issues should almost always manifest as an item in Activity with an orange icon you can hover to see the error. If they’re not showing up in Activity, this is the issue you need to focus on first so go back and figure that out. Most import errors are permissions issues. Lidarr needs read and write access to the download folder. Sometimes, permissions in the library folder can be at fault too, so be sure to check both.
Incorrect path issues are possible too, though less common in normal setups. The key to understanding path issues is knowing that Lidarr gets the path to the download from the download client, via its API. This becomes a problem in more unique use cases, like the download client running on a different system (maybe even OS!). It can also occur in a Docker setup when volumes aren't configured correctly. A remote path map is a good solution where you don’t have control, like a seedbox setup. On a Docker setup, fixing the paths is a better option.
Below are some common problems.
Lidarr communicates with your download client via its API through the client's web UI. Enable the client's web UI and make sure its port doesn't conflict with other active ports on your system.
Ensure SSL encryption isn't turned on if you're using both your instance and your download client on a local network. See the SSL FAQ entry for more information.
The default user for a Windows service is LocalService which typically doesn’t have access to your shares. Edit the service and set it up to run as your own user, see the FAQ entry why can’t see my files on a remote server for details.
While mapped network drives like X:\ are convenient, they aren’t as reliable as UNC paths like \\server\share and they’re also not available before login. Set up Lidarr and your download clients to use UNC paths as needed. If your library is on a share, you’d make sure your root folders are using UNC paths. If your download client sends to a share, that's where you’ll need to configure UNC paths since Lidarr gets the download path from the download client. It's fine to keep your mapped network drives to use yourself, just don’t use them for automation.
Docker adds another layer of complexity that’s easy to get wrong and still end up with a setup that appears to work but has hidden problems. Rather than covering them here, read the Docker Guide, which covers user, group, ownership, permissions, and paths in depth. It isn’t specific to any Docker system. It covers things at a high level so you can apply them in your own environment.
If Lidarr runs in Docker while your download client doesn't (or vice versa), or they run on different servers, you may need a remote path map.
Logs will look like
2022-02-03 14:03:54.3|Error|DownloadedTracksImportService|Import failed, path doesn't exist or isn't accessible by Lidarr: /volume3/data/torrents/music/Five Finger Death Punch - F8 (2020) FLAC. Ensure the path exists and the user running Lidarr has the correct permissions to access this file/folder
Thus /volume3/data doesn't exist within Lidarr's container or isn't accessible.
If both Lidarr and your download client are Docker containers, you seldom need a remote path map. Review the Docker Guide and/or follow TRaSH's Tutorial
Logs will look like
2022-02-28 18:51:01.1|Error|DownloadedTracksImportService|Import failed, path doesn't exist or isn't accessible by Lidarr: /data/media/music/Jasmine Guillory/Party of Two - Jasmine Guillory.mp3. Ensure the path exists and the user running Lidarr has the correct permissions to access this file/folder
Don’t forget to check permissions and ownership of the destination. It's easy to get fixated on the download’s ownership and permissions and that's often the cause of permissions issues, but the destination can also be at fault. Check that the destination folders exist. Check that no destination file already exists, or that you can delete or move any existing file to the recycle bin. Check that ownership and permissions allow you to copy, hard link, or move the downloaded file. The user or group that runs as needs to be able to read and write the root folder.
For Windows Users this may be due to running as a service:
For Synology Users refer to SynoCommunity's Permissions Article for their Packages
Non-Windows: If you're using an NFS mount, enable nolock.
If you're using an SMB mount, enable nobrl.
Logs will look like
2022-02-28 18:51:01.1|Error|DownloadedTracksImportService|Import failed, path doesn't exist or isn't accessible by Lidarr: /data/downloads/music/Party of Two - Jasmine Guillory.mp3. Ensure the path exists and the user running Lidarr has the correct permissions to access this file/folder
Don’t forget to check permissions and ownership of the source. It's easy to get fixated on the destination's ownership and permissions and that's a possible cause of permissions related issues, but it typically is the source. Check that the source folders exist - and if docker that the mounts are aligned and consistent. Check that ownership and permissions allow you to copy, hard-link, or move the downloaded file. The user or group that runs as needs to be able to read and write the downloads folder.
For Windows Users this may be due to running as a service:
For Synology Users refer to SynoCommunity's Permissions Article for their Packages
Non-Windows: If you're using an NFS mount, enable nolock.
If you're using an SMB mount, enable nobrl.
\data\downloads then you have a root folder set as \data\downloads.\data\media\ for your root folder/library and \data\downloads\ for your downloads.Your download folder and your root/library folder MUST be separate
Set Lidarr to use a category so it only processes its own downloads. It's rare that a torrent Lidarr submits gets added without the correct category, but it can happen. If you’re adding torrents manually and want to process them, they’ll need to have the correct category. You can set it at any time, since Lidarr processes downloads every minute.
Logs will show errors like
No files found are eligible for import
If your torrent arrives in .rar files, you’ll need to set up extraction. Unpackerr handles unpacking correctly: it prevents corrupt partial imports and cleans up unpacked files after import.
This error also appears if there's no valid media file in the folder.
Repeated downloads have a few causes. One relates to the Indexer restriction in Release Profiles. Because the indexer isn’t stored with the data, any preferred word scores are zero for media in your library, but during “RSS” and search, Lidarr applies them. This creates a loop: the item looks like an upgrade, then isn’t, then reappears and looks like an upgrade again. Don’t restrict your release profile to an indexer.
This can also happen because the download never imports and drops from the queue, so Lidarr grabs a new download that also never imports. Check the other common problems and troubleshooting steps.
Lidarr only looks at the 60 most recent downloads in SABnzbd and NZBGet. If you keep your history, large queues with import issues can cause Lidarr to miss downloads. The best way to avoid that's to keep your history clear, so that any items that still appear need investigating. You can achieve this by enabling Remove under Completed and Failed Download Handler. In NZBGet, this will move items to the hidden history which is great. SABnzbd doesn't have a similar feature. The best you can achieve there's to use the nzb backup folder.
The download client shouldn’t be responsible for removing downloads. Configure usenet clients so they don’t remove downloads from history. Set up torrent clients so they don’t remove torrents when they’re finished seeding (pause or stop instead). Lidarr communicates with the download client to know what to import. If items are removed, Lidarr has nothing to import, even if a folder full of files exists.
For SABnzbd, use the History Retention setting.
Lidarr can't parse some releases once grabbed and sent to the download client. Activity => Options => Show Unknown (this is now enabled by default in recent builds) will display all items not otherwise ignored / already imported within Lidarr's download client category. These need manual mapping and import.
This can also occur if you have a release in your download client but that media item (album/artist) doesn't exist in Lidarr. See Import Troubleshooting for match and import issues.
The indexer uses a TLS/SSL protocol that the current .NET Version doesn't support. Check Lidarr => System => Status for the installed version.
Lidarr is getting no response from the client.
System.NET.WebException: The request timed out: ’https://example.org/api?t=caps&apikey=(removed) —> System.NET.WebException: The request timed out
2022-11-01 10:16:54.3|Warn|Newznab|Unable to connect to indexer
[v4.3.0.6671] System.Threading.Tasks.TaskCanceledException: A task was canceled.
Other causes include:
You can also review some common permissions and networking troubleshooting commands in the guide. Otherwise please discuss with the support team on Discord. If this is something that may be a common problem, please suggest adding it to the wiki.
Problems that don't fall under downloads/imports or indexer searches: library and filesystem edge cases, plus browser-side UI quirks.
If the Library page doesn't render, looks stale, or a view or sort seems broken after an upgrade, test in a Chrome Incognito or Firefox Private Browsing window. If the UI works cleanly there, cached assets or cookies for your Lidarr URL in your main browser profile are the cause.
Fix by clearing browser cache, cookies, and local storage scoped to the Lidarr origin. The dev-tools Application tab in Chromium-based browsers lets you do this targeted at a single origin without signing you out of everything else. See Clear Cache, Cookies, and Local Storage for the full walkthrough.
Older cached JavaScript is the most common cause of "new UI features aren't showing up after I updated Lidarr." Hard-refresh (Ctrl+Shift+R / Cmd+Shift+R) is faster than a full cache purge.
Lidarr supports limiting the length of {Tag Length} or similar truncation-sensitive tokens in the naming format. When a truncated name ends with a space or period, Lidarr writes the folder. The Windows naming rules leave the resulting folder in a state the Windows shell refuses to traverse:
Don't end a file or directory name with a space or a period. Although the underlying file system may support such names, the Windows shell and user interface doesn't.
The folder exists on NTFS, but Explorer, dir, and most Windows applications will report it as inaccessible or not found.
Recovery (WSL):
mv <foldername...> <foldername>
(Replace <foldername...> with the actual name including its trailing dots/spaces. Tab-completion inside WSL works even when the Windows shell can't see the folder.)
Prevention: adjust the naming format to avoid truncation that could land on a trailing space or period. A common pattern is to trim whitespace from the end of the truncated segment in the naming template.
Parameters in Prowlarr History => Options. The (i) icon provides more details.Turn logging up to Trace before diagnosing search issues. See Logging and Log Files for details on adjusting the log level and sharing logs.
When you test an indexer or tracker, in debug or trace logs you can find the URL used. An example of a successful test is below, you can see it query the indexer via a specific URL with specific parameters and then the response. You test this url in your browser like replacing the apikey=(removed) with the correct apikey like apikey=123. You can experiment with the parameters if you’re getting an error from the indexer or see if you have connectivity issues if it doesn’t even work. After you’ve tested in your own browser, you should test from the system is running on if you haven’t already.
Just like the indexer/tracker test above, when you trigger a search while at Debug or Trace level logging, you can get the URL used from the log files. While testing, it's best to use as narrow a search as possible. A manual search is good because it's specific and you can see the results in the UI while examining the logs.
In this test, look for obvious errors and run some simple checks. The trace log shows the URL Lidarr used for the query. For a music search, Lidarr uses t=music with category codes in the 3000 range and artist/album parameters. Copy that URL from the trace log, replace the key placeholder with your actual API key, and paste it into a browser. If the browser returns results, connectivity is fine. Look at the categories and parameters to see whether the results match what you expect. If the browser returns an error, that's where to start.
![]()
![]()
Below are some common problems.
Most likely you're using a reverse proxy and your reverse proxy timeout is too short for Lidarr to complete the search query. Increase the timeout and try again.
The songs aren't monitored.
Kikis Delivery Service but your tracker only has results for Kiki's Delivery ServiceRawSearchIncorrect categories are probably the most common cause of results showing in manual searches of an indexer/tracker, but not in Lidarr. The indexer/tracker should show the category in the search results, which should help you figure out what's missing. If you’re using Jackett or Prowlarr, each tracker has a list of specifically supported categories. Make sure you’re using the correct ones for Categories. Many find it helpful to have the list visible in one browser window while they edit the entry in.
Sometimes an indexer returns unrelated results despite correct parameters. Or most results are correct but a few mismatches appear. The first type points to an indexer problem. The trace logs will show which one. Disable that indexer and report the problem. The second type covers miscategorized releases. Report those on the indexer/tracker.
You receive a message like Query successful, but no results were returned from your indexer. This may be an issue with the indexer or your indexer category settings.
Your indexer returned no results within the categories you configured.
If you find results on the site that aren't showing in Lidarr, the cause is likely one of the following:
q=words%20and%20things%20here. This string is HTTP-encoded. Any HTML encoding tool online can decode it.When Lidarr grabs a release it checks that the file size returned by the indexer is plausible for the album. That check requires knowing the total duration of the album. If MusicBrainz doesn't have track lengths for the release (shown as ??? on the MusicBrainz release page), Lidarr calculates a duration of 0 and rejects every candidate with:
Release Rejected
* Album duration is 0, unable to validate size until it's available
You can still add the album to Lidarr and it will appear in your library, but no automatic or manual search will succeed until the duration data exists.
Fix: Add the missing track lengths to MusicBrainz, then let the data propagate to Lidarr.
!refresh bot command in the Lidarr Discord #lidarr-music-requests channel to force an early refresh.If you can't edit MusicBrainz (for example, the release has a pending vote), the only workaround is Manual Import: download the files through other means and use Lidarr’s manual import flow to match and move them.
You’ll be connecting to most indexers/trackers via https, so your system certificates and time settings need to be correct. That means you need to set your time zone and time correctly. It also means your system certificates need to be up to date.
If you run Lidarr through a VPN or proxy, you may be competing with many others trying to use the same indexers and trackers. Rate limiting and DDoS protection are often done by IP address, and your VPN/proxy exit point is one IP address. If you aren't required to use a VPN for your region, using one for Lidarr can cause more problems than it solves.
Similarly to rate limits, certain indexers - such as Nyaa - may outright ban an IP address. This is typically semi-permanent and the solution is to get a new IP from your ISP or VPN provider.
The Jackett /all endpoint is convenient, but that's its only benefit. Everything else is potential problems, so add each tracker individually. You may also want to check out Prowlarr as an alternative to Jackett & NZBHydra2
The Jackett maintainers themselves recommend against /all.
Using the all endpoint has no advantages (besides reduced management overhead), only disadvantages:
Adding each indexer individually lets you fine-tune categories per indexer, which matters when the wrong category causes errors on some trackers. In Lidarr, each indexer caps at 1000 results with pagination or 100 without, so the more trackers you add to Jackett, the more likely you are to clip results. Finally, if one of the trackers in /all returns an error, Lidarr disables it and you get no results.
Using NZBHydra2 as a single indexer entry (one NZBHydra2 entry in Lidarr for many indexers) rather than one entry per indexer has the same problems as Jackett's /all endpoint.
You can also review some common permissions and networking troubleshooting commands in the guide. Otherwise please discuss with the support team on Discord. If this is something that may be a common problem, please suggest adding it to the wiki.
These are some common errors you may see when adding an indexer
The indexer uses a TLS/SSL protocol that the current .NET Version doesn't support. Check Lidarr => System => Status for the installed version.
Lidarr is getting no response from the indexer.
System.NET.WebException: The request timed out: ’https://example.org/api?t=caps&apikey=(removed) —> System.NET.WebException: The request timed out
2022-11-01 10:16:54.3|Warn|Newznab|Unable to connect to indexer
[v4.3.0.6671] System.Threading.Tasks.TaskCanceledException: A task was canceled.
Other causes include:
You can also review some common permissions and networking troubleshooting commands in the guide. Otherwise please discuss with the support team on Discord. If this is something that may be a common problem, please suggest adding it to the wiki.