Should you build your own Mara?
An AI lifecycle marketer that proposes, writes, sends, and keeps rewriting a SaaS product's welcome, activation, and churn-save emails
The first send is a weekend. An agent can absolutely wire product events to an LLM draft to an email API with an approval queue, and that covers the visible part of the product. What does not come out of one prompt is the part after the first send: your own domain's reputation, suppression and compliance, variants split across real sends with the results read back, replies classified and answered, and someone still tuning it in month four. Build the sender, then be honest about whether you will keep running it.
ENOriginal research content in English. Original prompt preserved in English.
Build me a self-hosted lifecycle email agent to replace Mara, for one SaaS product. Requirements:
- Node + Express + better-sqlite3 on my VPS, one SQLite file holding contacts,
events, sequences, drafts, sends, and suppressions. node-cron ticks once a minute,
no queue service.
- POST /events takes {type, email, properties} with a bearer token from .env. Every
event upserts a contact and appends a row I can read back later.
- Sequences are JSON files in ./sequences/: an entry event type, then steps with a
wait ("2d"), an intent in plain words ("nudge them to connect their first
integration"), and an optional skip-if event type. Ship two: welcome and
trial-ending.
- Each tick, find contacts due for a step, drop anyone whose skip-if event already
fired, then draft with the Anthropic API (key in .env): pass ./voice.md plus that
contact's last 20 events, get back a subject and a plain-text body.
- Drafts land as pending. A localhost-only admin page lists them with subject, body,
recipient, and the step that produced it, with Approve and Reject buttons. Nothing
sends without a click.
- Approved mail goes out through Resend or SMTP from .env, one send row per recipient
with the provider message id. Bounce and complaint webhooks write to a suppression
table checked before every send. One-click unsubscribe link in every footer, no
login.
- Cap at 2 emails per contact per 7 days across all sequences, enforced in code
before drafting.
- Out of scope: A/B variants, reply parsing, open tracking. Do not build multi-user
accounts or a visual sequence builder, this runs for one product and one operator.
- README with the deliverability homework: SPF, DKIM, and DMARC on a subdomain like
mail.example.com, a two-week warmup at low volume, and a blunt line that mail from
a cold domain lands in spam no matter how good the copy is.The prompt opens pre-filled in your agent. Review it before running.
What would building your own look like?
Take product events, draft the next lifecycle email with an LLM in your voice, hold it for approval, and send it on a schedule.
What you will need
- Anthropic or OpenAI API key
- email sending API (Resend, Postmark, or SES)
- your own sending subdomain with SPF/DKIM/DMARC
- an always-on host for the scheduler
- product events from your app (webhook or DB)
Lifecycle email is not a build problem, it is an upkeep problem. The DIY version works the week you build it and then sits at whatever quality your first draft happened to have, because nobody goes back to rewrite the activation email that quietly stopped working. Founders pay for the part that keeps happening after launch week: something reading the outcomes, rewriting the losers, and handling the replies without being asked.
xdeliverability: warmup, domain reputation, bounce and complaint handling
xthe improvement loop: variants written, split across live sends, losers rewritten
xreply handling: inbound classified, answers drafted, suppressions applied
xoutcome tracking wired back to the copy that caused it
xthe maintenance nobody does, which is the actual reason lifecycle programs rot
How much does Mara cost?
- Monthly billing
- $99/mo$99/mo
- Per year
- $1,188/yr$1,188/yr
- On a Brazilian card, with 3.5% IOF
- R$517/moR$6,208/yr
Saved to My list. You will see a notice on this site when the price changes.
You complete the purchase on Mara’s site. Vibe Radar does not handle payments.
| Plan | Monthly | Annual (per month) | What is included |
|---|---|---|---|
| starter | $99/workspace≈ $99 | - | 3 active programs, 25,000 sends/month, unlimited contacts. |
| growth | $299/workspace≈ $299 | - | 10 active programs, 150,000 sends/month, unlimited contacts. |
Free tierno free tier; 7-day trial.
Billing termsmonthly only; no annual plan verified
Additional costsHard send/program caps: 25,000 sends and 3 programs on Starter, 150,000 sends and 10 programs on Growth.
verified 2026-08-10 · source ↗
Is it cheaper to build or buy Mara?
Adjust the numbers: hours to build, your hourly rate, running costs and the subscription price.
Over 24 months, subscribing is cheaper.
Starting hours estimated from the analysis (multi-day). Does not price what you give up (support, integrations, security).
Can I rebuild Mara?
Kinda. The core of Mara is buildable in a weekend with the prompt on this page, but there are real gaps: deliverability: warmup, domain reputation, bounce and complaint handling, the improvement loop: variants written, split across live sends, losers rewritten. Read the honest list above before committing.
How much does Mara cost?
Mara costs about $99/mo (Starter, checked 10/20/2026), which is $1,188 per year.
What do I lose by replacing Mara?
Honestly: deliverability: warmup, domain reputation, bounce and complaint handling; the improvement loop: variants written, split across live sends, losers rewritten; reply handling: inbound classified, answers drafted, suppressions applied; outcome tracking wired back to the copy that caused it; the maintenance nobody does, which is the actual reason lifecycle programs rot. If any of those are load-bearing for you, keep paying.
Is there an open-source alternative to Mara?
Yes: Mautic (Open-source marketing automation with campaign builder, segments, and drip flows. Heavy, but it is the real self-hosted analog.), Listmonk (Open-source, single-binary mailing-list and campaign manager. Good sending substrate to build the agent on top of.), Keila (Self-hosted newsletter tool with an API, lighter to run than Mautic.). Using prior art is also vibecoding; the prompt is for when you want it exactly your way.