botttaStart project

How to Automate Email: Sends, Inbox, and Deliverability

Ugo Charles
Illustration for How to Automate Email: Sends, Inbox, and Deliverability

Open the shared inbox on a Monday and it is a queue. Forty or sixty messages sitting in sales@ or support@ or whatever address everything funnels into. One is a demo request. One is a customer asking to move a delivery. One is an invoice question that belongs to finance. One is a vendor nobody recognizes. Someone reads each, decides who owns it, pastes the details into the CRM or the helpdesk, fires back a templated reply, and sets a reminder to follow up. That work runs every morning and it never ends.

Then there is the other half, the email your systems should send on their own. A new signup that should kick off a welcome sequence. An order that should generate a confirmation. An unpaid invoice that should chase itself. A lot of that still waits on a person to click a button.

Both get called email automation and they are close to opposite problems. One reads the email that arrives. The other sends email when something happens. The sending half is deterministic and low-risk, so it goes first. The inbox half needs judgment, so it goes second, behind a review step. Underneath both sits email authentication, the unglamorous part that decides whether your automated mail reaches an inbox or a spam folder. Prices and vendor limits below are current as of August 2026.

Start with the email your systems should send themselves

Send-side automation is the safe place to begin because the logic is fixed. An event happens, a specific email goes out, every time, with no interpretation required. A password reset is requested, the reset email sends. An order ships, the tracking email sends. There is no "which department is this" to figure out, so there is nothing for a machine to get wrong.

The first real decision is what kind of send it is, because it changes which tool you reach for. Two categories that people constantly blur together:

  • Transactional email. One message, one event, expected fast: receipts, password resets, order and shipping confirmations, security alerts, booking notifications. The recipient is waiting for it. It has to land in the inbox within seconds.
  • Lifecycle and marketing email. Timed sequences tied to behavior: a welcome series over the first week, onboarding nudges, re-engagement for a dormant account, a nurture track. Nobody is refreshing their inbox for these, but they need segmentation, scheduling, and an unsubscribe link.

Sending both through the same pipe is the classic mistake. Push a marketing blast through your transactional stream and one spam complaint can drag down the deliverability of your password resets. Keep them separate from day one.

Match the sender to the job

Transactional mail wants a transactional API. Lifecycle mail wants an email service provider (ESP) built for sequences. Here is what each costs, from the vendors' own pricing pages.

| The email | What it needs | Best sender | Representative price | |---|---|---|---| | Receipts, resets, order and shipping confirmations, alerts | Speed, high inbox placement, one message per event | Transactional API | Postmark $15/mo for 10,000 emails. Amazon SES $0.10 per 1,000 | | Welcome series, onboarding, nurture, re-engagement | Segmentation, scheduling, unsubscribe, behavior triggers | ESP / lifecycle platform | Customer.io Essentials $100/mo (up to 1M sends). Klaviyo free up to 250 profiles and 500 sends/mo. HubSpot Marketing Hub free up to 2,000 sends/mo |

Read the table as a fork, not a shopping list. If you are a small team sending mostly app-triggered mail, a transactional API is the cheaper and more reliable reach. Amazon SES at $0.10 per 1,000 is close to free at low volume, though it hands you nothing else, so you write the templates and the retry logic yourself. Postmark costs more but ships fast delivery and good bounce handling out of the box, which is usually worth it under a few hundred thousand messages a month.

The trigger itself is the last piece. Something in your stack has to fire the send: a webhook from Stripe when a charge succeeds, a new row in your database, a status change in the CRM. That wiring, event to send, is the whole job, and it is where a workflow tool or a bit of glue code earns its place. We cover the plumbing side of that in our guide to workflow automation tools.

Then automate the inbox a person works down every morning

The inbound side is the higher-value half and the harder one, because now the machine has to read. An email arrives in free text, and before anything useful happens, something has to understand what it is: a refund request, a reschedule, a lead, a bill. This is the work eating your team's mornings, and it does not respond to a simple "if subject contains X" rule, because customers do not write to a schema.

The build has four moves, in order:

  1. Capture the email. Point a monitored inbox or a forwarding rule at a webhook so every incoming message becomes structured data your workflow can act on, instead of sitting unread in a mailbox.
  2. Extract the intent and the facts. Run the message through a language model to pull what matters: what the sender wants, who they are, the order number, the amount, the requested date. This is the same structured-extraction pattern we detail in how to automate data entry, pointed at email bodies instead of PDFs.
  3. Classify and route. Tag the message (billing, sales, support, spam) and hand it to the right place: create the ticket in the helpdesk, assign the lead to an owner in the CRM, or drop a finance item in the right queue.
  4. Draft or reply. For the clean, common cases, generate a reply from a template the model fills in. For anything ambiguous, draft the reply and leave it for a human to approve rather than sending blind.

The cost of the reading layer surprises people because it is so low. Running each inbound message through Claude Haiku 4.5 to pull the intent and the fields costs a fraction of a cent. At $1 and $5 per million tokens (Anthropic's pricing), a month of a busy shared inbox, a few thousand messages, classifies and extracts for a few dollars. The model is the cheap part. The routing and the connections to your other tools are the real work.

Put a confidence gate on anything that replies for you

Never let a model send a customer-facing reply with no check. A language model will occasionally misread a request or invent a detail, and an auto-sent wrong answer is worse than a slow right one. The fix is a confidence gate: the automation handles the clear cases end to end and escalates the rest to a person.

Draw the escalation rules explicitly. A first-time sender, a refund over a set amount, a message the model tags as angry or ambiguous, a field it could not extract cleanly. Those route to a human with the draft attached, so your team edits and approves instead of typing from scratch. Everything else, the "where is my order" and the "can you send the invoice again," sends on its own. Start with the gate wide open, watch what the model gets right, and tighten it as you trust it. For heavier back-and-forth support volume, a customer-service chatbot can front the inbox and only pass real exceptions through.

Set up SPF, DKIM, and DMARC before the first automated send

You can build the cleanest send flow in the world and still land in spam if the receiving mailbox does not trust your domain. Since February 1, 2024, Google has required any domain sending more than 5,000 messages a day to Gmail to authenticate with SPF, DKIM, and DMARC, align the From domain with SPF or DKIM, keep the spam rate reported in Postmaster Tools below 0.30%, and offer one-click unsubscribe on marketing mail (Google's sender guidelines). Yahoo published matching requirements the same month.

Even well under 5,000 a day, treat these as mandatory. SPF, DKIM, and DMARC records on your sending domain are the difference between your automated mail reaching the inbox and quietly dropping into spam where nobody sees it. A transactional provider like Postmark or SES will walk you through the DNS records, but they cannot set them for you, and skipping the step is the single most common reason a new send flow "works" in testing and fails in the wild.

One more limit worth reading before you build on it. Amazon SES starts every new account in a sandbox capped at 200 messages per 24 hours and 1 message per second until you request production access (AWS documentation). Teams wire up a beautiful flow, watch it stall at 200 sends, and burn a day figuring out why. Check the sending quotas of whatever provider you pick against your real volume first.

Common mistakes that break email automation

The failure modes here are specific, and most of them are cheap to avoid if you know they exist.

  • No loop protection. An auto-reply that fires on every inbound message will happily reply to another system's auto-reply, and the two bounce mail back and forth forever. Suppress replies to no-reply addresses and to your own automated senders.
  • Mixing marketing into the transactional stream. One unsubscribe complaint on a promo email should never be able to hurt the deliverability of your password resets. Separate domains or subdomains for the two keeps a reputation problem contained.
  • No bounce or complaint handling. If your list keeps mailing addresses that hard-bounce, your sender reputation erodes and inbox placement drops. Automation has to read the bounce webhooks and suppress dead addresses, not just fire and forget.
  • A brittle flow nobody owns. A single Zap or script on one person's account, with no error alert, is a silent failure waiting to happen. When it breaks at 2am, no email sends and no one knows until a customer complains. Monitoring is part of the build, not an add-on.
  • Auto-sending replies with no gate. Covered above, and worth repeating: a wrong answer sent instantly is the fastest way to lose trust in the whole system.

When to wire it yourself and when to bring in bottta

Some of this you should just do. A single transactional email through Postmark or SES, or a welcome sequence set up inside the ESP you already pay for, is a weekend job for anyone comfortable with a webhook. If that is the whole scope, wire it yourself and move on.

The moment it gets worth handing off is when email automation stops being one send and becomes a system: an inbound inbox that has to read messages, extract fields, route to the right tool, and reply behind a confidence gate, all touching your CRM, your helpdesk, and your billing at once. That is a design problem, not a button. This is where working with a studio beats stacking tools, and it is the work we do at bottta.

We are an automation studio, so the recommendation is not "buy this platform," it is "let us design the flow and wire the pieces so your inbox and your sends run without a person babysitting them." Concretely that is our Integrations work (capturing the inbox and gluing it to your CRM, helpdesk, and billing through their APIs), our AI Automation work (the classification, the extraction, the drafted replies, and the confidence gate), and our Workflow Design work (the routing rules and the clean handoffs to your team). Two ways to work with us: a $4K project with fixed scope and integrations included, plus 30 days of post-launch support, for a defined build like an inbound-triage flow, or a $3K/month retainer with flexible hours across up to 3 active workflows and ongoing monitoring, for when the email work keeps evolving and you want someone owning it.

The sends are the weekend job. The inbox that reads, routes, and replies behind a confidence gate is the build worth handing off. Start at bottta.com. If you are still deciding whether a workflow is worth automating at all, our take on when to automate and when not to is the place to start.

Frequently asked questions

What is email automation?

Email automation is sending and processing email by triggered workflow instead of by hand. On the send side, an event in your stack (a signup, an order, a status change) fires a specific email with no one clicking anything. On the inbound side, arriving messages are read, classified, routed, and often replied to automatically, with a human reviewing the cases the system is unsure about.

What is the difference between transactional and marketing email?

Transactional email is one message tied to one event that the recipient is expecting, like a receipt or a password reset, and it should send through a transactional API for speed and inbox placement. Marketing and lifecycle email is timed sequences tied to behavior, like a welcome series, and it belongs in an ESP built for segmentation and unsubscribes. Keep the two streams separate so a marketing complaint cannot hurt your transactional deliverability.

Do I need a separate tool to send automated emails?

For transactional mail, yes, you route through a provider like Postmark ($15/mo for 10,000 emails) or Amazon SES ($0.10 per 1,000). For lifecycle sequences, an ESP such as Customer.io or Klaviyo handles the scheduling and segmentation. Sending straight from a personal Gmail account does not scale and trips deliverability rules fast.

Will my automated emails land in spam?

They will if your domain is not authenticated. Set up SPF, DKIM, and DMARC records, and for higher volume keep your spam rate below the 0.30% threshold Google enforces for bulk senders (Google's guidelines). Also handle bounces and complaints so you stop mailing dead addresses, which is what erodes sender reputation over time.

Can I automate replies to inbound customer emails?

Yes, and it is one of the highest-value automations for a lean team, but do it behind a confidence gate. Extract the intent and facts with a language model, auto-reply to the clear, common cases from a template, and route anything ambiguous or high-stakes to a person with a draft attached. Auto-sending unreviewed replies is the fastest way to send a confidently wrong answer to a customer.

More from the Journal