First Run Configuration¶
This guide walks you through configuring qBitrr for the first time after installation.
Prerequisites¶
Before configuring qBitrr, ensure you have:
- ✅ qBitrr installed (Installation Guide)
- ✅ qBittorrent running and accessible
- ✅ At least one Arr instance configured (Radarr, Sonarr, or Lidarr)
- ✅ API keys for your Arr instances
- ✅ qBittorrent credentials (if authentication is enabled)
Initial Setup¶
1. Start qBitrr¶
Start qBitrr for the first time to generate the default configuration:
2. Stop qBitrr¶
After the configuration file is generated, stop qBitrr:
3. Find Configuration File¶
The configuration file location depends on your installation:
| Installation | Config Location |
|---|---|
| Docker | /path/to/config/config.toml (where you mounted /config) |
| pip (Linux/macOS) | ~/config/config.toml |
| pip (Windows) | %USERPROFILE%\config\config.toml |
| Systemd | Set via QBITRR_CONFIG_PATH environment variable |
| Binary | ~/.config/qbitrr/config.toml |
Minimum Required Configuration¶
At minimum, you need to configure:
- qBittorrent connection
- At least one Arr instance
- Download folder path
- Categories
1. qBittorrent Settings¶
Open config.toml and configure qBittorrent:
[Settings.Qbittorrent]
# qBittorrent URL (replace with your actual URL)
Host = "http://localhost:8080"
# qBittorrent credentials
Username = "admin"
Password = "adminpass"
Finding Your qBittorrent URL
- Local:
http://localhost:8080 - Docker:
http://qbittorrent:8080(use container name) - Remote:
http://192.168.1.100:8080(use server IP)
2. Download Folder¶
Set the path where qBittorrent saves completed downloads:
[Settings]
# This should match qBittorrent's "Default Save Path"
CompletedDownloadFolder = "/downloads"
Docker Path Mapping
All containers (qBittorrent, Arr instances, qBitrr) must see the same paths. If qBittorrent saves to /downloads, Radarr must also see /downloads.
3. Configure an Arr Instance¶
Configure at least one Arr instance. Here's an example for Radarr:
[Radarr-Movies]
# Radarr URL
URI = "http://localhost:7878"
# API Key (found in Radarr -> Settings -> General -> Security -> API Key)
APIKey = "your_radarr_api_key_here"
Finding API Keys
In Radarr/Sonarr/Lidarr:
- Go to Settings → General
- Scroll to "Security" section
- Copy the "API Key"
4. Categories¶
Configure categories that match your Arr download clients:
[Settings]
CategoryRadarr = "radarr-movies"
CategorySonarr = "sonarr-tv"
CategoryLidarr = "lidarr-music"
These must match the categories set in your Arr instances' download client configuration.
Complete Minimal Configuration¶
Here's a complete minimal configuration:
[Settings]
CompletedDownloadFolder = "/downloads"
CategoryRadarr = "radarr-movies"
CategorySonarr = "sonarr-tv"
CategoryLidarr = "lidarr-music"
[qBit]
Host = "localhost"
Port = 8080
UserName = "admin"
Password = "adminpass"
[Radarr-Movies]
URI = "http://localhost:7878"
APIKey = "your_radarr_api_key"
[Sonarr-TV]
URI = "http://localhost:8989"
APIKey = "your_sonarr_api_key"
Category & Tag Configuration¶
In qBittorrent¶
Your Arr instances' download clients should be configured to use the categories defined above.
In Radarr¶
- Go to Settings → Download Clients
- Edit your qBittorrent client
- Set Category to
radarr-movies - Add a Tag (optional, e.g.,
qbitrr) - Save
In Sonarr¶
Same as Radarr, but use category sonarr-tv.
In Lidarr¶
Same as Radarr, but use category lidarr-music.
Categories Are Required
qBitrr uses categories to identify which torrents to monitor. Without matching categories, qBitrr won't process your downloads.
Verify Configuration¶
1. Test qBittorrent Connection¶
Start qBitrr and check logs for connection messages:
2. Test Arr Connections¶
Check logs for Arr connection messages:
3. Test with WebUI¶
- Start qBitrr
- Open http://localhost:6969/ui
- Go to the Processes tab
- Verify Arr manager processes are running
Optional Configuration¶
Enable Automated Search¶
To enable automatic searching for missing media:
See Automated Search for details.
Enable Free Space Management¶
To pause torrents when disk space is low:
[Settings]
FreeSpace = "100G" # Pause when less than 100GB free
FreeSpaceFolder = "/downloads"
AutoPauseResume = true
Configure Seeding Limits¶
Set global seeding limits:
[Radarr-Movies.Torrent]
MaximumETA = 604800 # 7 days in seconds
MaximumRatio = 2.0
MaximumSeedTime = 604800 # 7 days
See Seeding Configuration for per-tracker settings.
Enable Auto-Updates¶
To enable automatic qBitrr updates:
Configure WebUI Authentication¶
To secure the WebUI:
Then access with:
Common Configuration Mistakes¶
1. Path Mismatches¶
Problem: qBittorrent saves to /downloads, but Radarr sees /data/downloads
Solution: Use consistent paths across all containers:
# docker-compose.yml
qbittorrent:
volumes:
- /mnt/storage/downloads:/downloads
radarr:
volumes:
- /mnt/storage/downloads:/downloads
qbitrr:
volumes:
- /mnt/storage/downloads:/downloads
2. Wrong Category¶
Problem: Radarr uses radarr, but config has radarr-movies
Solution: Ensure categories match exactly:
3. Missing Tags¶
Problem: Torrents have tags but qBitrr has Tagless = false
Solution: Either: - Enable tagless mode: Tagless = true - Or configure tags in Arr download clients
4. Invalid API Keys¶
Problem: Copy-paste errors in API keys
Solution: Copy the entire key from Arr settings, including any dashes or special characters.
Next Steps¶
Once configured:
-
Start qBitrr:
-
Test with a download:
- Manually grab a small torrent in Radarr/Sonarr
- Watch qBitrr logs
-
Verify it detects and processes the torrent
-
Access WebUI:
- Navigate to http://localhost:6969/ui
- Check Processes tab
-
Check Logs tab
-
Further Configuration:
- qBittorrent Settings
- Arr Configuration
- Automated Search
- Seeding Rules
Troubleshooting¶
Config File Not Generated¶
If qBitrr doesn't generate a config file:
Can't Find Config Location¶
Check the config path:
Syntax Errors in Config¶
TOML syntax is strict. Common mistakes:
# ❌ Wrong - missing quotes
Host = http://localhost:8080
# ✅ Correct
Host = "http://localhost:8080"
# ❌ Wrong - wrong quotes
APIKey = 'abc123'
# ✅ Correct
APIKey = "abc123"
Validate your TOML:
qBitrr Won't Start¶
Check logs for specific errors:
# Docker
docker logs qbitrr
# Systemd
sudo journalctl -u qbitrr -n 50
# Direct
qbitrr # Run in foreground to see errors