Open source · AGPL-3.0
Templates and automations for transactional email.
Senlo sits on top of the delivery provider you already pay for: Resend, Postmark or any SMTP server. You get a visual editor, lifecycle automations and a clean API. Your provider keeps delivering.
Free for one person: 3,000 emails a month, no card.
How it works
Connect your provider
Paste a Resend or Postmark key, or SMTP credentials for SES, Mailgun or your own server. Senlo never sends from its own infrastructure: your domain, your reputation, your provider's bill.
Build the template
Drag rows and blocks, add merge tags and conditions, preview with real data. Every template is versioned and lives in a workspace, so staging and production stay apart.
Trigger it, or let an automation
One request sends a transactional email from a template. One event starts an onboarding sequence that waits, checks your API and branches.
curl -X POST https://senlo.io/api/triggered \
-H "Authorization: Bearer snl_..." \
-H "Content-Type: application/json" \
-d '{
"id": "order-confirmation",
"to": "customer@example.com",
"data": {
"order": { "number": "A-1049", "total": "42.00" }
}
}'POST /api/events
{ "type": "contact_added", "email": "new@example.com" }
→ creates the contact and starts every automation
whose trigger listens for contact_addedA visual editor your team can use
Rows, columns, merge tags and conditions, with versions you can roll back to. Developers get the same template through the API; nobody writes MJML by hand.

Automations that branch on your own data
Send, wait, then ask your API whether the user did the thing and take a different path. Every node shows how many contacts are in it right now.

Delivery you can actually see
Sends, deliveries, bounces and engagement per workspace, a live feed of what went wrong, and suppressions before a bad address hurts your reputation.

An API, not a black box
Two endpoints do the work: one sends a transactional email from a template, the other feeds contact events into automations. The interactive reference lives at /api-docs.

Not another email provider
Resend, Postmark and SES are good at delivering mail. They are not where your team wants to edit a template, version it, or draw an onboarding sequence. Senlo is that layer: it renders, personalises, tracks and decides, then hands the message to the provider you chose. Switch providers without touching a template.
Open source, two ways to run it
Senlo is AGPL-3.0 on GitHub. Self-host it with one docker compose up and keep everything on your servers, free. Or sign up here and skip the Postgres, Redis, worker, backups and upgrades: the same product, hosted, with teams and roles on top.
Pricing
Details and FAQ- 3,000 emails a month
- 1,000 workflow runs a month
- 1 member (just you)
- 3 workspaces
- No audit log
- Every provider: Resend, Postmark, SMTP
- Visual editor, automations, API
- 50,000 emails a month
- 10,000 workflow runs a month
- 5 members
- Unlimited workspaces
- 30-day audit log
- Every provider: Resend, Postmark, SMTP
- Visual editor, automations, API
Unlimited members, higher monthly limits, a longer audit log. Write to us from the app when Pro gets tight.