Self-Hosted WhatsApp Setup Guide
Complete guide to set up your own WhatsApp server using whatsapp-web.js
What is Self-Hosted Mode?
Self-hosted mode allows you to run WhatsApp messaging directly from your own computer without using any third-party API services. Your messages are sent through your own WhatsApp account, and all data stays on your local machine.
Download Server Package
Get the complete self-hosted WhatsApp server package:
Download ZIP (Windows)
Download TAR.GZ (Mac/Linux)
ZIP: ~89KB • TAR.GZ: ~65KB
Package includes: WhatsApp Web.js server, one-click installers (INSTALL-AND-RUN scripts), manual installation scripts, complete documentation, and troubleshooting guides
Installation Steps
1System Requirements
Before starting, ensure you have:
- Node.js 16 or higher - Download from nodejs.org
- Operating System: Windows 10+, macOS 10.14+, or Linux (Ubuntu 18.04+)
- Active WhatsApp Account on your mobile phone
- Stable Internet Connection
- At least 500MB free disk space
2Download & Extract
Download the server package and extract it to a folder on your computer.
Example location:
Windows: C:\WhatsApp-Server\
Mac/Linux: ~/WhatsApp-Server/
Important: Do not use spaces in the folder path. Use dashes or underscores instead.
3Install & Start Server (One-Click Method)
The easiest way to get started - one script does everything:
For Windows:
- Navigate to the extracted
whatsapp-server folder
- Double-click
INSTALL-AND-RUN.bat
- The script will automatically:
- Check if Node.js is installed
- Install all dependencies
- Start the server
- Display the QR code
For Mac/Linux:
- Open Terminal
- Navigate to the folder:
cd ~/WhatsApp-Server/whatsapp-server/
- Run the one-click installer:
./INSTALL-AND-RUN.sh
- Or double-click the launcher:
./DOUBLE-CLICK-ME.sh
One-Click Magic: These scripts handle everything automatically - installation, setup, and starting the server. Just run once and you're done!
Alternative: Manual Installation
If you prefer step-by-step control:
- Run
install.bat (Windows) or ./install.sh (Mac/Linux) first
- Then run
run.bat (Windows) or ./run.sh (Mac/Linux) to start
4Server is Running!
If you used the one-click method (INSTALL-AND-RUN), the server is already running!
Server Started: The one-click script automatically starts the server after installation.
You should see output in the terminal window:
🚀 Server running: http://localhost:3000
📊 Status: http://localhost:3000/api/status
🔍 QR Page: http://localhost:3000/qr
⏳ Initializing client...
Running Server Later (After First Setup):
For subsequent runs, you can use either:
- One-click: Run
INSTALL-AND-RUN.bat/.sh again (faster as dependencies are cached)
- Quick start: Run
run.bat (Windows) or ./run.sh (Mac/Linux)
5Scan QR Code
After 10-30 seconds, a Chrome/browser window will automatically open showing the QR code at http://localhost:3000/qr
Multiple Ways to Access QR Code:
- Auto-Open: Browser window opens automatically (recommended)
- Terminal: QR code also displays in the terminal window
- Manual: Open browser and visit
http://localhost:3000/qr
QR Code appears in your browser automatically
To scan the QR code:
- Open WhatsApp on your mobile phone
- Go to Settings (or tap 3 dots in Android)
- Select Linked Devices
- Tap Link a Device
- Scan the QR code shown in your browser
Once scanned successfully, you'll see "✅ Connected!" in both the browser and terminal.
6Connect to Website
Now connect the website to your local server:
- Open your web browser
- Go to: WhatsApp Bulk Sender App
- In the "Connect to WhatsApp" section, click on "Self-Hosted" tab
- The default server URL is:
http://localhost:3000 (already filled)
- Click the "Connect" button
- You should see "Connected successfully!" message
Server Endpoints:
http://localhost:3000/health - Health check
http://localhost:3000/api/status - Connection status
http://localhost:3000/qr - View QR code
Important: Keep the terminal window open while using the website. Closing it will stop the server.
7Start Sending Messages!
You're all set! Now you can:
- Send messages to single or multiple recipients
- Upload Excel/CSV files for bulk messaging
- Send attachments (images, documents, etc.)
- Use all the features of WhatsApp Bulk Sender Pro
All messages will be sent through your own WhatsApp account!
Troubleshooting
Common Issues & Solutions
Problem: "Node.js is not installed" error
Solution: Download and install Node.js from nodejs.org. Make sure to restart your terminal/command prompt after installation.
Problem: QR code not appearing
Solution:
- Wait 20-30 seconds after starting the server
- Check if a browser window opened automatically at
http://localhost:3000/qr
- If browser didn't open, manually visit
http://localhost:3000/qr
- Check terminal window - QR also displays there
- Make sure you have internet connection
- Try restarting the server (Ctrl+C, then run again)
- Delete the
.wwebjs_auth folder and restart
Problem: "Cannot connect to server" on website
Solution:
- Verify the server is running (check terminal window - should show "Server running on: http://localhost:3000")
- Test by opening
http://localhost:3000/health in your browser (should show "ok")
- Check server status:
http://localhost:3000/api/status
- Make sure no other program is using port 3000
- Try disabling antivirus/firewall temporarily
Problem: Connection drops after some time
Solution:
- Keep the terminal window open at all times
- Don't log out from WhatsApp on your phone
- Ensure stable internet connection
- Don't let your computer go to sleep mode
Problem: Messages not sending
Solution:
- Verify WhatsApp is still connected (check terminal)
- Make sure phone numbers are in correct format (with country code)
- Check if you've been temporarily blocked by WhatsApp (too many messages)
- Increase delay between messages to avoid rate limiting
Security & Privacy
Your Data is Safe
- Server runs locally on your computer only
- No data is sent to third-party servers
- Authentication stored in local
.wwebjs_auth folder
- No message content is logged or stored
- Direct communication with WhatsApp servers
Important: Keep the .wwebjs_auth folder secure. It contains your WhatsApp session data. Don't share it with anyone!
Important Notes
- WhatsApp Policies: Follow WhatsApp's terms of service. Don't spam or send unsolicited messages.
- Rate Limiting: WhatsApp may temporarily block your account if you send too many messages too quickly. Use appropriate delays.
- Server Uptime: The server must be running continuously while sending messages. Don't close the terminal.
- One Device: Each server instance connects one WhatsApp account. Run multiple servers for multiple accounts.
- Session Persistence: Your WhatsApp session is saved. You don't need to scan QR every time (unless you log out).
Need Help?
Contact us for support:
Contact Support
Back to App