SaaS · Sales Automation

CadenHQ: cold email SaaS with reply detection that just works

A B2B cold email outreach platform with multi-step sequences, OAuth mailbox connect, reply-and-bounce detection, and CRM sync. Built for founders and sales teams who want results without spam.

Ruby SaaS Email
CadenHQ product screenshot

The problem

Cold email is a workflow most founders need but few want to learn. The dedicated tools are either bloated enterprise platforms with annual contracts, or fragile no-name SaaS that gets your domain blacklisted by sending too aggressively.

The wedge was a clean, opinionated tool: founders connect their existing mailbox, upload a CSV of contacts, define a multi-step sequence, and the platform sends one human-like email at a time with proper warm-up and reply detection.

What we built

CadenHQ does exactly four things well: multi-step sequence orchestration, mailbox-aware throttling, reply-and-bounce detection, and CRM sync. No campaign builder with 50 unused features. No “AI-powered subject line optimizer.” Just the core workflow a founder actually does manually today, automated cleanly.

Architecture decisions that mattered

Per-mailbox send queue with deliverability throttling. Each connected mailbox has its own Sidekiq queue with rate limits (warmup-period-aware, ramps up daily). Sends are spread across hours, not blasted. We track open rates per mailbox and slow down automatically if the score drops.

OAuth mailbox connect, not SMTP. Gmail and Microsoft Graph OAuth for connection. We send from the user’s actual mailbox via their own auth token. This avoids the deliverability nightmare of shared SMTP relays and means the user keeps control of their outbox.

Reply detection via Gmail/Graph webhooks. When a recipient replies, the webhook fires and we mark the contact as replied — automatically pausing the rest of the sequence for that thread. No more “we kept emailing them after they answered.” Bounce detection works the same way via DSN parsing.

Idempotent send operations. Every send job has a unique idempotency key (sequence + step + contact). Retries from queue failures never double-send. We learned this the hard way during an early Sidekiq retry storm.

Stripe Billing with per-mailbox pricing. $29/month per connected mailbox, no contact-list limits. Simple enough to explain on the homepage, easy to forecast for the customer, no surprise overages.

Zapier integration for CRM sync. Rather than building bespoke integrations to HubSpot, Pipedrive, Salesforce, Close, etc., we ship a Zapier app that triggers on every reply, open, and bounce. The customer wires it to whatever CRM they use. Coverage of 5000+ apps for the cost of one integration.

Results

  • Reliable per-mailbox sending with deliverability monitoring
  • Reply detection that actually pauses sequences (not the “we’ll try” most competitors ship)
  • Founders can connect a mailbox and run their first sequence in under 10 minutes
  • Per-mailbox pricing model lets customers grow without renegotiation

What we learned

Deliverability is a per-mailbox engineering problem, not a campaign feature. Spreading sends, tracking bounce rates, and throttling on warning signals belongs in the platform, not in user settings. The user shouldn’t need to think about it.

Replies are events, not state. Treating reply detection as an event stream from the mail provider (rather than polling the inbox) is dramatically more reliable. Webhooks fire within seconds; polling can miss messages or fire stale.

Integration via Zapier beats writing 20 CRM connectors. For B2B SaaS targeting small teams, Zapier covers 90% of integration requests at 5% of the engineering cost. Build native integrations only for the platforms your top customers are on.

Stack

A Ruby backend with Postgres and a job system tuned for per-mailbox throttling. Mail send and receive go through the major mailbox provider APIs over OAuth. Hosted billing and a wide-coverage integration layer for CRM sync.

Visit the live product at cadenhq.com.