Twitch Drops Miner
Each instance runs a separate TDM process with its own Twitch session.
Already running an instance yourself (custom port, another host/container)? Register it here â nothing is started, stopped, or reconfigured.
Reporting a bug? Download the log file and attach it â makes it far easier to pin down what happened.
Switch between saved Twitch logins within this instance.
Reload campaigns and restart the mining loop.
Stop the miner process. PM2 will restart it automatically.
Log out of the web interface.
Pair a Discord bot to control TwitchDropsMiner via chat commands.
Select which types of drops you want to mine.
Comma-separated keywords. Drops whose name contains any keyword are ignored. Useful for regional/exclusive drops (e.g. JP, Korea, (KR)).
Specific drops excluded by exact ID â added via the đĢ button next to an active drop, or manually below. Unlike the keyword blacklist above, this matches one exact drop; other drops for the same game keep mining.
Games listed here are never auto-added to Games to Watch by "Auto-add linked games", even if Twitch links a drop campaign for them. Removing a game from Games to Watch already does this automatically â use this list to blacklist a game directly, without adding it first.
Automatically pause and resume mining based on time of day.
Mining runs only within this window. Outside it, mining is automatically paused.
Select games to watch. Order matters - drag to reorder priority (top = highest priority). Games are auto-removed once every drop is claimed or unearnable (e.g. sub-only tiers) â for games you always want tracked, use â Preferred Games below instead.
Channels to watch when no drops are available. Add in priority order.
Games that are always watched â even without active drop campaigns. Auto-connects when a campaign appears. Never auto-removed.
Automatically bet channel points on predictions.
Only bet on predictions in these channels. Leave empty to bet on all channels.
Override global prediction settings per channel. Leave a field empty to use the global value.
| Time | Channel | Prediction | Selection | Bet | Result | Won |
|---|
Twitch Drops Miner automatically earns timed Twitch drops without downloading any stream video â saving bandwidth while collecting rewards 24/7.
Click Login in the Main tab. A device code appears â open the link, enter the code on Twitch, then return here. Uses OAuth device flow; your password is never stored.
Visit twitch.tv/drops/campaigns and connect each game's account (Steam, Epic, etc.) to your Twitch profile. Drops won't be delivered without this step.
Open Settings â Priority Games and add games you want to target first. The miner works all campaigns by default if no priority list is set.
The Main tab shows the active channel, current drop progress, and live channel points balance. The Inventory tab tracks all claimed drops.
The miner discovers all active drop campaigns via the Twitch API, picks a live channel that qualifies for each drop, and sends periodic watch-time signals. No video is ever buffered or downloaded.
If the current channel goes offline, ends the drop window, or loses drop eligibility, the miner automatically switches to the next best channel â no intervention needed.
Add games to Settings â Priority Games. Games appear in order â the miner finishes the first game's drops before moving to the next. Unlisted games are queued after all priority games.
In Settings â Blacklist you can exclude specific drop names (e.g. duplicates you already own). The miner skips any drop whose name matches an entry in the list.
| Control | Where | Effect |
|---|---|---|
| Manual Mode | Main tab toggle | Pause automatic game selection; you choose which campaign to watch |
| Skip Game | Main tab button | Skip all remaining drops for the current game and move to the next in queue |
| Check for Drops | Main tab button | Manually refresh campaign list (equivalent to page reload) |
| Reload Campaigns | System tab | Force a full campaign reload and restart the mining loop |
The Inventory tab shows all campaigns as cards in a 3-column grid.
Run unlimited Twitch accounts simultaneously, each with fully isolated data, settings, and sessions.
| Instance | Port | URL |
|---|---|---|
| Account 1 | 8080 | / |
| Account 2 | 8082 | /acc2/ |
| Account N | 8080+(N-1)Ã2 | /accN/ |
The account buttons in the top header show the actual Twitch username once logged in. Each instance has its own:
While the miner watches a channel, it also earns and tracks Channel Points automatically.
When a bonus chest appears on a watched channel, the miner claims it immediately. No manual interaction required.
Your current point balance for the active channel is shown in real time at the top of the Main tab.
The Channel Points tab lists every earn/spend event across all watched channels with timestamps and amounts.
Points are also earned while Idle Watch is active (even when no drops are available), so watching keeps accumulating value.
The miner can automatically place bets on Twitch Predictions using your Channel Points, picking an outcome with one of four selectable strategies. Configure it in Settings â Predictions â Auto-Bet.
| Strategy | How it picks an outcome |
|---|---|
| SMART | Compares the vote share of the top two outcomes. Bets on whichever has more voters, but only if the gap between them is at least the configured Bet Gap % â if the vote is too close to call, the prediction is skipped entirely. |
| PERCENTAGE | Always bets, choosing the outcome that already has the most points wagered by others (the current crowd favorite by points). |
| HIGH_ODDS | Always bets on the underdog â the outcome with the fewest points wagered, which pays out at the highest odds if it wins. |
| MOST_VOTED | Always bets on whichever outcome the most individual users picked, regardless of how many points they wagered. |
| Setting | Description |
|---|---|
| Enable Auto-Bet | Global on/off switch. Predictions are ignored entirely while off. |
| Strategy | Which of the four strategies above to use. |
| Bet Gap % (SMART) | Minimum vote-share gap between the top two outcomes required for SMART to place a bet. Only applies to the SMART strategy. |
| Bet % of balance | What percentage of your current point balance on that channel to wager. |
| Max points per bet | Hard cap on any single bet, regardless of the percentage above. |
| Min balance to bet | The miner sits out predictions entirely if your balance on that channel is below this floor. |
| Delay before lock (s) | How long to wait after a prediction opens before betting, so more votes accumulate first. Automatically shortened if the prediction's own voting window would lock sooner. |
By default Auto-Bet applies to every channel you watch. Add channels to the Channel Whitelist to restrict betting to only those, or use Per-Channel Overrides to give a specific channel its own strategy, percentages, or delay â any field left empty falls back to the global setting.
Every bet is logged to the Predictions History table on the Analytics tab, showing the channel, prediction, your selection, the amount wagered, and the result once it resolves.
If a Discord webhook is configured for points, a win/loss embed with your profit or loss is posted automatically for every resolved bet.
When no active drop campaigns are running, Idle Watch keeps the miner watching channels so you continue earning Channel Points.
| Setting | Description |
|---|---|
| Manual channel list | Add specific channel names in Settings â Idle Watch. The miner rotates through these when idle. |
| Auto: use followed channels | Enable this toggle to automatically fetch your live followed channels from Twitch and watch whichever are currently streaming. |
The Quick Controls panel in the Main tab shows Start Idle and Switch Channel buttons when Idle Watch is active, letting you manage it without navigating to Settings.
Control your miner and receive live notifications directly from Discord. Supports multiple servers simultaneously.
Go to Settings â Discord Bot and click Generate code. A code like DROPS-A1B2C3D4 is shown (valid for 10 minutes).
In any Discord server or DM where the bot is present, run:
The bot replies with â Connected when the link is established.
Run /setchannel drops and/or /setchannel points in the channels where you want alerts sent.
| Command | Description |
|---|---|
/link <url> <code> | Connect this Discord server to your dashboard instance |
/unlink | Disconnect the bot from this server |
/setchannel drops | Send drop claim notifications to the current channel |
/setchannel points | Send Channel Points notifications to the current channel |
/dashboard | Post a live embed showing miner status (auto-updates every 30 s) |
A simpler alternative to the bot â paste a webhook URL and get push notifications for drops and/or channel points without any bot setup.
Server Settings â Integrations â Webhooks â New Webhook. Copy the URL.
Go to Settings â Discord Notifications. There are separate URL fields for Drop notifications and Channel Points notifications â you can use the same or different webhooks.
Click Test Webhook to send a sample message and confirm delivery.
To use the Discord Bot or access the dashboard from outside your network, your TDM instance needs a public URL. Choose the method that fits your setup.
| Instance | Port |
|---|---|
| Account 1 | 8080 |
| Account 2 | 8082 |
Works on any machine â home PC, VPS, laptop. No router config, no open ports. Cloudflare gives you a free HTTPS URL instantly.
Cloudflare prints a URL like https://random-name.trycloudflare.com â use that as your public URL.
In your Discord server, run:/link https://random-name.trycloudflare.com YOUR_CODE
â Free Cloudflare URLs change every restart. For a permanent URL, create a free Cloudflare account and set up a named tunnel.
Click Check for Drops in the Main tab to immediately re-fetch campaigns from Twitch without restarting the process.
Use System â Restart Miner. If you're using PM2, it will restart automatically and resume mining within seconds.
Drops are only delivered if your game account is linked at twitch.tv/drops/campaigns. Check this first if drops aren't appearing in-game.
Add, remove, or rename accounts in System â Accounts. Labels appear in the header buttons, Discord bot footer, and webhook notifications.
Configure notification settings in Settings â Notifications.
| Setting | Description |
|---|---|
| Notification Sound | Play a sound when a drop is claimed. |
| Campaign End Alerts | Get notified via Discord webhook when a campaign ends in less than 24 hours and you still have unclaimed drops. |
The Stats tab shows an overview of all your claimed drops across both accounts.
Total claims, number of different games, and date of your last claim.
Horizontal bar chart showing your top 10 games ranked by total claims.
Your 10 most recent drop claims with reward images where available.