Need help with CouchPotatoServer?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

3.8K Stars 1.3K Forks GNU General Public License v3.0 5.3K Commits 1.3K Opened issues


Automatic Movie Downloading via NZBs & Torrents

Services available


Need anything else?

Contributors list


Join the chat at Build Status Coverage Status

CouchPotato (CP) is an automatic NZB and torrent downloader. You can keep a "movies I want"-list and it will search for NZBs/torrents of these movies every X hours. Once a movie is found, it will send it to SABnzbd or download the torrent to a specified directory.

Running from Source

CouchPotatoServer can be run from source. This will use git as updater, so make sure that is installed.

Windows, see the CP forum for more details:

  • Install Python 2.7
  • Then install PyWin32 2.7 and GIT
  • If you come and ask on the forums 'why directory selection no work?', I will kill a kitten, also this is because you need PyWin32
  • Open up
    Git Bash
    (or CMD) and go to the folder you want to install CP. Something like Program Files.
  • Run
    git clone
  • You can now start CP via
    to start
  • Your browser should open up, but if it doesn't go to


  • If you're on Leopard (10.5) install Python 2.6+: Python 2.6.5
  • Install GIT
  • Install LXML for better/faster website scraping
  • Open up
  • Go to your App folder
    cd /Applications
  • Run
    git clone
  • Then do
    python CouchPotatoServer/
  • Your browser should open up, but if it doesn't go to


  • (Ubuntu / Debian) Install GIT with
    apt-get install git-core
  • (Fedora / CentOS) Install GIT with
    yum install git
  • Install LXML for better/faster website scraping
  • 'cd' to the folder of your choosing.
  • Install PyOpenSSL with
    pip install --upgrade pyopenssl
  • Run
    git clone
  • Then do
    python CouchPotatoServer/
    to start
  • (Ubuntu / Debian with upstart) To run on boot copy the init script
    sudo cp CouchPotatoServer/init/ubuntu /etc/init.d/couchpotato
  • (Ubuntu / Debian with upstart) Copy the default paths file
    sudo cp CouchPotatoServer/init/ubuntu.default /etc/default/couchpotato
  • (Ubuntu / Debian with upstart) Change the paths inside the default file
    sudo nano /etc/default/couchpotato
  • (Ubuntu / Debian with upstart) Make it executable
    sudo chmod +x /etc/init.d/couchpotato
  • (Ubuntu / Debian with upstart) Add it to defaults
    sudo update-rc.d couchpotato defaults
  • (Linux with systemd) To run on boot copy the systemd config
    sudo cp CouchPotatoServer/init/couchpotato.service /etc/systemd/system/couchpotato.service
  • (Linux with systemd) Update the systemd config file with your user and path to
  • (Linux with systemd) Enable it at boot with
    sudo systemctl enable couchpotato
  • Open your browser and go to

Docker: * You can use or razorgirl's to quickly build your own isolated app container. It's based on the Linux instructions above. For more info about Docker check out the official website.


  • Become root with
  • Update your repo catalog
    pkg update
  • Install required tools
    pkg install python py27-sqlite3 fpc-libcurl docbook-xml git-lite
  • For default install location and running as root
    cd /usr/local
  • If running as root, expects python here
    ln -s /usr/local/bin/python /usr/bin/python
  • Run
    git clone
  • Copy the startup script
    cp CouchPotatoServer/init/freebsd /usr/local/etc/rc.d/couchpotato
  • Make startup script executable
    chmod 555 /usr/local/etc/rc.d/couchpotato
  • Add startup to boot
    echo 'couchpotato_enable="YES"' >> /etc/rc.conf
  • Read the options at the top of
    more /usr/local/etc/rc.d/couchpotato
  • If not default install, specify options with startup flags in
    ee /etc/rc.conf
  • Finally,
    service couchpotato start
  • Open your browser and go to:


Be sure you're running the latest version of Python 2.7.

If you're going to add styling or doing some javascript work you'll need a few tools that build and compress scss -> css and combine the javascript files. Node/NPM, Grunt, Compass

After you've got these tools you can install the packages using

npm install
. Once this process has finished you can start CP using the command
. This will start all the needed tools and watches any files for changes. You can now change css and javascript and it wil reload the page when needed.

By default it will combine files used in the core folder. If you're adding a new .scss or .js file, you might need to add it and then restart the grunt process for it to combine it properly.

Don't forget to enable development inside the CP settings. This disables some functions and also makes sure javascript errors are pushed to console instead of the log.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.