sendrules
Product
  • Overview
    How sendrules fits between your app and every provider.
  • SMTP Proxy
    One endpoint. Every provider you already trust.
  • Grid & Rules
    Six routing strategies. Coverage warnings. Failover.
  • Quality Gate
    Verify recipients before the send, not after the bounce.
  • ISP Routing
    Route by the recipient's live MX record — not domain strings.
  • Ramp-up
    Auto-advancing cap with bounce/complaint safety gates.
  • Limits & Queue
    Four-tier caps. Queue, don't drop. Midnight-UTC release.
  • Webhooks
    HMAC-signed. Retried on schedule. Replayable.
  • Activity
    Seven filtered inboxes. Sparklines. Share links.
  • Inbound
    Receive + classify replies, bounces, and OOOs.
  • Autoresponder Parser
    Harvest contacts from OOO replies into lists — webhook or CSV.
Deliverability
  • Overview
    The suite most vendors sell separately.
  • DMARC Monitoring
    rua ingest with per-source breakdowns.
  • Auth Check
    SPF / DKIM / DMARC, graded A through F.
  • Postmaster Tools
    Google Postmaster data in per-domain views.
  • Blocklists
    Continuous blocklist + seed-list inbox placement.
How it Works
Industries
  • All industries
    Every segment sendrules fits — and why.
  • B2B SaaS
    Transactional at scale. Failover across ESPs.
  • E-commerce & Retail
    One rule per ISP — Gmail buyers routed differently to Yahoo.
  • Marketing Agencies
    Per-client rules on your clients' own provider accounts.
  • Sales Development
    Verify every address. Parse every autoresponder for referrals.
  • Recruitment & Staffing
    OOO replies are full of decision-maker names — capture them.
  • Real Estate & Lead Gen
    Inquiry email hygiene + reply-source enrichment.
  • Financial Services
    DMARC compliance, audit log, signed webhooks.
  • Healthcare & Life Sciences
    Reliable patient comms with a full audit trail.
  • EdTech & Education
    Enrollment-week bursts absorbed by queue-don't-drop.
  • Nonprofit & Fundraising
    Donor-appeal deliverability without a deliverability team.
  • Publishers & Media
    Newsletter deliverability + list hygiene at every send.
  • Government & Public Sector
    IP allow-list at AUTH, DMARC-first, tenant isolation.
PricingDocs
Sign inStart free
How it Works

From sendMail() to
their inbox — and back.

Eight stages, one endpoint, every event logged. Below is the full journey — how one line of SMTP code becomes a verified, ISP-routed, provider-diversified send with a reply that comes back as a parsed contact.

Start freeSee it in production
Live pipeline · smtp.sendrules.net
01
Send
03
Verify
04
Route
05
Send
06
Land
07
Harvest
Verified · Routed · Delivered · Reply parsed← 8 stages in ≤ 240ms typical
How it works

Eight stages between your sendMail() and their inbox.

Verified, routed, delivered — then replies harvested for contacts you would otherwise lose.

01

Your app

Any SMTP client, any framework.

Node · Python · Ruby · Go · PHP · curl
02

SMTP ingress

smtp.sendrules.net, 587 STARTTLS + 465 implicit.

AUTH LOGIN/PLAINIP allow-listReal LE cert
03

Quality gate

Every recipient scored in the DATA phase.

SyntaxSuppressionDisposableRoleTypoReacher
04

Grid & Rules

Pick a strategy. Fail over automatically.

RRWeightedPriorityRandomStickyMX-ISP
05

Provider fleet

Your accounts. Your reputation. Your quota.

SESSendGridPostmarkMailgun+11 more
via the provider that best fits the recipient's ISP
06

Recipient MX

Gmail, Yahoo, Outlook, Apple, or anywhere else.

DeliveryBounceComplaintReplyOOO
07

Autoresponder parser

Turns OOO replies into contact lists — new colleagues, referrals, forwarded contacts.

Harvest emailsRegex fieldsIgnore listWebhookCSV export
08

Signals & control

Everything logged, signed, and searchable.

HMAC webhooks7-inbox ActivityDMARC ruaPostmaster
Every step logged with reason codesHMAC-signed webhooks with replay4-tier limits — queue, don't dropDMARC + blocklist + Postmaster in one view
  1. Your app

    01

    Any SMTP client, any framework.

    Node · Python · Ruby · Go · PHP · curl
  2. SMTP ingress

    02

    smtp.sendrules.net, 587 STARTTLS + 465 implicit.

    AUTH LOGIN/PLAINIP allow-listReal LE cert
  3. Quality gate

    03

    Every recipient scored in the DATA phase.

    SyntaxSuppressionDisposableRoleTypoReacher
  4. Grid & Rules

    04

    Pick a strategy. Fail over automatically.

    RRWeightedPriorityRandomStickyMX-ISP
  5. Provider fleet

    05

    Your accounts. Your reputation. Your quota.

    SESSendGridPostmarkMailgun+11 more
  6. Recipient MX

    06

    Gmail, Yahoo, Outlook, Apple, or anywhere else.

    DeliveryBounceComplaintReplyOOO
  7. Autoresponder parser

    07

    Turns OOO replies into contact lists — new colleagues, referrals, forwarded contacts.

    Harvest emailsRegex fieldsIgnore listWebhookCSV export
  8. Signals & control

    08

    Everything logged, signed, and searchable.

    HMAC webhooks7-inbox ActivityDMARC ruaPostmaster
01·Connect

One SMTP endpoint. Every language.

Point any SMTP client at smtp.sendrules.neton 587 (STARTTLS) or 465 (implicit TLS). AUTH LOGIN or AUTH PLAIN. Real Let’s Encrypt cert — no self-signed workarounds. Every credential can be scoped to a CIDR list so a leaked password from outside your infrastructure cannot authenticate.

  • Nodemailer, Django EmailMessage, Rails ActionMailer, PHPMailer, curl — anything that speaks SMTP
  • Credentials one-per-rule, so different traffic classes never share a queue
  • Rotate the password from the UI — the old one stops working immediately
import nodemailer from "nodemailer";

const t = nodemailer.createTransport({
  host: "smtp.sendrules.net",
  port: 587,
  secure: false,           // STARTTLS negotiated in-band
  auth: {
    user: process.env.SENDRULES_USER,   // per rule
    pass: process.env.SENDRULES_PASS,
  },
});

await t.sendMail({
  from: "[email protected]",
  to: "[email protected]",
  subject: "Your order #1042 is on its way",
  html: renderOrderEmail(order),
});
SMTP DATA · scoring 4 recipientsBudget · 2.0s
  • Syntaxpass
    RFC-5322 shape, IDN-normalized
  • Suppression listpass
    Global + per-tenant + auto-bounce ledger
  • Disposable domainreject
    Union of curated + community feeds, refreshed daily
  • Role accountflag
    info@ / admin@ / postmaster@ per policy
  • Typo domainflag
    gmial.com → gmail.com suggested
  • Reacher SMTP verifypass
    Live RCPT probe through rotating SOCKS5
3
accepted
2
flagged
1
rejected
03·Verify

Six checks in the SMTP DATA phase.

Before the message ever leaves for a provider, every recipient is scored — inline, in the SMTP DATA phase itself, on a two-second budget. Bad addresses never spend your ESP quota. Risky ones are flagged. The policy is per-rule, so you can reject on outbound cold email and only flag on transactional.

  • Reacher-backed SMTP verify with a rotating SOCKS5 pool
  • Suppression ledger persists cross-tenant hard bounces — recycled spam-trap defense
  • Tiered cache (valid 30d / invalid 90d / catch-all 14d) so the same address is only probed once
Read the Quality Gate page →
04·Route

Six routing strategies. Coverage warnings built in.

Every rule picks a strategy. The rule editor tells you which ISPs your attached providers cover — and warns before you save if there’s a Yahoo-shaped gap.

RR

Round-robin

Rotate through every attached provider evenly. Simple, predictable, hard to hurt yourself with.

W

Weighted

Assign a percentage per provider. 70% through SES, 25% through Postmark, 5% through the fallback.

P

Priority

Try provider one; if it errors, try provider two; and so on. The classical failover pattern.

R

Random

Uniform-random pick — useful for A/B testing two providers on identical traffic.

S

Sticky sender

First delivery to a recipient pins a sender. Every follow-up uses that same sender — reply-rate stays clean.

ISP

MX-based ISP

Resolve the recipient's live MX record. Gmail buyer → your Gmail-friendly provider; Yahoo → your Yahoo-friendly one.

Read the Grid & Rules page →
05·Send

Your accounts. Your reputation. Your quota.

sendrules holds your provider credentials sealed with AES-256-GCM per tenant, but never bills you for the mail — the send goes through your account with your provider. When one provider rate-limits or errors, the next attached provider picks up automatically.

Amazon SESok
1,842sent · last min
SendGridrate-limited
204sent · last min
Postmarkok
963sent · last min
incoming send429 → reroute
Priority strategy — SendGrid returned 429, sendrules rerouted to Postmark on the same rule with no bounce, no drop.
06·Land

Delivered — and classified by the real ISP.

We resolve the recipient’s live MX record, so “[email protected]” that fronts on Google Workspace is correctly routed as a Gmail recipient. Every provider webhook is normalized into the same event shape — delivered, bounced, complained, deferred — with the underlying provider preserved for drilldown.

  • MX-based classification catches domains that front on Google Workspace or Microsoft 365
  • Provider webhooks normalized to one event shape — no per-vendor branching in your app
  • Deferred sends land back in the queue with a retry-at timestamp; no dropped mail
Last 24h · classified by MX52,481 messages
  • Gmail62%
  • Outlook / Hotmail18%
  • Yahoo9%
  • Apple iCloud6%
  • AOL2%
  • Other3%
MX-based— we resolve the recipient’s live MX record, so “[email protected]” that fronts on Google Workspace is correctly counted as Gmail.
Autoresponder harvest

Every OOO reply is a contact. Most senders throw them away.

Ten to twenty percent of campaign replies are autoresponders — and most of them carry the exact contact info you were trying to reach: “I’m on leave until Monday, please contact [email protected] for procurement questions.” sendrules parses every one, harvests every address, captures every named field, and drops the result into a list you can trigger a webhook from or download as CSV.

  • Harvest emails
    Every address inside the body is extracted — new colleagues, forwards, referrals, procurement contacts.
  • Named field capture
    Regex rules pull structured data — a name after 'Please contact', a phone number, an alternate ID.
  • Ignore list
    Skip your own domain, common noise, and addresses you already have. Nothing duplicated, nothing polluted.
  • Webhook or CSV
    Push new contacts into your CRM in real time, or download the list on demand.
See the parser in the productParser docs →
Inbound reply · 08:14 UTCAutoresponder · OOO
From: [email protected]
Subject: Automatic reply: Q4 vendor request

Thanks for your note — I’m on parental leave until 15 January 2026. For procurement, please reach [email protected]. Legal + contracts: [email protected] (direct: +44 20 7946 0123).

Parser: rule "acme-tier1" · list "acme-warm" · 3 new contacts
Contact list · acme-warm
  • [email protected]procurement
  • [email protected]legal
  • [email protected]on leave
1,247 totalExport CSV
Webhook · POST200 OK
{
  "event": "parser.contact",
  "list": "acme-warm",
  "email": "[email protected]",
  "fields": {
    "role": "procurement",
    "return_date": "2026-01-15"
  },
  "source_msg": "01f9...abcd",
  "ts": "2026-11-04T08:14:32Z"
}
Activity · live
AllDeliveredBounced
  • 14:02:11delivered[email protected]Amazon SES
  • 14:02:11delivered[email protected]Postmark
  • 14:02:10opened[email protected]Amazon SES
  • 14:02:09deferred[email protected]SendGrid → Postmark
  • 14:02:08delivered[email protected]SES
  • 14:02:07bounced[email protected]quality gate
  • 14:02:06replied[email protected]inbound
  • 14:02:05delivered[email protected]Postmark
98.2%
Delivery rate
0.4%
Bounce
0.02%
Complaint
08·Observe

Every message, every step, every reason.

Seven filtered activity inboxes. Row-level sparklines. Period-comparison cards. Share links that make any filtered slice a public read-only URL. Behind it all: a normalized event stream your webhooks subscribe to, signed with HMAC-SHA256 and replayable from the UI.

  • Full deliverability suite alongside — DMARC compliance %, blocklist, Postmaster, seed placement
  • Saved views + column picker + keyboard shortcuts so Activity behaves like an inbox, not a report
  • Audit log on every operator action — RBAC-gated, regulator-ready
Under the flow

Six guarantees that hold under every stage.

STARTTLS + implicit TLS, real Let's Encrypt cert
AUTH restricted to your CIDR at the credential level
Message body sealed AES-256-GCM at rest
Every stage logged with a reason code
HMAC-SHA256 webhooks with retries and one-click replay
Four-tier limits — queue-don't-drop, midnight-UTC release

See the pipeline running against your own traffic.

Free plan — 5,000 messages/month, every feature on this page included. Attach one provider and watch the flow light up in the Activity view.

Start freeSee a live customer view
sendrules

One SMTP endpoint across 15 providers. Verify recipients before the send, route by real MX, and monitor DMARC in the same product.

Sign inStart free

Product

  • SMTP Proxy
  • Grid & Rules
  • Quality Gate
  • ISP Routing
  • Ramp-up
  • Limits & Queue
  • Webhooks
  • Activity
  • Inbound
  • Autoresponder Parser
  • Integrations
  • Changelog

Deliverability

  • DMARC Monitoring
  • Auth Check
  • Postmaster Tools
  • Blocklists
  • Free Tools
  • Providers

Solutions

  • How it Works
  • Industries
  • Customers
  • Pricing
  • Docs
  • Contact

Company

  • About
  • Security
  • Status
  • Terms
  • Privacy
  • DPA
  • Acceptable Use

sendrules.com — marketing. Sending infrastructure operates separately at smtp.sendrules.net. © 2026 sendrules.com

X / TwitterLinkedIn