Unlike many other torrent clients, qbittorrent comes without a scheduling tool. Ideally, one can throttle downloads over a certain time of the day, on given days.

Is there a workaround for this? Is there a separate scheduling tool I can use to stage qbittorrent? If not, what would be the best scripting solution?

  • 1
    If you know other clients that have the features you want, why not simply use those?
    – Mat
    Dec 23, 2012 at 14:09
  • 1
    I want to use this one. Dec 23, 2012 at 15:28
  • There's a related open issue on github...
    – sr_
    Dec 23, 2012 at 16:25

5 Answers 5


qBittorrent does have scheduling!

However, it may or may not be sufficiently sophisticated for your needs.

Scheduling Global Changes in Limits for Specific Days/Times

Click Tools > Options.... Click the Speed tab on the left. At the bottom of the window you'll see options to set the upload and download rate limits for Alternative Global Rate Limits.

Then click the check box labeled Schedule the use of alternative rate limits and specify the time you need in From and To boxes, and the days you need in the When drop-down menu.

This lets you schedule alternate upload and download speed limits from the global limits set at the top of the window.

qBittorrent Options window, Speed tab

The above screenshot is from qBittorrent v3.0.6 (the latest version as of the time of this writing), running on my Ubuntu 11.10 system, installed from this official PPA.

If you find you are not able to do that with your qBittorrent installation, I recommend upgrading. If that still doesn't help, I recommend editing your question to provide information about what happens when you try to access those settings, including relevant screenshots.

It might be that you're aware of this, but that you need more sophisticated scheduling that qBittorrent doesn't possess. If that's the case, please edit your question to provide more information about exactly what features you need. Then someone might know a way you can achieve your goals, or if not, might be able to recommend a similar bittorrent application that does have the necessary functionality.

The following is a list of useful features that are not currently available in qBittorrent.

Per-Torrent Limits Don't Have Scheduling

As you probably know, you can set per-torrent upload and download limits. Unfortunately, you cannot set per-torrent schedules. That feature is still missing from qBittorrent.

qBittorrent contextual menu showing options for setting speed limits for an individual torrent

You Can Only Define 2 "Profiles" at a Time

There are Global Rate Limits and Alternative Global Rate Limits. That's it.

So you can (for example) cap torrent download speed at 75 KiB/s unless it's Tuesday, when it's capped at 50 KiB/s.

But you cannot (for example) cap torrent download speed at 75 KiB/s unless it's Tuesday, when it's capped at 50 KiB/s, or weekends, when it's capped at 100 KiB/s.

One of the implications of this is that the start and end times for alternative global rate limits cannot be different from one day to the next. This, together with the requirement that rate limits be defined only for intervals contained within a single day, means you cannot use alternative rate limits (for instance) all day Sunday and on Monday until 5 am.

Constraints on Which Days Can Contain Scheduled Time Spans

The When drop-down menu only allows you to select:

  • the whole week, or
  • any particular single day of the week, or
  • weekdays only (i.e., Monday-Friday), or
  • weekends only (i.e., Saturday and Sunday)

"When" drop-down menu showing limited choices of when Alternative Global Rate Limits are apploied

You cannot make alternative rate limits apply, for example, just on Mondays and Tuesdays, nor, for example, on Monday-Friday except for Wednesday.

Every Week Is The Same (Unless You Change It Yourself)

If you use alternative global rate limits this Thursday, they will be used next Thursday as well unless you edit your configuration in the interim.

Alternative rate limits

  • cannot become active on a user-specified date,
  • cannot become inactive on a user-specified date,
  • cannot automatically vary from month to month, and
  • to state the limitation generally, cannot happen automatically at different times or limit to different rates, from one week to the next.

If you want to request a feature...

You might want to submit a feature request for whatever features you need, but, as with any feature request in any software:

  • Make sure to search first.
  • There is no guarantee your request will be implemented.
  • If it is implemented, there is no saying when it will be implemented.

More specifically to qBittorrent, please keep in mind if you're going to request this feature:

  • Issues (bugs, feature requests, and the like) for qBittorrent are currently tracked here on github (as explained in qBittorrent's FAQ).

  • This feature request (which was mentioned in comments) is not a request for any of the absent features listed above. If it were acted on, that would probably still not do what you need.

    Instead, it appears to be asking for (1) an explicit zero option, or more effective blocking of all upstream or downstream traffic, (2) the ability to deactivate distributed tracking functionality (DHT and PeX) as part of the alternative limits.


Sorry, this might be very late, but hopefully the next person looking for a solution will find it.

The command you're looking for is: /etc/init.d/qbittorrent-nox-daemon start|stop

So in /etc/crontab, i'll add the following. I don't want downloads to happen from 6am - 6pm workdays, so just to be sure, i'm giving myself 10 minutes grace, 5:50am it will close qbittorrent, and 18:10, it will start it again.

50 5 * * 1 /etc/init.d/qbittorrent-nox-daemon stop
50 5 * * 2 /etc/init.d/qbittorrent-nox-daemon stop
50 5 * * 3 /etc/init.d/qbittorrent-nox-daemon stop
50 5 * * 4 /etc/init.d/qbittorrent-nox-daemon stop
50 5 * * 5 /etc/init.d/qbittorrent-nox-daemon stop

10 18 * * 1 /etc/init.d/qbittorrent-nox-daemon start
10 18 * * 2 /etc/init.d/qbittorrent-nox-daemon start
10 18 * * 3 /etc/init.d/qbittorrent-nox-daemon start
10 18 * * 4 /etc/init.d/qbittorrent-nox-daemon start
10 18 * * 5 /etc/init.d/qbittorrent-nox-daemon start

Maybe consider using trickle and cron, however you will have to restart qtorrent when you want to change the limits.


I use only alternate downloads because I like to see my limit in the status bar. Adapt the following procedure to also use GlobalDLLimit as well is you want to.

  1. I setup my qbittorrent as I want it and completely close it
  2. I make multiple copies of /home/user/.config/qBittorrent/qBittorrent.conf and I name the copies qBittorrent(640).conf and qBittorrent(400).conf and the like. The numbers mean the download speed
  3. I edit each and every file and change the line Connection\GlobalDLLimitAlt=400 for Connection\GlobalDLLimitAlt=640 to mimic the filenames above (also edit the upload limits as desired)
  4. I create a cron at the time I want with the followinf script...

    kill -s TERM `ps -ef | grep -i qbit | grep -v grep | awk '{print $2}'`  > /dev/null 2> /dev/null || : && sleep 5 && cp /home/user/.config/qBittorrent/qBittorrent\(640\).conf /home/user/.config/qBittorrent/qBittorrent.conf && sleep 5 && (qbittorrent &> /dev/null &)

What the script does is gracefully terminate qBittorrent (errors redirected to /dev/null in case it wasn't running in the 1st place), waits for 5 seconds for it to exit and write its configuration file, then copies the desired modified configuration to its original place, waits for another 5 seconds then start qBittorrent (detached from the console).


I have written an application in Node.JS

You can find the repository at: https://github.com/GRebisz/QBittorrent-Schedular

Note this is only a basic implementation, this will stop your qbittorrent torrents when the hour in the Schedule.json file is met.


  1. NodeJS

  2. NPM

  3. QBittorrent

Usage instructions:

  1. Download the zip archive from the page above

  2. Extract into a folder

  3. Open a command prompt / terminal window

  4. Navigate to the folder

  5. Execute the following command: "npm install"

  6. Edit the index.js file and set the following

    6.1 - Change "localhost:8888" to the host where your QBittorrent is hosted

    6.2 - Change "hackme" to your username

    6.3 - Change "hackmeagain" to your password

7 - {Manual} - Run "node index.js"

You can use the manual method with windows task scheduler / forever / cron to automate the scheduling process.

For configuration: In the Schedule.json file, find the day you are looking for and add hours (0-23) for any hours you want your downloads disabled.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .