Hoq Mailer
Your list, the consent behind each address, and the email you send.
What it does
Hoq Mailer runs email marketing for one sender at a time: contacts, lists, tags, custom fields, segments, signup forms, campaigns and automations. Each sender is one Mailer file in its owner's Hoq Storage drive.
Every subscription has a consent record. The record is append-only and hash-chained, so you can show how and when each person agreed. A contact who unsubscribed, bounced or complained is never added back by an import or a form post.
You choose how mail leaves. Connect your own SMTP server, Amazon SES or Emailit to each sender. Credentials are sealed with AES-256-GCM outside the file and never shown again. Each channel has its own rate limits, sending window and circuit breaker.
Sending is crash-safe. A message row is committed as sending before the transport is called. If the worker dies mid-batch, the row is marked unknown and counted on the campaign page. It is never sent twice.
In numbers
Specifications
| Where your list lives | One .mailer file per sender in your own Hoq Storage drive: contacts, consent log, campaigns, sends and automations. |
|---|---|
| Sending channels | Your own SMTP server (STARTTLS, verified TLS), Amazon SES (SESv2 API, SNS events) or Emailit. Set per sender. |
| Channel secrets | Sealed with AES-256-GCM in a separate store, bound to the sender and channel. Write-only in the console and never exported. |
| Authentication check | A channel is checked by a test message: SPF, DKIM and DMARC results are read from the received headers, including DKIM over both unsubscribe headers. |
| Unsubscribe | Signed one-click List-Unsubscribe links, a preferences page with per-list choices, and unsubscribe by replying to the email. |
| Bounces and complaints | Hard bounces and complaints suppress the address at once. Three soft bounces in 30 days count as a hard bounce. Complaints above 0.3% of 30 days of mail pause the channel. |
| Open and click counting | Each open and click is labelled human, privacy proxy or link scanner. Reports lead with human clicks. |
| Signup form protection | Randomized honeypot, signed time stamp, throwaway and no-MX domains refused, ten signups per connection per ten minutes. |
| Erasure | Erasing a person nulls their data at once and keeps only a keyed digest, so a later import cannot add them back. |
| Sign-in | Hoq ID single sign-on. API and MCP access by Hoq ID keys with scope mailer:use. |
Features
24 features, all shipped. Listed from the product's code and documentation; each row shows the day it was last checked.
| Contacts, lists and tags | Keep people in lists with tags and typed custom fields, and change them in bulk. | |
| Consent record | Every subscribe, confirm and unsubscribe is written to an append-only, hash-chained log you can verify. | |
| Segments | Build saved segments from a fixed set of subjects and operators, with a live count. | |
| CSV import | Import a CSV with delimiter sniffing; role and throwaway addresses are held back and nobody who left is resubscribed. | |
| Mailster import | Bring a Mailster list across with statuses, confirmation dates, list joins, bounces and custom fields. | |
| Export and erasure | Export contacts as CSV, export one person's data, or erase a person. |
| Drag-and-drop designer | Design with 11 blocks on the real email, with desktop, phone and dark previews, undo and autosave. | |
| Letter format | Write in Markdown and get email-safe HTML in your brand colour and font, with a plain-text part. | |
| Pre-send checks | A campaign will not start without a sender, postal address, subject, body, a working channel and an audience; warnings flag Gmail's 102 KB clip, missing alt text and http links. | |
| Test, schedule, pause | Send a test, schedule a campaign, pause, resume or cancel it. | |
| Click tagging | Tag whoever clicks a given link; clicks from link scanners tag nobody. | |
| Campaign report | Delivered, bounced, complaints, human-estimated opens beside all opens, and clicks. |
| Your own SMTP | Send through any SMTP server, one session per batch, with VERP bounce addresses. | |
| Amazon SES | Connect sets up domain DKIM, a configuration set and SNS events, and imports SES's suppression list. | |
| Emailit | Send through Emailit's API with idempotency keys, signed webhooks and its suppression list kept in sync. | |
| Limits per channel | Per-second, hourly and daily caps, a sending window in your timezone and a breaker that rests a failing channel. |
| Signup forms | Hosted page or embed script with a no-script fallback; single or double opt-in. | |
| Newsletter archive | A public archive per sender with issue pages, RSS and a signup box; you choose which campaigns appear. | |
| Web version and preferences | Each email has a web version and a preferences page where people pick lists and tracking consent. | |
| Tracking consent | Track everyone, only people who agreed, or nobody. |
| Versioned workflows | Editing a live workflow writes a new version; people on a removed step leave with a reason. | |
| Exactly-once steps | Each step is recorded with its effect, so a crash never sends a step's email twice. | |
| Imports never trigger | Importing a list never starts a welcome series. |
| JSON API and MCP | 89 actions over one JSON door, also offered as MCP tools for AI agents. |
Works with
- storageEach sender's Mailer file sits in your Hoq Storage drive.
- Hoq FormsA Hoq Forms signup reaches the Mailer with the person's own consent and a confirmation when the list needs one.
Your data
| Where it is kept | One .mailer file per sender in your Hoq Storage drive. Sending credentials are sealed separately on Hoq's servers. |
|---|---|
| Getting it out | Contacts as CSV from the console, one person's data on request, and the .mailer file itself from your drive. |
| If you leave | not published |
APIs and standards
- JSON API: POST /api/mailer/w/{key} with a Bearer key (scope mailer:use)
- MCP server at /mcp/mailer: one tool per action (89)
- Signup door: POST /f/{key}, JSON or a plain form, CORS-open
- Event webhooks in: Amazon SNS, Emailit, raw DSN and ARF reports
- Standard: SMTP with STARTTLS
- Standard: List-Unsubscribe one-click (RFC 8058)
- Standard: VERP
- Standard: SPF
- Standard: DKIM
- Standard: DMARC
- Standard: ARF complaint reports
- Standard: RSS
Compared
| Checked 2026-11-01 | Hoq Mailer | Mailchimp Essentials | Kit Creator |
|---|---|---|---|
| Cheapest paid tier | Not published | From $13/mo (Essentials, 12-month offer)1 | $33/mo for 1,000 subscribers ($390 billed yearly)2 |
| Send through your own SMTP or SES | Yes: SMTP, Amazon SES or Emailit, per sender | not published1 | not published2 |
| Automations | Versioned workflows, 7 triggers, 11 steps | Up to 4 flow steps on Essentials1 | Unlimited visual automations2 |
| A/B testing | No | Premium plan only1 | 2 subject lines2 |
| Team seats | not published | 3 seats1 | 2 users2 |
| Landing pages | Hosted signup page and newsletter archive; no page builder | not published1 | Unlimited landing pages2 |
| API | JSON API and MCP server | not published1 | Yes2 |
| Remove vendor branding | No Hoq branding in campaigns | Included1 | not published2 |