OwnMaily Docs

What is the Installation URL?

Getting Started

The Installation URL is the public address where your OwnMaily instance is reachable on the internet. You set it once during installation and it is stored in your configuration.

It sounds simple, but it is the most common source of problems after installation. This page explains exactly what it does and how to set it correctly for your situation.

What it does

OwnMaily uses the Installation URL to generate links that appear inside emails:

  • Unsubscribe links - every email includes one, legally required
  • Confirmation links - sent when double opt-in is enabled for a list
  • Open tracking pixels - tiny invisible images that record when emails are opened
  • Click tracking links - all links in your campaigns are rewritten to go through your server before redirecting to the destination
  • Signup form submissions - embeddable forms post to your server

All of these require your server to be publicly reachable at that address. If the URL is wrong, these features break silently - emails send, but clicks do not register, unsubscribes do not work, and tracking shows zero opens.

Three scenarios

Local testing

Use: http://localhost:4400

Fine for exploring the app and testing locally. Links in emails will point to localhost, which only works on the machine running OwnMaily. Real recipients will get broken links. Do not use this for sending to actual subscribers.

Server with an IP address

Use: http://your-server-ip:4400

This works - links in emails are reachable by real recipients. However, IP-based URLs look unprofessional in emails and many email clients will flag them as suspicious. You also cannot get an SSL certificate for a bare IP address, so everything runs over HTTP. This is acceptable for testing with real recipients, but not recommended for production.

Server with a domain (recommended)

Use: https://mail.yourdomain.com

This is the correct setup for production. Links in emails look legitimate, you get HTTPS (which email clients prefer), and SMTP providers require a verified domain anyway. This requires DNS setup and an SSL certificate - both covered in the Domain and DNS and SSL guides.

Changing it later

The Installation URL is stored in the .env file in your OwnMaily directory (usually ~/ownmaily/.env) as the INSTALLATION_URL variable.

If you need to change it - for example, you installed with an IP address and later added a domain - update that variable and restart the stack:

cd ~/ownmaily
# Edit .env and update INSTALLATION_URL
docker compose up -d

Existing links will break. Any emails sent before you change the URL contain links pointing to the old address. Tracking, unsubscribes, and clicks in those emails will stop working. This is unavoidable - get the URL right before you start sending to real subscribers.