Skip to content
A simple tool to generate fake web browsing and mitigate tracking
Branch: master
Clone or download
Latest commit 371423c Apr 23, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
LICENSE Added license Mar 25, 2019 fixed indentation Apr 23, 2019
badwords code style fix & badword update Apr 12, 2019
partyloud.conf Fixed url list & filter function Apr 11, 2019 code style fix Apr 17, 2019


Get your privacy back
Generate fake web browsing and mitigate tracking

PartyLoud is a highly configurable and straightforward free tool that help you to prevent tracking directly from linux terminal, no special skills required, once started you can forget it is running. It provides several flags, each flag let you customize you experience and change PartyLoud behaviour according to your needs.

Please submit bugs and feature requests and help me to continuously improve this project.
For questions / feedbacks please contact me Here

  • Simple. 3 files only, no installation required, just clone this repo an you're ready to go.
  • Powerful. Thread-based navigation.
  • Stealthy. Optimized to emulate user navigation.
  • Portable. You can use this script on every unix-based OS.

This project was inspired by


⚙️ How It Works

  1. URLs and keywords are loaded (either from partyloud.conf and badwords or from user-defined files)
  2. If proxy flag has been used, proxy config will be tested
  3. For each URL in ULR-list a thread is started, each thread as an user agent associated
  4. Each thread will start by sending an HTTP request to the given URL
  5. The response if filtered using the keywords in order to prevent 404s and malformed URLs
  6. A new URL is choosen from the list generated after filering
  7. Current thread sleeps for a random time
  8. Actions from 4 to 7 are repeated using the new URL until user send kill signal (CTRL-C or enter key)

🚀 Features

  • Configurable urls list and blocklist
  • Multi-threaded request engine (# of thread are equal to # of urls in partyloud.conf)
  • Error recovery mechanism to protect Engines from failures
  • Spoofed User Agent prevent from fingerprinting (each engine has a different user agent)
  • Dynamic UI

🎉 Setup

Clone the repository:

git clone

Navigate to the directory and make the script executable:

cd PartyLoud
chmod +x

Run 'partyloud':


📋 Usage

Usage: ./ [options...]

-l --url-list     read URL list from specified FILE
-b --blocklist    read blocklist from specified FILE
-p --http-proxy   set a HTTP proxy
-s --https-proxy  set a HTTPS proxy
-h --help         dispaly this help
To stop the script press either enter or CRTL-C


Isn't this literally just a cli based frontend to curl?

The core of the script is a curl request, but this tool does more than that. When you run the script, several threads are started. Each thread makes a different Http request and parse the output to choose the next url, simulating a navigation. Unless user stop the script (either pressing enter or via CTRL-C), it will stay alive

How error recovery mechanism works?

Error recovery mechanism is an elegant way to say that if the http request return a status code starting with 4 or 5 (error) the script will use a backup-url on order to continue execution normally

Can I fork your project?

Look Here 😉

How easy is this fake traffic to detect?

Unfortunatly it's preatty easy, but keep in mind that this is a beta release and in next releases I'll fix this "issue"

What badwords is doing?

badwords is just a list of keywords used to filter urls in order to prevent 404s and non-html contents (like images, css, js). You can create your own, but, unless you have special needs, I recommend you to use default one or at least to use it as a template

What partyloud.conf is doing?

partyloud.conf is just a list of root urls used to start fake navigation, you can create your own conf file, but pay attention, the more url you add, the more thread you start. This is an "open issue", next releases will come with a max thread number in order to avoid Fork Bombs

You can’t perform that action at this time.