Running a Two-Person Mailing List on a Cheap VPS

TL;DR / Summary: A two-person mailing list does not need a managed email platform. A small VPS running a self-hosted list manager costs less per year, gives you the subscriber database, and fails in ways you can actually fix.

The real requirements of a tiny list

Two people sending to a few hundred subscribers need four things: reliable delivery, a working unsubscribe link, a bounce record, and a backup of the subscriber table. Everything else — segmentation, automation funnels, A/B testing — is a feature you are paying for and not using.

That short list is why a budget VPS makes sense. A managed platform charges by contact count and hides the mechanics. A one-core server with a list manager exposes the mechanics, which is exactly what you want when delivery goes wrong at 11pm.

Before choosing anything, measure the list honestly. If it is under a thousand addresses and you send twice a month, almost any 1 GB instance will handle it comfortably.

Choosing the stack

Two families of software fit: full newsletter systems with a browser admin, and lighter mail list managers that expect you to know what a bounce is. For a two-person team, the second family is usually the better trade.

Look for three properties: a plain-text-friendly editor, per-subscriber bounce tracking, and a subscriber export that is not deliberately awkward. If you cannot export the list in one command, you do not own it.

A workable baseline

  • 1 vCPU, 1 GB RAM — enough for a list under a few thousand with a small web UI
  • 20 GB SSD — logs and backups matter more than the app itself
  • Debian or Ubuntu LTS — predictable packages and long support windows
  • A second hostname — send from mail.yourdomain so reputation is isolated
  • Off-server backups — a nightly dump to object storage, not to the same disk

Do not buy a 4 GB plan “for growth”. Growing a mailing list is a good problem, and resizing later takes twenty minutes.

Deliverability before features

Self-hosted mail fails on reputation, not on CPU. Set SPF, DKIM, and DMARC before the first campaign, and send a test to a Gmail address and an Outlook address to see where you land.

Warm up slowly. If the domain is new, send to the smallest segment first, then the rest a day later. A sudden few-hundred-message burst from an unknown IP is exactly the pattern filters are built to catch.

On a small list, one spam complaint out of two hundred subscribers is a reputation event, not a rounding error.

Make unsubscribing one click and immediate. A list that traps people produces complaints, and complaints are what get a young IP blocked.

Costs and the honest comparison

A budget VPS is typically a few dollars a month, billed annually. A managed platform for the same list may be free at the smallest tier but charges once you pass a threshold, and the charge grows with contacts rather than with sending.

Add the hidden costs of self-hosting: your time for updates, monitoring, and the occasional deliverability investigation. If you send twice a year, that time is wasted. If you send twice a month and enjoy owning the data, it is a reasonable trade.

Keep a spreadsheet of the annual total for both options. The comparison is rarely dramatic at this size, and writing it down prevents the “we should migrate” conversation from recurring every quarter.

Monitoring a list you cannot see

Set up three alerts: the server is unreachable, the queue is growing, and the last campaign produced more bounces than usual. Those three cover most real failures.

Watch the queue depth after a send. A queue that drains in minutes is healthy; one that sits above a few dozen for an hour usually means a DNS or throttling problem at the receiving end.

Log the size of each send and the bounce count next to it. Two months of that table tells you more about list health than any dashboard.

Migration and exit plan

Every small list should be exportable in an afternoon. Keep a monthly CSV of subscribers with their signup dates on your own machine, encrypted, and test the restore path once.

If you ever move to a managed service, that CSV is the whole migration. If the server provider disappears, the same file rebuilds the list on a new instance in an hour.

Start with a plan sized for two people, priced like a hobby, and instrumented like something you intend to keep. For a starting point on instance sizing, see affordable VPS server options, and spend the saved budget on off-site backups instead of a bigger CPU.

When the list outgrows the server

The signal is not subscriber count but send time. If a campaign takes an hour to queue on a 1 GB instance, the bottleneck is the server, not the list.

Scale the sending tier before scaling the storage. Email is I/O-bound, and a faster disk helps more than extra memory.

Grow the part that is slow, not the part that is cheapest to upgrade.

Affordable-Vps-Server-Author
Affordable-Vps-Server-Author
Articles: 394