SendCanyon · what this tool does

Everything between you and the inbox.

Cold email fails in the plumbing far more often than in the copy: authentication, reputation, volume, timing, and knowing when to stop. Here is each of those, and exactly how it is handled.

01

Connect the mailboxes you already own

Google Workspace and Microsoft 365 over OAuth, any SMTP and IMAP server, or Amazon SES. No app passwords, no forwarding tricks.

Sending happens from addresses your recipients already recognise, on domains you control. The reputation you build stays attached to your business rather than to a pool you rent.

Credentials and tokens are encrypted before they are stored, and a mailbox can be disconnected without touching the campaigns that used it.

Add a sending mailbox

  • Google Workspace

    OAuth, no app password

  • Microsoft 365

    OAuth via Microsoft Graph

  • Any SMTP + IMAP

    Host, port, credentials

  • Amazon SES

    Your AWS account and quota

Credentials and OAuth tokens are encrypted before they are stored.

02

Prove the domain before anything sends

SPF, DKIM and DMARC are resolved against live nameservers, not read from a cached panel, and a campaign cannot launch on a domain that has not passed.

Most cold email that lands in spam was never authenticated properly in the first place. SendCanyon checks the records that receivers actually evaluate and tells you exactly which value is wrong.

A DMARC record without a policy tag does not count as DMARC here, because it does not count as DMARC at the receiver either.

Checking DNS
  • SPFResolving…

    outbound.acme.co

    v=spf1 include:_spf.google.com ~all

  • DKIMResolving…

    sc._domainkey.outbound.acme.co

    v=DKIM1; k=rsa; p=MIIBIjANBgkq…

  • DMARCResolving…

    _dmarc.outbound.acme.co

    v=DMARC1; p=none; rua=mailto:dmarc@acme.co

A DMARC record without a p= policy tag does not pass here. Records are re-resolved against live nameservers, not cached.

03

Warm new domains on a real ramp

A fresh mailbox starts small and climbs on a schedule, exchanging genuine mail with a peer pool while campaign sending stays locked.

Warmup mail is really sent over SMTP to real mailboxes in other workspaces, and the open is confirmed by reading the receiving inbox over IMAP or Microsoft Graph before it counts.

That distinction matters: a warmup that marks its own homework teaches a provider nothing, and you find out in week four.

Warming · day 12
Daily send allowance

0 / day

28-day ramp
campaign sends unlockDay 1Day 28

Warmup mail goes to real peer mailboxes and the open is confirmed by reading the receiving inbox, not simulated.

04

Spread volume so no single mailbox looks strange

One campaign, many senders. Sends distribute across the pool with a minimum gap per mailbox, a random extra pause, and a hard per-domain daily ceiling.

Each mailbox waits at least 75 seconds between sends plus a random extra interval, so the send log never has the machine-gun rhythm that pattern detection is built to find.

A mailbox whose bounce or complaint rate climbs is pulled out of rotation and the rest of the pool absorbs its share, before a bad afternoon becomes a blocklisting.

Sending
Ten minutes of a live send window16 sends
ana@outboundsam@mailben@mail00:0010:00

Each mailbox waits at least 75 seconds between sends, plus a random extra pause, so the pattern never looks machine-timed.

05

Keep dead addresses out of your bounce rate

Lists are validated on import, and suppressions, prior bounces and unsubscribes are applied again between every sequence step.

Invalid and risky addresses are separated at import instead of being discovered by the receiving mail server, which is the expensive way to find out.

Someone who unsubscribes at step one is gone from step two, not merely hidden from a view.

Import complete
Rows processed

0

300 held back before sending
  • Deliverable4,512
  • Invalid218
  • Risky82

Suppressions, prior bounces, and unsubscribes are applied at import and again between sequence steps.

06

Follow up on a schedule that knows when to stop

Multi-step sequences with waits measured in working days, sending windows you set, and cancellation the moment someone replies.

Waits resolve inside your send window, so a Friday step does not arrive at two in the morning on a Sunday.

Replies are read from the mailbox itself, which is what makes stop-on-reply genuinely cancel the pending sends rather than mark them read.

Stops on reply
  1. Intro: one specific reason

    Sent immediately on enrolment

    14 contacts replied here; remaining steps cancelled for them

  2. Follow-up: the proof

    3 working days later

  3. Break-up: one line

    5 working days later

Waits are working days inside your send window, so a Friday step does not arrive at 02:00 on Sunday.

07

Answer replies without leaving the campaign

Every reply lands in a shared inbox next to the thread that produced it, with the contact, the campaign and the step attached.

A reply is the only outcome that matters, so it is not buried behind an integration you have to configure first.

Out-of-office and bounce notifications are separated from the replies that need a human.

3 new
  • Marta KowalskiInterested

    Interesting timing. We're re-tendering in October. Can you send pricing?

  • Daniel RhodesNot now

    Not right now, try me after the new financial year.

  • Aoife O'BrienAuto-reply

    I am out of the office until 3 September with limited access to email.

Replies are read from the mailbox itself over IMAP or Microsoft Graph, which is what makes stop-on-reply actually stop.

08

Draft the whole sequence with SpirenAI

Describe the product, the audience and the tone, and SpirenAI drafts up to five steps, each with a subject, a body, and the wait before it goes.

The brief is short on purpose: what you sell, who you are writing to, what a good outcome looks like, and one of four tones. What comes back is a real sequence structure, not a paragraph you still have to break up yourself.

Every draft lands in the editor first. SpirenAI proposes and you decide: nothing it writes is sent until you send it, and credits are metered per month so a runaway generation cannot quietly cost you anything.

SpirenAI · spiren-1

Your brief

ProductWarehouse routing softwareAudienceOps leads, 3PL, 50-500 staffToneDirectSteps3
Drafted three steps
  1. Your Rotterdam pick rateSends immediately

    Noticed you run three shifts out of one dock. Most 3PLs we…

  2. The 40-second versionWaits 3 working days

    Short follow-up with the one number that matters, no deck…

  3. Closing the loopWaits 5 working days

    One line, easy to say no to, leaves the door open for Q1…

AI credits this month184 / 250

Every draft opens in the editor. Nothing SpirenAI writes is sent until you send it.

09

See which sender moved the average

Delivery, reply, bounce and complaint rates broken down by campaign, by mailbox and by domain: the granularity you need to act.

One aggregate number tells you something is wrong and nothing about where. These numbers name the mailbox.

Trends over time show the warmup paying off, and everything exports for the people who want their own spreadsheet.

Last 30 days
Delivered0.0%
Replied0.0%
Complaints0.00%
  • ana@outbound0.3% bounced
  • sam@mail0.2% bounced
  • jo@acme4.1% bounced
  • ben@mail0.4% bounced

The same numbers exist per campaign and per domain, which is how you find out which sender moved the average.

Also included

Three more things, on every plan

Canyon, the assistant that knows the product

An in-app assistant for setup and deliverability questions: which record is wrong, why a campaign has not started, what to do about a bounce spike.

A REST API and outbound webhooks

Create contacts, launch campaigns and receive delivery, reply and bounce events wherever the rest of your stack lives.

CSV in, CSV out, no lock-in

Import a list exported from any prospecting tool or CRM, and export your contacts, suppressions and results whenever you want them back.

The plumbing is the product

Connect one mailbox and watch the domain checks run. It takes about ten minutes and costs nothing.