MIT licensed - free to self-host

Stop renting your
email list.

OwnMaily is self-hosted email marketing. Your subscribers, your server, your data. No per-contact tiers, no monthly fee that grows as you do, no platform risk.

Unlimited subscribers
No recurring fees, ever
Your data, your server
MIT license
install.sh
# One command to install
$ curl https://ownmaily.com/install.sh | bash
Pulling Docker image...
Starting services...
OwnMaily running at http://localhost:4400
# Complete setup wizard, connect your SMTP, send.

Monthly email pricing is broken.

You pay more as you grow. The tool that should reward your success punishes it. Mailchimp charges $350/month at 50k subscribers. ConvertKit is $290. These are recurring fees for software that does not get 3x better each year. You are renting a list you built yourself.

01
You own the data.

Your subscriber list lives in your Postgres database, on your server. Not exported, not synced, not held hostage. If you stop using OwnMaily tomorrow, your data is already yours.

02
One less subscription.

Indie founders and bootstrappers carry a stack of monthly bills. Email marketing is usually one of the biggest. OwnMaily replaces it with a server cost you were probably already paying.

03
No platform risk.

Platforms change pricing, deprecate features, or shut down. When your list is self-hosted and MIT licensed, none of that applies to you. Fork it if you want to.

04
Bring your own SMTP.

Connect Resend, Mailgun, or Amazon SES. OwnMaily handles the queue, tracking, and bounce handling. Your SMTP provider just sends the mail. Switch providers any time, no re-imports.

Who this is for: Indie founders, bootstrappers, solo newsletter operators, and anyone running a small business who thinks paying $50/month for software that sends emails is absurd. If you are comfortable running a Docker container, OwnMaily is for you. If you are not, the one-click Railway or Render deploy takes five minutes.

Two ways to get running.

Pick the path that fits how you work. Both end in the same place: your own OwnMaily instance, ready to send.

Terminal users
CLI install
  • 01 Run curl https://ownmaily.com/install.sh | bash. Docker and Docker Compose are pulled automatically if missing.
  • 02 A .env with a random secret is created and the stack starts. OwnMaily is live on port 4400.
  • 03 Open the setup wizard in your browser. Set your SMTP credentials (Resend, Mailgun, or SES), send yourself a test email.
  • 04 Done. Import your first list or drop in the signup embed. You are sending.
No terminal
One-click deploy
  • 01 Click the Deploy on Railway or Deploy on Render button in the GitHub README.
  • 02 The platform clones the repo, provisions Postgres, and starts the app. No config required to get it running.
  • 03 Open your deployment URL. Complete the setup wizard: SMTP credentials, sender name, test email.
  • 04 Done. You have a fully managed OwnMaily instance. Railway/Render handle uptime and backups.

Everything you need. Nothing you don't.

Built for the actual job: send campaigns to your list, track opens and clicks, manage bounces, grow your subscribers.

Unlimited subscribers

No tiers. No contact limits. Grow your list as large as your server handles, which is very large.

Open and click tracking

Per-campaign open rates and per-link click counts. Tracking pixel and redirect proxy built in.

Bounce handling

Hard bounces suppress immediately. Soft bounces retry, then suppress after 3 attempts. Suppression list managed automatically.

Embeddable signup forms

Drop a single script tag anywhere. The form renders inline and submits to your instance. Double opt-in optional per list.

Full REST API

The UI is built entirely on the public API. Use it to integrate OwnMaily with anything: Zapier, your own app, AI agents.

Lists, tags, segmentation

Organize subscribers into lists and tag them however you want. Send campaigns to a list or a tag. CSV import and export.

Simple. Honest. Final.

There are no tiers, no asterisks, and no annual-plan discount that implies a monthly plan exists. OwnMaily is free software. The $49 is optional support.

Self-hosted
$0
forever, no card required
Free to self-host

Clone the repo, run Docker Compose, done. MIT licensed. Nothing is locked, nothing expires. OwnMaily is free software.

  • All features, no limits
  • MIT license
  • Community support via GitHub Issues
Get the code on GitHub