Vibecode beehiiv

track this build5 phases, 16 steps, beginner friendly
KINDA · weekend project
price $49/moyou'd save $588/yrbuild time multi-daycategory 📮 newslettersreplaced by 0 people

You can build a newsletter CMS and send emails, but beehiiv's moat is deliverability, growth network, recommendations, ad marketplace, automations, analytics, and migrations.

the project pack5 files · written for this build, step by step
README.md
# beehiiv · indie build

Build a small newsletter publisher with a public archive and a safe send ledger.

Estimated effort: **multi-day**. Work `BUILD_PLAN.md` top to bottom · every phase ends in a check that has to pass before the next one starts.

## Stack

| Part | Choice | Why |
| --- | --- | --- |
| Runtime | Python 3.12+ and Flask | A small local HTTP application with readable server-side handlers and no JavaScript build pipeline. |
| Storage | SQLite through Python sqlite3 | Local ownership with explicit transactions and a portable backup path. |
| Interface | Jinja HTML templates, CSS and vanilla JavaScript | Implement the specified screens directly with labelled controls and progressive enhancement. |
| Verification | Python unittest and browser acceptance fixtures | Check invariants and the actual user workflow before the next phase. |
| Focused libraries | markdown, bleach | Use these only for the specific file, parsing or provider operations named in the phases; freeze tested versions. |

## Before you start

Have every one of these ready. The plan assumes them from step one.

- [ ] **Python 3.12 or newer and a terminal** · Python is free; this local prototype requires no hosting subscription.
  - Why: The local backend, tests and storage use Python.
  - Get it: Install Python from python.org. Open a terminal in a new empty project folder. On Windows, use py -3 where this guide says python if python is not on PATH; on macOS/Linux use python3 if needed. Create .venv and activate it before installing packages.
  - Verify: python --version reports 3.12+ and python -c "import sqlite3" succeeds.
- [ ] **A current desktop browser and text editor** · No paid service required for this local step.
  - Why: You need to view the local interface and edit generated project files.
  - Get it: Use an installed Chrome, Firefox or Edge browser. Open the empty project folder in your editor; open the terminal there, not in this catalog repository.
  - Verify: You can create a text file in the project folder and open browser developer tools.
- [ ] **beehiiv acceptance sample** · No paid service required for this local step.
  - Why: This fixture makes the first end-to-end check reproducible.
  - Get it: Create synthetic sample data before implementation: One confirmed subscriber, one unconfirmed address and one suppressed address; a draft post. Save it under fixtures/ with the expected results in fixtures/README.md; use no real credentials or customer records.
  - Verify: The fixture files and expected outcomes exist and can be inspected without a vendor account.
- [ ] **Confirm the bounded replacement** · No paid service required for this local step.
  - Why: The full commercial product is larger than this guide.
  - Get it: The deliverable is a small newsletter publisher with a public archive and a safe send ledger. Read every exclusion below. Indie mode runs locally; any public or shared use requires the product access and deployment gates first.
  - Verify: You can name the primary workflow and the vendor features this version deliberately leaves out.
- [ ] **An SMTP relay and one verified test recipient** · Provider-specific relay fees and domain costs; no free tier or delivery guarantee is assumed.
  - Why: Outbound confirmations or replies need a delivery provider; a fake adapter covers automated tests.
  - Get it: Obtain SMTP host, port, username and password from your chosen relay dashboard under SMTP settings. Verify the sender/domain using that provider DNS instructions. Use only your own test recipient initially and record the actual plan and rate limit in OPERATIONS.md.
  - Verify: The supplied smtp_probe.py sends one labelled test message to your own inbox and reports the relay response without logging credentials.

## Quick start

```sh
python -m venv .venv
python -m pip install Flask Flask-WTF python-dotenv waitress tzdata markdown bleach
python -m pip freeze > requirements.txt
python -m flask --app app run --host 127.0.0.1
```

Then copy `.env.example` to `.env` and fill in the values it documents.

## Honest limits

This build deliberately does not replace:

- Referral networks, paid subscriptions and domain reputation are not reproduced by this publisher.
- This is a small newsletter publisher with a public archive and a safe send ledger; full beehiiv feature parity, vendor hosting and support are not included.
- email deliverability
- referral/recommendation network
- ad network
- automations
- analytics
- paid newsletter tooling
- migrations

If one of those is essential to you, that is the reason to keep paying for beehiiv, and the README should say so rather than pretend.

$ choose a build depth, inspect the files, then open the complete pack in your agent

why people still pay

They pay because audience growth and email reliability are harder than writing and sending HTML.

what you lose

xemail deliverability

xreferral/recommendation network

xad network

xautomations

xanalytics

xpaid newsletter tooling

xmigrations

share on X ↗"I just replaced beehiiv ($49/mo) with one prompt"
the escape hatch

Don't feel like building it? These folks already made it free.

GhostPublishing, newsletters, memberships and paid subscriptions on your server; beehiiv's ad network and growth machinery stay behind.55kaug 2026open source↗

no votes, no pay-to-list · just what's real

the numbers

beehiiv pricing

planmonthlyannual (per mo)what you get
launch$0/workspace$0/workspaceUp to 2,500 subscribers, unlimited email sends, 3 publications, 1 team member, 10 AI credits/day, 1 podcast episode/month, 1 show.
scale$49/workspace$43/workspaceUp to 100,000 subscribers, unlimited sends/posts, 3 publications, up to 3 team seats, 25 AI credits/day, 4 podcast episodes/month.
max$109/workspace$96/workspaceUp to 100,000 subscribers, 10 publications, unlimited team seats, 50 AI credits/day, unlimited podcast episodes, 3 shows, 3 Getty credits.
enterprisecustom—100,000+ subscribers, custom publications/subscriber limits, 100 AI credits/day, 10 Getty credits, dedicated IPs, SSO, account manager.

free tier$0; 2,500 subscribers, unlimited sends, 3 publications, 1 team member, 10 AI credits/day, 1 podcast episode/month, 1 show.

billingmonthly + annual; annual cards show lower per-month price billed annually

hidden costsStripe processing applies to paid subscriptions; beehiiv take rate is 0% on paid subscription revenue; Enterprise needed above 100K/custom limits.

verified 2026-08-10 · source ↗

questions
Vibecode beehiiv

Kinda. The core of beehiiv is buildable in a weekend with the prompt on this page, but there are real gaps: email deliverability, referral/recommendation network. Read the honest list above before committing.

How much does beehiiv cost?

beehiiv costs about $49/month (Scale, checked 2026-07-30), which is $588 per year.

What do I lose by replacing beehiiv?

Honestly: email deliverability; referral/recommendation network; ad network; automations; analytics; paid newsletter tooling; migrations. If any of those are load-bearing for you, keep paying.

Is there an open-source alternative to beehiiv?

Yes: Ghost (Publishing, newsletters, memberships and paid subscriptions on your server; beehiiv's ad network and growth machinery stay behind.) The prompt is for when you want it exactly your way.