Support & Documentation — Email Campaign Sender v1.2 | ridigital
Support Centre · v1.2

We've got you covered.

Step-by-step guides, follow-up campaigns, license help, and everything you need to run successful campaigns.

Overview What's New Follow-Up Requirements Troubleshooting Contact
Overview

Email Campaign Sender v1.2

A fully automated cold email campaign tool that sends personalised outreach from your own Gmail account — not a shared server, not a bulk-mail API. Your domain, your reputation, your data. v1.2 introduces intelligent follow-up campaigns that thread replies inside the original conversation and auto-skip contacts who already responded.

Sends from your Gmail
Every email dispatched from your own authenticated Gmail session. Your domain reputation, your delivery.
Follow-Up Campaigns
v1.2: send follow-ups as replies in the original thread. Auto-skips replied contacts.
Zero Code Needed
Auto-installs all dependencies. Full interactive menu — no terminal knowledge required.
CSV Personalisation
Use {{first_name}}, {{company}}, {{industry}} and any custom column from your CSV.
Campaign Resume
Progress saved after every send. Interrupted campaigns resume with zero duplicate sends.
Machine-Locked License
Tied to your hardware fingerprint. 48-hour offline grace. Free machine transfers.
Supported OS: Windows 10/11, macOS (Intel + Apple Silicon), Linux (Ubuntu, Debian and most major distributions). Chrome must be installed — the script manages ChromeDriver automatically.
New Release

What's New in v1.2

v1.2 — Major Release

Intelligent Follow-Up Campaigns

The most significant feature yet. After running a primary campaign, launch a follow-up that sends as a reply inside the original email thread. The script detects which contacts have already replied and skips them automatically — only unanswered emails receive the follow-up.

Reply-thread detection
Opens each original thread and checks for recipient reply before acting
Auto-skip replied contacts
No awkward double-contact — replied recipients are skipped and logged
Contextual threading
Follow-up appears as a continuation of the original conversation — not a new cold email
Free upgrade for v1.1.0 users
Existing license files work without re-activation
Follow-Up Campaign Flow
Primary Campaign Check Each Thread for Reply replied no reply Has Replied No Reply Yet Skipped — Logged Follow-Up Sent
Important: Follow-Up Campaigns require a primary campaign run with v1.2, which stores Gmail thread IDs. Campaigns run with v1.1.0 or earlier cannot use this feature — re-run the primary campaign with v1.2 to enable follow-ups.
Reference

All Features & Settings

Main Menu Options

OptionWhat it doesNotes
1 — Start New CampaignBegin a fresh campaign with a CSV contact list and email templateChoose speed profile and daily limit
2 — Follow-Up CampaignSend threaded follow-ups to non-responders from a previous campaignNew in v1.2 — requires v1.2 primary
3 — Resume CampaignContinue any interrupted campaign from the last saved pointZero duplicate sends guaranteed
4 — Compose Email TemplateBuild or edit email templates in the visual ComposerSupports {{token}} personalisation
5 — View StatisticsSession, daily, and all-time send counts plus failure logIncludes follow-up stats in v1.2
6 — SettingsChrome profile path, default speed/limits, sender addressPersists across sessions

Speed Profiles

ProfileDelayAuto-PauseBest For
Slow30–60 sEvery 20 emails (3–5 min)New accounts, cold outreach
Medium Recommended15–30 sEvery 25 emails (2–3 min)Most campaigns — balanced
Fast8–15 sEvery 30 emails (60–120 s)Warm leads, established accounts
CustomYou set min/maxConfigurableAdvanced users

Daily Limits

OptionEmails/DayAccount AgeNotes
Conservative200New <2 weeksSafest starting point
Standard Recommended5002–4 weeksGood volume-to-safety balance
Aggressive1,0001+ monthRequires good sender history
Maximum2,0003+ monthsGmail Workspace daily cap
CustomUp to 2,000Your choiceAny number you enter
Step 0 — Before You Start

System Requirements

RequirementDetailsNotes
Python 3.8+3.10 or newer recommendedMust be in system PATH
Google ChromeLatest stable versionOfficial Chrome only — not Chromium
Internet connectionRequired for first-run setup and license validation48h offline grace period after that
license.txtSame folder as the script fileEmailed within minutes of activation
OSWindows 10/11, macOS, LinuxWindows 10/11 most tested
Auto-installer: On first run the script automatically detects and installs Selenium, pyperclip, webdriver-manager, undetected-chromedriver, and requests. You don't need to pip-install anything manually.
Step 1

Installing Python

Download Python from python.org/downloads — choose the latest 3.x release for your OS.

Windows — most common mistake: On the first installer screen, tick "Add Python to PATH" before clicking Install Now. Without this, running python in the terminal won't work.
  • 1
    Download the installer
    Go to python.org/downloads and click the yellow "Download Python 3.x.x" button for your OS.
  • 2
    Tick "Add Python to PATH" (Windows only)
    Bottom of the first installer screen — check this before clicking Install Now. Most commonly missed step on Windows.
  • 3
    Click Install Now
    Wait for completion. Close the installer when done.
  • 4
    Verify in terminal
    Open Command Prompt / Terminal and run the command below. You should see "Python 3.x.x".
Windows — Command Promptpython --version # Expected: Python 3.12.x

macOS

Terminal (Homebrew)brew install python
python3 --version

Linux (Ubuntu/Debian)

sudo apt update && sudo apt install python3 python3-pip -y
python3 --version
Step 2

Google Chrome

The script uses official Google Chrome — not Chromium or any other browser. Download it at google.com/chrome. The script auto-detects your Chrome version and downloads the correct ChromeDriver automatically.

Keep Chrome updated: If you see a ChromeDriver error, update Chrome at chrome://settings/help and re-run. The script then downloads the matching driver automatically.
Step 3

First Run & License Activation

With Python and Chrome installed, run the script for the first time. It auto-installs all dependencies, then displays your Machine ID and pauses — waiting for you to activate.

How to Run the Script

MethodHow to do it
Double-clickDouble-click the .py file in File Explorer — a terminal opens automatically.
Windows 11Right-click in the folder → "Open in Terminal" → type the command below.
Windows 10Hold Shift and right-click in folder → "Open PowerShell window here" → type the command below.
macOS / LinuxOpen Terminal, cd into the script folder → type the command below.
Terminal / Command Promptpython ridigital_Email_Campaign_Sender_v_1_2_0.py
# On macOS/Linux if "python" doesn't work:
python3 ridigital_Email_Campaign_Sender_v_1_2_0.py
First run only: The script detects missing packages and auto-installs everything (takes 1–2 min). It then restarts itself — this is completely normal.

Getting Your License

  • 1
    Script displays your Machine ID
    After installing packages, the script shows a 32-character Machine ID and pauses. Copy it exactly.
  • 2
    Visit the Activation page
    Go to rirazu.agency/activate_email_campaign_sender. Enter your name, payment email, and Machine ID.
  • 3
    Receive license.txt by email
    We email license.txt within minutes. Save it in the same folder as the script — side by side, not in a subfolder.
  • 4
    Run the script again
    The script validates the license and launches fully. You're ready to send.
Step 4

Gmail Login

After activation, the script opens a dedicated Chrome window for your campaigns — completely separate from your regular Chrome. Log in once, and the session is saved for all future runs.

Dedicated browser: Session stored in ridigital_campaign_sender/chrome_profile/. Delete this folder anytime to log in with a different account.

Terminal Prompt — What You'll See

Gmail login prompt
ChromeDriver loaded successfully
══════════════════════════════════════════
OPEN GMAIL IN THE BROWSER
══════════════════════════════════════════
 1. Click the Chrome window that just opened
 2. Go to: https://mail.google.com
 3. Log in with your Gmail credentials
 4. Wait until your INBOX is fully loaded
 5. Come back here and press ENTER
══════════════════════════════════════════
Press ENTER when your Gmail inbox is open:
  • 1
    Click the Chrome window that opened
    A new dedicated Chrome window launches. Click it to bring it to the front.
  • 2
    Navigate to mail.google.com
    Type https://mail.google.com in the address bar and press Enter.
  • 3
    Log in with your credentials
    Enter your Gmail email and password. Complete 2FA if enabled. Session is saved — future runs skip this step entirely.
  • 4
    Wait for inbox to fully load
    Make sure you can see your email list — not just a loading spinner.
  • 5
    Return to terminal and press ENTER
    Switch back to the terminal and press Enter. The script continues with campaign setup.
Step 5

Setting Your Default Sending Email

If you have multiple email addresses in Gmail — a personal @gmail.com, a cPanel business email, or a Workspace account — you must set the right one as default. This is the address your campaign emails will be sent from.

Important: If your default Gmail is personal but you want to send from a business domain, skipping this step means campaigns go from the wrong address.
  • 1
    Open Gmail Settings
    In Gmail, click the gear icon top-right → "See all settings".
  • 2
    Go to "Accounts and Import" tab
    Click the "Accounts and Import" tab at the top of Settings.
  • 3
    Find "Send mail as:" section
    Scroll down to see all email addresses you've added — personal Gmail, cPanel domain emails, Workspace.
  • 4
    Click "make default" next to your campaign email
    Click "make default" next to the address you want to send campaigns from — reference the UI below.
Gmail → Settings → Accounts and Import → Send mail as
Send mail as:
Your primary Gmail account
defaultedit info
Mail sent through: your-hosting.com · SSL
make defaultedit infodelete
Mail sent through: smtp.myhost.com · SSL
make defaultedit infodelete
Click "make default" next to the email you want campaign emails sent from.
Done: Every campaign email will now go from that address — personal Gmail, cPanel email, or Workspace. No further configuration needed in the script.
Data

CSV Contact List Format

Your contact list must be a .csv file. The email column is required. All other columns are optional but strongly recommended for personalisation.

contacts.csv — Recommended Formatemail,first_name,company,industry,custom_note
[email protected],Jane,Acme Corp,SaaS,Great case study candidate
[email protected],Bob,Tech Ltd,E-commerce,Met at DevConf 2024
[email protected],Carol,Global Inc,Healthcare,Warm referral lead
Personalisation tip: Every column becomes a {{token}}. Add a custom_note or icebreaker column with a unique sentence per contact — this single change dramatically improves reply rates.

Encoding: Save as UTF-8 CSV. Excel: File → Save As → CSV UTF-8. Google Sheets: File → Download → CSV.

The script tracks sent addresses and skips them on resume — stop anytime and restart without double-sending.

Templates

Using the Email Composer

Inside your script folder is Composer.html. Double-click it — it opens as a visual email editor in your browser. No internet, no login. Templates are saved as JSON files and loaded by the script at campaign time.

Plain text only — by design: The Composer creates plain text emails, not HTML. This is intentional. Plain text looks written by a real person — which is exactly why it consistently lands in the Primary inbox.
  • 1
    Open Composer.html
    Find Composer.html in your script folder and double-click. Opens in your browser.
  • 2
    Upload your CSV
    Click "Upload CSV" — the Composer reads your column headers so you can insert tokens from them.
  • 3
    Write subject with tokens
    Example: Quick question about {{company}}, {{first_name}}
  • 4
    Write email body with tokens
    Insert {{first_name}}, {{industry}}, {{custom_note}} anywhere. Replaced with real data for each recipient.
  • 5
    Preview and save
    Preview with sample data to verify tokens. Click "Save Template" — JSON file saved in templates folder, ready to select when starting a campaign.
Example template with tokensSubject: Quick question about {{company}}, {{first_name}}

Hi {{first_name}},

I came across {{company}} and noticed you're in the {{industry}} space.
{{custom_note}}

Would love 15 minutes to explore if there's a fit.

Best,
Your Name
Best Practices

Personalisation & Inbox Delivery

Do This

  • Personalise every email with real data
    Use {{first_name}}, {{company}}, and a unique {{icebreaker}} sentence per contact. Mass-identical emails trigger spam filters.
  • Write like a human, not a marketer
    Short sentences. Plain language. Conversational tone. No exclamation marks, no ALL CAPS.
  • Keep your list clean and targeted
    Only send to people who might genuinely want your email. Remove bounces immediately.
  • Warm up new accounts gradually
    Start at 50/day week 1, 100/day week 2, increase by 100–200/week until you hit your target volume.

Avoid These Spam Triggers

Words and patterns that trigger spam/promotional routing: FREE, GUARANTEED, ACT NOW, CLICK HERE, UNSUBSCRIBE, MAKE MONEY, EARN $$$, WINNER, LIMITED TIME, 100%, SPECIAL PROMOTION — also avoid excessive links, image-heavy emails, and HTML-formatted bodies.

Subject Line Tips

Best-performing subject lines: short (3–7 words), personal, conversational. Examples: Quick question, {{first_name}} / Thoughts on {{company}}? / Re: your work at {{company}}

Configuration

Speed Profiles & Daily Limits

Choose settings that match your account's sending history. New accounts must always start conservative to protect their reputation.

ProfileDelayAuto-PauseBest For
Fast5–15 sEvery 30 emails (60–120 s)Warm leads, established accounts
Medium Recommended15–30 sEvery 25 emails (2–3 min)Most campaigns — balanced
Slow30–60 sEvery 20 emails (3–5 min)New accounts, cold outreach
Daily LimitEmails/DayAccount Age
Conservative200New <2 weeks
Standard Recommended5002–4 weeks
Aggressive1,0001+ month
Maximum2,0003+ months (Workspace)
Configuration

Keeping or Removing Gmail Signature

OptionWhat HappensBest For
Remove Signature (default)Clears everything with Ctrl+A, types email body from scratch. No signature appears.Cold outreach — clean plain-text feel
Keep SignaturePreserves your default Gmail signature. Types body above it with one blank line.Warm campaigns where branding matters
Security

Security & Gmail Account Health

  • Runs 100% on your computer
    No data leaves your machine except to Google's servers (email sending) and our license server (validation). Your contacts and email content never reach us.
  • No password storage
    The script never reads or stores your Gmail password. It uses Chrome's own session — the same as a normal browser login.
  • Chrome profile stays local
    Session saved only in ridigital_campaign_sender/chrome_profile/. Delete anytime to clear.

Account Health Metrics

MetricSafe ZoneDanger Zone
Bounce rateBelow 2%Above 5% — pause immediately
Spam complaint rateBelow 0.1%Above 0.3% — serious risk
Daily volumeStart at 200, grow weeklyJumping to 2,000 on day 1
Sending hoursBusiness hours (9am–6pm)Midnight batch sends
New in v1.2

Follow-Up Campaigns

After a primary campaign, send a follow-up that appears as a reply in the original email thread. The script checks each thread for recipient replies and skips anyone who already responded.

Setting Up a Follow-Up Campaign

  • 1
    Wait 3–5 business days after primary campaign
    Give recipients time to respond before following up.
  • 2
    Select option 2 — Follow-Up Campaign
    Choose the primary campaign to follow up on from the list shown.
  • 3
    Select or compose your follow-up template
    Keep it short — 2–3 sentences. The recipient can see the original email above it in the thread.
  • 4
    Set speed and limits, then start
    Same settings as a primary campaign. Resumable and progress-saved.
Effective follow-up templateHi {{first_name}},

Just following up on my email from last week —
did you get a chance to take a look?

Happy to answer any questions.

Best, Your Name
Multiple follow-ups: You can run a second follow-up on the same primary. The reply check re-runs each time, so anyone who responded to the first is also skipped in the second.
Timing Strategy

When to Send — Country & Time

The best-written campaign can underperform simply because it arrived at the wrong time. Sending to a business contact in Tokyo at 2am their time is very different from sending during their morning peak hours. Time zones, local working hours, and cultural habits all affect whether your email is the first thing they see in the morning or buried under a full inbox.

General Guidelines by Region

RegionBest DaysBest Time (Local)Avoid
North AmericaTue, Wed, Thu9:00–11:00am, 1:00–3:00pmMon morning, Fri afternoon
UK & EuropeTue, Wed, Thu8:00–10:00am, 2:00–4:00pmFriday, public holidays
South AsiaMon–Thu10:00am–12:00pm, 3:00–5:00pmFriday afternoons (some regions)
East AsiaTue, Wed, Thu9:00–11:00amMon morning, Fri, national holidays
Middle EastSun–Thu9:00–11:00amFri–Sat (weekend in many countries)
AustraliaTue, Wed, Thu9:00–11:00am AESTMonday morning, Friday

For precise timing recommendations that factor in the recipient's country, local time, and industry type, use the tool below. It factors in public holidays, weekday patterns, and sector-specific engagement windows.

Niam Email Campaign Timing Advisor
Check whether right now is a good time to send your campaign to a specific country. Factors in time zone, local business hours, holidays, and weekday patterns — all in one click.
Check Timing Now →
Demo

Video Walkthrough

Complete end-to-end walkthrough — installation, Gmail login, CSV, email template, and your first campaign. Includes the new v1.2 follow-up campaign mode.

Interactive

See a Full Campaign Run

Click through the tabs to see exactly what the script shows at each stage.

ridigital Email Campaign Sender v1.2
$ python ridigital_Email_Campaign_Sender_v_1_2_0.py

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

R I D I G I T A L · Email Campaign Sender · v1.2

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

First-run setup: Installing dependencies...
→ selenium ............... ✓ installed
→ undetected-chromedriver ✓ installed
→ requests .............. ✓ installed

All dependencies ready. Restarting script...
─────────────────────────────────────────────────
LICENSE ACTIVATION REQUIRED
─────────────────────────────────────────────────

Status No license.txt found in script folder

Machine ID cfaa827a71e6d5854aa01465fb0b72c2
(copy this exactly — 32 characters)

1. Visit activation page
2. Enter name, payment email + Machine ID
3. license.txt arrives by email in minutes
4. Place in same folder as this script

Press ENTER to exit and retry once licensed.
LICENSE VALID · ridigital Email Campaign Sender v1.2

═══════════════════════════════════════
MAIN MENU
═══════════════════════════════════════

1 · Start New Campaign
2 · Follow-Up Campaign ← NEW
3 · Resume Campaign
4 · Compose Email Template
5 · View Statistics
6 · Settings

Select: 1

Speed: Medium (15–30s) ← Recommended
Limit: 500/day
✓ Starting campaign...
Campaign: Q2_outreach · 247 contacts
Speed: Medium · Limit: 500

──────────────────────────────────────

[001/247] ✓ Sent → [email protected]
Subj: Quick question about Acme Corp, Jane
Delay: 22s

[002/247] ✓ Sent → [email protected]
Subj: Quick question about Tech Ltd, Bob
Delay: 18s

─── Auto-pause (25 emails) — 142s ───

[003/247] ⏳ Sending → [email protected]...
FOLLOW-UP CAMPAIGN · v1.2
Primary: Q2_outreach · 247 contacts

──────────────────────────────────────

[001] [email protected]
✓ Replied — Skipped (replied 2 days ago)

[002] [email protected]
✓ Replied — Skipped (replied yesterday)

[003] [email protected]
→ No reply detected
✓ Follow-up sent (thread reply)
Delay: 20s

Replied/skipped: 47 · Follow-ups sent: 12
═══════════════════════════════════════
SESSION COMPLETE
═══════════════════════════════════════

✓ Sent this session: 100
✗ Failed: 0
Remaining today: 400
Daily limit: 500

All-time total: 1,347 · Days active: 8

Progress saved. Run again to continue.
License

License & Activation Details

What is the Machine ID?
A unique 32-character hardware fingerprint (Windows Registry GUID, Linux machine-id, or MAC + hostname). Stable across reboots and reinstalls. Shown when you run the script without a license file.
How to get your license
Visit the Activation page. Enter your name, payment email, and Machine ID. License.txt arrives by email within minutes.
Where does license.txt go?
In the exact same folder as the script file — not a subfolder, not a parent folder. Side by side in the same directory.
48-hour offline grace
License validates online on each run. If offline, 48 hours of operation before the script pauses for a check. Travel and outages are fully covered.
Machine transfer
New computer? Email [email protected] with your purchase email and new Machine ID. Free transfer — usually done within hours.
Updates included forever
$49 once — all future version updates included. v1.2 was a free upgrade for all v1.1.0 customers. Existing license files work without reactivation in most cases.
Activate Your License →
Help

Troubleshooting

"python is not recognised as a command"

Python was installed without "Add to PATH". Uninstall Python and reinstall — tick "Add Python to PATH" on the first installer screen. On Mac/Linux, try python3 instead of python.
IssueLikely CauseFix
ChromeDriver version mismatchChrome updated since last runUpdate Chrome at chrome://settings/help and re-run. Script auto-downloads matching driver.
License not found / invalidlicense.txt in wrong folder or corruptedConfirm license.txt is side-by-side with the script — not in a subfolder. No extra spaces or line breaks in the file.
Sending from wrong accountWrong Gmail in Chrome profileDelete ridigital_campaign_sender/chrome_profile/ and re-run. Sign in with the correct account and set it as default in Gmail settings.
Emails landing in spamHigh volume on new account, or poor list qualityReduce daily limit. Use Slow speed. Improve personalisation. Check SPF/DKIM on custom domains.
Campaign stops mid-runInternet disconnection or computer sleepUse "Resume Campaign" (option 3). Check power settings to prevent sleep during campaigns.
Follow-up not detecting repliesPrimary campaign run with v1.1.0Re-run primary campaign with v1.2 to generate thread IDs. v1.1.0 primaries don't support follow-up.
CSV tokens not replacedToken name mismatch or wrong syntaxToken must exactly match CSV header — case-sensitive. Use {{column_name}} with double braces, no spaces inside.
ModuleNotFoundErrorAuto-install failed (network issue)Run: pip install selenium pyperclip webdriver-manager undetected-chromedriver requests then retry.
Offline error after 48hExceeded offline grace periodConnect to internet briefly. Script validates and resets the 48-hour timer.
Issue not listed? Email [email protected] with a screenshot of the terminal and your OS + Python version. We typically reply within a few hours.
FAQ

Frequently Asked Questions

No. Install Python from python.org (one click). The script installs everything else automatically on first run. The whole interface is a numbered menu — type a number, press Enter. No command line knowledge needed.
v1.2 adds Intelligent Follow-Up Campaigns — send follow-ups as replies inside the original email thread, with automatic detection and skipping of contacts who already replied. Also includes improved ChromeDriver management, better error recovery, and a revised statistics dashboard. Free upgrade for all v1.1.0 customers.
One license = one machine. On that machine, you switch accounts by clearing the Chrome profile folder (ridigital_campaign_sender/chrome_profile/) and logging in with a different Gmail. For simultaneous parallel campaigns across multiple accounts, each instance requires its own license.
Yes. Progress is saved after every single send. Stop anytime and use "Resume Campaign" (option 3) — it picks up exactly where it stopped with zero duplicate sends. Works for daily limits too: stop when you hit the limit, resume the next day.
The script uses undetected-chromedriver and mimics human sending behaviour with randomised delays and conservative volume limits. Follow the warmup guidelines, send to clean and relevant lists, use plain text, and stay within daily limits. Risk is minimised when used responsibly.
Yes. Any email added to Gmail as a "Send As" address works — cPanel hosting email, Google Workspace, or custom SMTP. Set it as default in Gmail Settings → Accounts and Import. The script picks it up automatically. Recipients see your professional domain.
$49 once — no monthly fees, no renewal, no per-email charges. All future updates included. License holders are notified when new versions are available. v1.2 was a free upgrade for v1.1.0 customers with no reactivation required.
Email [email protected] with your original purchase email and the Machine ID of your new computer. We re-issue your license at no charge — usually within a few hours.
Your contact data never leaves your device. CSV files, templates, campaign progress, and Gmail session are all stored locally. The only external communication is the license validation check (machine ID + license key to our server) and emails going through Gmail as normal. We never see your contacts or email content.
Spam filters identify bulk HTML email by its patterns — images, tracking pixels, marketing layouts, unsubscribe links, shared IPs. A plain text email from a real Gmail matches none of those patterns. It looks like a one-to-one personal email because the infrastructure behind it is one-to-one. Recipients read it, respond to it, and don't mark it spam — because it doesn't look like marketing.
Yes. Select the same primary campaign for a second follow-up. The reply check re-runs each time, so anyone who responded to the first follow-up is also skipped in the second. Each follow-up sends as a reply in the original thread, maintaining full conversation context.
Release History

Changelog

VersionReleaseChanges
v1.2.13Latest 2026 Intelligent Follow-Up Campaigns — threaded replies inside original conversations, auto-detects and skips replied contacts, reply detection engine, thread ID logging. Improved ChromeDriver management. Enhanced error handling. Revised statistics dashboard. Free upgrade for all v1.1.0 customers — no reactivation needed.
v1.1.0 2026 Campaign resume with zero duplicate sends. Statistics dashboard (session, daily, all-time). Custom speed profiles. Visual HTML email Composer. Multiple CSV encoding support. 48-hour offline grace period. Signature keep/remove option.
v1.0.0 2026 Initial release. Core Gmail-based campaign sending. CSV personalisation with {{token}} syntax. Machine-locked license system. Auto-dependency installer. Human-like sending delays and daily volume limits.
Get in Touch

Contact Support

Can't find what you need? Fill in the form — we reply within a few hours. For machine transfers, include your original purchase email and new Machine ID.

Message sent — we'll reply to your email address shortly.

Ready to start sending?

One payment, lifetime use. $49 via Stripe. Download immediately after purchase.

Buy Now via Stripe — $49 →