BitTorrent Private Tracker Announce URL Structure

An announce request sent from a BitTorrent client to a private tracker is an HTTP or HTTPS GET request that communicates the client’s current status and retrieves an updated list of peers. This article breaks down the anatomy of a private tracker announce URL, explaining how authentication tokens, transfer statistics, and identification parameters are formatted and transmitted.

The Anatomy of an Announce Request

A private tracker announce URL consists of the tracker’s base endpoint, a user-specific authentication token, and a query string containing standard BitTorrent protocol parameters.

Example URL

https://tracker.example.com:443/announce?passkey=1a2b3c4d5e6f7g8h9i0j&info_hash=%ab%cd%ef%12%34%56%78%90%ab%cd%ef%12%34%56%78%90%ab%cd%ef%12&peer_id=-qB4520-1a2b3c4d5e6f&port=6881&uploaded=104857600&downloaded=524288000&left=0&compact=1&numwant=50&event=completed

1. Tracker Endpoint and Authentication

Unlike public trackers, private trackers must authenticate the user to credit upload and download statistics to the correct user account. This is handled via a passkey.

The passkey is a unique alphanumeric string tied directly to the user’s account.


2. Core BitTorrent Query Parameters

The query string carries critical metadata regarding the specific torrent and the client’s network status:


3. The event Parameter

The event parameter indicates state changes in the client. It is only included when a specific action occurs:


4. IP Identification (Optional)