Skip to content

Return-Path and Envelope-Sender — Quick Setup in AcelleMail

The 5-minute setup: pick a bounce subdomain, publish the MX record, set the sending-server config, verify. This is the practical companion to [Return-path and envelope-sender explained](/kb/articles/return-path-and-envelope-sender-explained) — when you just want to do it.

What you're doing

You're setting up a custom envelope-sender (also called "return-path" or "MAIL FROM domain") aligned to your sending domain. Instead of AcelleMail using the vendor's default like [email protected], your envelope-sender becomes [email protected] — passing strict DMARC alignment.

This article is the 5-minute setup. For the concept + why it matters, see Return-path and envelope-sender explained.

Step 1: Pick a subdomain

Convention: bounce.yourdomain.com or mail.yourdomain.com. Reserved for envelope-sender / return-path.

bounce.brand.com   (recommended; explicit)
mail.brand.com     (also common)
return.brand.com   (sometimes used)

Step 2: Publish the MX record

At your DNS host:

Type:     MX
Name:     bounce.yourdomain.com
Value:    feedback.acellemail.com   (or your install's bounce processor)
Priority: 10
TTL:      3600

The exact MX target is shown in your AcelleMail sending-domain detail page. Use that value.

Wait for DNS propagation (5-60 minutes typical).

Step 3: Configure the sending server in AcelleMail

In AcelleMail's sidebar, Sending → Sending servers → click your active server. The detail page surfaces Connection settings + Configuration + Identity:

Sending server detail — Configuration section

In the server detail's Configuration section, find the MAIL FROM (Return-Path) field. Enter your subdomain:

MAIL FROM: bounce.yourdomain.com

Save. From the next send onwards, AcelleMail uses this as the envelope-sender.

Step 4: Verify

Send a test campaign to yourself. Open the received message → Gmail's "Show original" (or equivalent in your email client). Look for:

Return-Path: <[email protected]>

If you see your custom subdomain — done. If you see the vendor default (e.g. [email protected]) — Step 3 didn't save; re-check sending server config.

Verify the DMARC alignment in AcelleMail's auth chips:

The auth chips on the sending-server detail

Open Settings → Sending servers → click your active server. The toolbar shows the live SPF / DKIM / DMARC chip status:

Sending server detail with auth chips

  • Green chips on all three = receiving servers can confirm you're authorized to send from this domain.
  • Any chip red = receiving servers immediately downgrade reputation. Click Verify domain in the toolbar to walk through the DNS-fix wizard.

DMARC chip should remain Green. If it flips Red after this change, your DMARC record needs subdomain alignment too — see DMARC enforcement migration.

Common UI signals + fixes

Symptom Likely cause UI fix
Bounces stop arriving in AcelleMail MX record not propagated dig MX bounce.yourdomain.com — verify target matches AcelleMail's expected value
MAIL FROM field grayed out Vendor doesn't support custom MAIL FROM (some shared-pool setups) Switch to a vendor that supports custom MAIL FROM (SES, dedicated Mailgun, etc.)
Custom MAIL FROM saved but messages still use vendor default Old campaign sends using cached config Send a fresh test; only new campaigns use the new MAIL FROM
DMARC chip flips Red DMARC alignment lost Verify SPF includes the new MAIL FROM domain

Aligned vs unaligned

Aligned:

From:          [email protected]
Envelope-Sender: [email protected]
SPF check on:  bounce.brand.com (subdomain of brand.com)
DMARC: pass via aligned SPF

Unaligned (default vendor):

From:          [email protected]
Envelope-Sender: [email protected]
SPF check on:  amazonses.com (different domain)
DMARC: pass via DKIM only (or fail if strict alignment)

Both work for most receivers. Aligned is preferred for B2B + strict-alignment-enforcing receivers.

Advanced: multi-vendor envelope-sender management + per-tenant subdomains + automated verification

Multi-vendor envelope-sender:

If you use multiple sending vendors, each can have its own envelope-sender subdomain:

Server A (SES):       bounce-ses.brand.com  → feedback-ses.acellemail.com
Server B (Mailgun):   bounce-mg.brand.com   → feedback-mg.acellemail.com
Server C (Postmark):  bounce-pm.brand.com   → feedback-pm.acellemail.com

Per-vendor MX. Per-vendor sending-server config. All envelope-senders align to brand.com via subdomain leeway.

Per-tenant in SaaS context:

For SaaS sending-on-behalf-of-customers:

Customer A: bounce.customerA.com → managed by your platform
Customer B: bounce.customerB.com → managed by your platform

Each customer adds the MX record at their DNS host. Your platform's AcelleMail config sets per-customer envelope-sender.

Automated verification:

#!/bin/bash
# Daily check — verify all sending-server MAIL FROM domains have correct MX
servers=$(curl -sH "Authorization: Bearer $TOKEN" \
  "https://acellemail.com/api/v1/admin/sending-servers" | jq -r '.data[].uid')

for server in $servers; do
  mail_from=$(curl -sH "Authorization: Bearer $TOKEN" \
    "https://acellemail.com/api/v1/admin/sending-servers/$server" \
    | jq -r '.mail_from_domain')

  if [ -n "$mail_from" ]; then
    mx=$(dig MX $mail_from +short | head -1)
    if [ -z "$mx" ]; then
      echo "🚨 Server $server: MAIL FROM=$mail_from has no MX record"
    fi
  fi
done

Custom envelope-sender for transactional vs marketing:

Transactional server: bounce-txn.brand.com  (separate reputation pool)
Marketing server:     bounce-mkt.brand.com  (separate reputation pool)

Bounces from each route separately. Marketing reputation problems don't pollute transactional reputation.

Vendor-specific notes:

  • Amazon SES: Set "MAIL FROM domain" in SES Verified Identities. Add MX record bounce.brand.com → feedback-smtp.us-east-1.amazonses.com (region-dependent)
  • SendGrid: Whitelabel feature (paid tier). Configure via SendGrid Senders → Domain Authentication
  • Mailgun: Built-in; configure via Domain → DNS Records
  • Postmark: Built-in; configure via Servers → Server Settings → Custom MAIL FROM

Each vendor has slightly different MX target. Refer to vendor docs OR check AcelleMail's sending-domain detail page for the right value.

Related articles

17 bình luận

11 bình luận

  1. priya.iyer.ops
    Hit the 10-lookup SPF limit when we tried to layer SES on top of an existing Google Workspace setup. Flattened with a tool (spfwizard.com) and it's been fine since. That tool's worth a mention
    1. admin
      thanks for the breakdown. saving for our customer-success team's reference library
  2. sofia.costa.pt
    Worth noting: our DNS provider (Cloudflare) caches negative responses for 1 hour. We added a TXT record, dig showed it, but mail-tester said missing for another 40 minutes. Almost lost our minds. TTL was set to 300 but the parent zone NS cache held. tbh
  3. tranminh.devop…
    Quick question: do receivers actually enforce the SPF -all hard fail, or do most just downrate? I've heard mixed things and I'm hesitant to switch from ~all.
  4. linhpm.devs
    thanks for the explicit cautionary tales. the alignment-vs-pass distinction is exactly where i lost a week last year.
  5. jmorrison.itop…
    How do you handle DNS for clients in white-label setups? The customer would need to add records to their domain — is there a clean way to ulk-verify those? :)
    1. admin
      suppression list import via csv captures all opt-outs including preference-center ones if you exported with the right field set. the export filter defaults exclude some — check the 'include unsubscribed' checkbox on mailchimp's export wizard
  6. i.rossi.mil
    DNS setup is one of those things where you don't know what you don't know. This article should be required reading for anyone running their own mail
  7. cw.dev.sh
    easy win: set up dmarcian.com (free tier) to receive your DMARC RUA reports. The first 2 weeks of reports tell you everything you didnt know about who's sending as you.
    1. admin
      yep, same pattern works for us. thanks for sharing.
  8. aditi.s.bom
    if you use vercel or netlify for the apex, watch out — they sometimes override txt records via their auto-dns feature. bit us once with a stripped spf record.
  9. joel.anders.se
    The SPF flattening explanation finally made it click for me. I'd been hitting the 10-lookup limit and didn't understand why nesting includes counted
    1. admin
      Appreciate it. If anything in this needs updating, ping us — we revisit articles every few months.
  10. nadia.r.cl
    whats your recommendation for sub-domains? we send from mail.example.com and notifications.example.com. same dkim selector or separate?
    1. admin
      yes — strict alignment requires the from: domain to match exactly. subdomain-level (`bounce.example.com` vs `example.com`) passes relaxed but fails strict. most operators run relaxed; the rare strict-dmarc setups need explicit subdomain dkim configuration.
  11. y.yamamoto
    Our DKIM rotation broke for 2 days because we updated the active selector first, then waited to delete the old. Should be the other way — publish new, wait 48h for cache, switch sending, THEN remove old.
    1. admin
      thanks for the numbers. worth pulling into a follow-up post on volume-tier sizing

More in DNS & Domain Setup