Introduction
If you're running NZBGet on your seedbox, you're already ahead of the game when it comes to Usenet downloading. But are you really squeezing every drop of performance out of it? Most users stick with default settings and miss out on speeds that could be 2-3x faster with just a few tweaks.
NZBGet is lightweight, efficient, and highly configurable—but that flexibility means there's plenty of room for optimization. Whether you're downloading the latest Linux ISOs or managing a full media automation stack with Sonarr and Radarr, these 10 essential tips will help you maximize your download speed, reduce failed downloads, and automate post-processing like a pro.
Let's dive into the settings that actually matter.
1. Optimize Your Connection Settings
Your connection settings are the foundation of fast downloads. NZBGet's default values are conservative, so you'll want to adjust them based on your seedbox's capabilities and your Usenet provider's limits.
Connection Count
Most Usenet providers allow 20-50 simultaneous connections. Check your provider's documentation and set your connection count just below their limit. For example, if your provider allows 50 connections, set it to 40-45 to leave some headroom.
bash
In Settings -> News Servers -> Edit Server
Connections: 40
Article Cache
Increase your article cache to reduce disk I/O. On a seedbox with decent RAM, you can safely set this to 500-1000 MB. This keeps frequently accessed data in memory instead of constantly reading from disk.
bash
ArticleCache: 1000
Write Buffer
Bump up your write buffer size to 1024 KB or higher. This reduces the number of write operations to disk, which is especially helpful on shared seedbox environments where disk I/O can be a bottleneck.
bash
WriteBuffer: 1024
2. Enable Multiple News Server Backups
Don't rely on a single Usenet provider. Configure a backup server to automatically kick in when your primary server has incomplete articles or connection issues.
In NZBGet, you can set priority levels for each news server. Your primary provider gets Level 0, backup providers get Level 1, and so on. NZBGet will only query higher-level servers when lower-level ones fail.
Configuration Example
bash
Server 1 (Primary): Level 0, Connections 40
Server 2 (Backup): Level 1, Connections 20
This setup ensures maximum completion rates without wasting connections on backup servers unnecessarily.
3. Fine-Tune Download Queue Management
Smart queue management prevents bottlenecks and ensures your seedbox stays busy downloading what matters most.
Enable Smart Par Download
Turn on "ParCheck -> ParScan" to scan downloaded files before fetching all par2 repair files. If your download is complete and healthy, NZBGet skips unnecessary par2 downloads, saving bandwidth and time.
bash
ParScan: auto
ParQuick: yes
Set Appropriate Disk Space Limits
Configure your DiskSpace setting to pause downloads when storage runs low. This prevents failed extractions and gives you time to clear space or upload completed downloads to cloud storage via Remote Upload.
bash
DiskSpace: 10000 # Pause when less than 10GB free
4. Master Post-Processing Scripts
Post-processing scripts are where NZBGet really shines. You can automate file verification, cleanup, and even trigger Remote Upload to sync your downloads to Google Drive or OneDrive.
Essential Scripts to Use
Installing Scripts
Download scripts to your NZBGet scripts directory and enable them in Settings -> Extension Scripts. Most scripts require Python, which is typically pre-installed on seedboxes.
bash
Example: Enable nzbToMedia
Extensions: nzbToMedia.py
5. Configure Health Check Settings
Health check settings determine how NZBGet handles damaged or incomplete downloads.
ParCheck Settings
| Setting | Recommended Value | Why |
|---|---|---|
| ParCheck | auto | Only repairs when needed |
| ParRepair | yes | Automatically fix damaged files |
| ParQuick | yes | Faster verification method |
| ParBuffer | 200 | More memory = faster processing |
Unpack Settings
Enable "Unpack" to automatically extract archives after download. Set "UnpackCleanupDisk" to "yes" so NZBGet deletes original archives after successful extraction—this saves massive amounts of disk space.
bash
Unpack: yes
UnpackCleanupDisk: yes
DirectUnpack: yes # Extract while downloading
6. Leverage Direct Unpack for Faster Completion
Direct Unpack (also called "unpack on the fly") extracts archives while they're still downloading. This can save 10-20 minutes on large downloads by eliminating the wait time between download completion and extraction start.
bash
DirectUnpack: yes
DirectUnpackInterval: 10 # Check every 10 seconds
The only downside is slightly higher CPU usage during downloads, but on modern seedboxes, this is rarely an issue.
7. Optimize Task Scheduling
Use NZBGet's task scheduler to run resource-intensive operations during off-peak hours.
Useful Scheduled Tasks
bash
Example: Run cleanup daily at 3 AM
Task1.Time: 03:00
Task1.Command: Cleanup
Task1.Param: 7 # Keep logs for 7 days
8. Use Speed Limiting Strategically
While you want maximum speed most of the time, strategic speed limiting can prevent hitting monthly bandwidth caps or allow you to use other services simultaneously.
Configure speed limits in Settings -> Connection, and consider setting up scheduled speed changes if your seedbox has traffic quotas during peak hours.
bash
DownloadRate: 0 # 0 = unlimited (default)
Or set a specific limit:
DownloadRate: 10000 # 10 MB/s
You can also enable the speed limit scheduler to automatically adjust speeds based on time of day.
9. Monitor with Categories and Priorities
Use categories to organize your downloads and assign different priorities and post-processing rules.
Category Setup Example
Categories make it easy to ensure your most important downloads complete first and route to the correct automation tools.
bash
In Settings -> Categories
Category1.Name: tv
Category1.Priority: 0 # Highest priority
Category1.PostScript: nzbToMedia.py
10. Enable Logging for Troubleshooting
When things go wrong, detailed logs are your best friend. Enable "DetailTarget" and set your log buffer size appropriately.
bash
DetailTarget: both # Log to screen and file
LogBuffer: 1000 # Keep 1000 log entries
Review your logs regularly to catch recurring issues like:
Check logs in the NZBGet web interface under Messages or directly in the log files stored on your seedbox.
Conclusion
These 10 best practices will transform your NZBGet setup from functional to optimized. Start with connection settings and article cache for immediate speed improvements, then layer in queue management, post-processing scripts, and smart scheduling for a completely automated download experience.
Remember that optimization is an ongoing process. Monitor your download performance over a few weeks, tweak settings based on your actual usage patterns, and adjust as needed. The beauty of NZBGet is that every setting is documented and reversible—so don't be afraid to experiment.
If you're running NZBGet as part of a media automation stack on SonicBit, you're already benefiting from Docker-based deployment and automatic HTTPS. Combine these NZBGet optimizations with Remote Upload to automatically sync completed downloads to Google Drive or OneDrive, and you've got a truly hands-off downloading setup.
Sign up free at SonicBit.net and get 4GB storage. Download our app on Android and iOS to access your seedbox on the go.