All resources
Email MarketingSelf-HostedDocker

BillionMail: self-hosted mail server and newsletters

An open-source mail server, newsletter and email marketing platform you run on your own server. No monthly fees and no sending limits. What it does, its stars and how to install it.

Saturday, October 31, 2026 · 3 min read · by Cyrus Bitangcol

Mailchimp-style tools charge more as your list grows. BillionMail is the self-hosted alternative: a mail server, newsletter tool and campaign platform in one install, on a server you control.

What is this repo

BillionMail is an open-source mail server plus email marketing platform from the team behind aaPanel. You install it on your own server, connect a domain, and send newsletters, promotions or transactional email from a web dashboard.

FeatureWhat you get
CampaignsWrite or paste an email, pick a list and tags, send now or schedule it
AnalyticsDelivery, open and click-through rates per campaign
TemplatesReusable marketing templates
DomainsDNS records to add, verification, and free SSL set up for you
WebMailRoundCube built in at /roundcube/
SendingNo limit on the number of emails you send

Running your own mail server means you own deliverability. Use a VPS that allows outbound port 25, and set up SPF, DKIM and DMARC before you send anything (bm show-record lists the records).

How many stars

At the time of writing (31 October 2026) BillionMail has 16,047 GitHub stars and 1,778 forks.

  • Language: Go
  • License: AGPL-3.0, so it's free to use and change, but if you offer a modified version as a service you must publish your changes
  • Latest release: v4.9 (11 December 2025)
  • Website: billionmail.com

The last commit was in June 2026, so the project has been quiet for a few months. Check the issues before you rely on it for client mail.

How to install it

1. Get a server

  • To do: A Linux VPS with root access
  • To do: A domain you can add DNS records to
  • To do: Outbound port 25 open (many cloud providers block it until you ask)

2. Run the installer

Going from install to your first sent email takes about eight minutes:

bash
cd /opt && git clone https://github.com/Billionmail/BillionMail && cd BillionMail && bash install.sh

Or use Docker

Install Docker and the compose plugin first, then edit .env after copying it:

bash
cd /opt && git clone https://github.com/Billionmail/BillionMail && cd BillionMail && cp env_init .env && docker compose up -d || docker-compose up -d

If you already use aaPanel, it's a one-click install under Docker → OneClick install.

3. Connect your domain and send

  1. Add your sending domain in the dashboard
  2. Add the DNS records it shows you and verify them
  3. Let it switch on free SSL, then build your first campaign

Manage it from the terminal

bash
bm help          # every command
bm default       # default login details
bm show-record   # DNS records for your domain
bm update        # update BillionMail

Worth a look

Try the live demo before you install anything (username and password are both billionmail). Source and issues are on GitHub.