A simple CLI tool that automates swiping on Bumble using Playwright. Console-based scripts don't work on Bumble because it rejects untrusted JavaScript events (isTrusted: false). This tool uses browser-level automation to generate real, trusted click events.
- Node.js 18+
git clone https://github.com/jericho1050/bumble-auto-swipe.git
cd bumble-auto-swipe
npm install
npx playwright install chromiumnode bumble-auto-like.mjsA Chromium window will open. Log in to your Bumble account on the first run — your session is saved in ./bumble-profile/ so you won't need to log in again.
Once the encounters page loads, the script starts swiping automatically.
| Flag | Short | Default | Description |
|---|---|---|---|
--interval <ms> |
-i |
3000 |
Delay between swipes in milliseconds |
--max <count> |
-m |
50 |
Maximum number of swipes |
--humanize |
false |
Enable human-like behavior (see below) | |
--like-ratio <pct> |
-r |
70 |
Percentage of profiles to like (requires --humanize) |
--help |
-h |
Show help message |
# Like every profile, 3 second interval, up to 50 swipes
node bumble-auto-like.mjs
# Faster, more swipes
node bumble-auto-like.mjs -i 1500 -m 200
# Human-like mode: random speed, random passes, 70% like ratio
node bumble-auto-like.mjs --humanize
# Human-like mode with 80% like ratio and slower base speed
node bumble-auto-like.mjs --humanize -r 80 -i 5000When --humanize is enabled:
- Profile scrolling — Scrolls through each profile 1-3 times before swiping, simulating actually browsing their photos and bio
- Varying speed — Each delay is randomized between 50%-150% of the base interval, so the timing never looks robotic
- Random passes — Skips a percentage of profiles based on
--like-ratioinstead of liking everyone
Without --humanize, the script likes every profile at a fixed interval.
Bumble checks event.isTrusted on all interactions. Events created from JavaScript (element.click(), dispatchEvent(), new KeyboardEvent()) are all marked isTrusted: false by the browser and get silently ignored. Playwright operates at the browser level, generating real input events that pass this check.
- Opens a persistent Chromium browser (login session is preserved between runs)
- Navigates to
bumble.com/appand waits for the encounters page - Finds the Like/Pass buttons using Bumble's
data-qa-roleattributes - Clicks them using Playwright's native click (trusted events)
- Logs each action to the console
This tool is for educational purposes. Use at your own risk. Automating interactions may violate Bumble's Terms of Service and could result in your account being restricted or banned.
MIT