Set up your sending domain for Adapty Mail

Adapty Mail sends campaigns from your own domain — not from a shared address — so sender reputation stays under your control. You set this up once, and every campaign uses the same verified domain. For the minimum steps, see the domain section in Get started with Adapty Mail. This article covers the full setup, how verification works, and the automatic warm-up behavior.

Requirements

  • Apex domain: Submit your root domain (for example, yourapp.com), not a subdomain. Inputs like app.yourapp.com are rejected at validation.
  • Active NS records: The domain must resolve. Adapty Mail performs a DNS lookup during setup and refuses domains without valid NS records.
  • One domain per Adapty project: A domain can’t be shared across projects. If the domain is already registered to any project — yours or someone else’s — setup fails.

Set up your sending domain

The setup wizard has three screens: enter the domain, confirm the generated subdomains, and add the DNS records. All three live in Settings → Email Domains.

  1. Enter your domain. Type your apex domain into the Domain field and click Preview. Adapty Mail validates the format (ASCII, two labels, no leading or trailing hyphens, TLD of 2+ characters) and checks that DNS resolves.

    mail-email-domains.webp
  2. Confirm subdomains. Adapty Mail generates two sending subdomains with fixed prefixes — mail.yourapp.com and email.yourapp.com — each with its own SES identity. It also creates a Mail-From subdomain under each (hello.mail.yourapp.com and hello.email.yourapp.com). Review them and click Confirm.

    confirm-subdomains.webp
  3. Add DNS records. The final screen lists every record to add — 10 total, 5 per sending subdomain, plus one optional DMARC record on the root. Use Download CSV to export the full list, or copy the records one by one into your registrar. Click Done when records are in place.

    email-domains.webp
DNS record reference

For each sending subdomain (mail.yourapp.com and email.yourapp.com), add:

DKIM — 3 CNAME records. Cryptographic signatures that prove the email wasn’t altered in transit.

FieldFormat
TypeCNAME
Name{token}._domainkey.{subdomain}
Value{token}.dkim.amazonses.com

Mail-From — 1 MX record. Handles bounces.

FieldFormat
TypeMX
Namehello.{subdomain} (for example, hello.mail.yourapp.com)
Priority10
Valuefeedback-smtp.{region}.amazonses.com

SPF — 1 TXT record. Authorizes Adapty to send on your behalf.

FieldFormat
TypeTXT
Namehello.{subdomain}
Value"v=spf1 include:amazonses.com ~all"

On your root domain, add the optional DMARC record:

FieldFormat
TypeTXT
Name_dmarc.{domain}
Valuev=DMARC1; p=reject

Tokens, region, and any other values come from AWS SES at setup time. Always copy them from the DNS records screen in Adapty Mail, not from this reference.

How verification works

Once DNS records are in place, Adapty Mail polls DNS automatically, and you can also trigger checks manually.

  • Automatic polling: Polling starts 5 minutes after you submit, then doubles each round — 10 min, 20 min, 40 min — before capping at 60 min. It continues until records are found or the 7-day window closes.
  • Manual check: Click Check Verification to force an immediate check. There’s a 60-second cooldown between manual checks — triggering too fast returns “Verification check is on cooldown.”
  • Status states: Each subdomain’s DKIM and Mail-From are tracked independently as Pending, Success, or Failed. A domain is considered fully verified only when all four statuses read Success.
  • 7-day deadline: If verification doesn’t complete in 7 days, the identity is marked Failed. Your DNS records stay in your registrar — re-enter the domain in Settings → Email Domains to start a new window.
  • After verification: If you remove or change DNS records later, AWS SES eventually downgrades the identity. Keep the records in place for as long as you plan to send.
  • DNS propagation: Usually takes minutes; can take up to 48 hours in rare cases.

Domain warm-up

New domains have no reputation with email providers like Gmail or Yahoo, so high-volume sends from a fresh domain risk landing in spam. Adapty Mail handles warm-up automatically by ramping your daily send limit across 14 tiers. No configuration needed.

How tiers work

Your domain starts at Tier 1 (200 sends/day) and advances automatically when deliverability metrics stay healthy. If bounce rates rise or complaint rates climb, advancement pauses and can reverse until reputation recovers.

TierDaily limit
1200
2400
3800
41,500
52,500
64,000
76,000
88,000
910,000
1013,000
1116,000
1220,000
1325,000
1430,000

Your current tier and daily limit are shown in Settings → Email Domains.

Impact on launch by audience size

Audience sizeEffect at launch
Under 200 usersFull audience reached on day one
200–2,000 usersDelivery spreads over several days
2,000+ usersDelivery spreads over 1–2 weeks

Launch your first campaign as soon as DNS verification completes. The sooner you start sending, the sooner your domain advances through tiers and reaches full daily capacity.

Limitations

  • One domain per project: You can only have one sending domain per Adapty project. To switch to a different domain, contact support — the dashboard has no “change domain” action.
  • Cross-project uniqueness: A domain already registered to another project can’t be reused. If you see “Domain is already registered to another project”, pick a different domain or reach out to support.
  • Verified domains can’t be deleted: Once any subdomain reaches Success, the dashboard blocks deletion. Pending domains can be deleted, but you still need to remove the DNS records manually from your registrar.
  • Fixed subdomain prefixes: mail., email., and the hello. Mail-From prefix are hardcoded — they can’t be customized. If those subdomains are already in use in your DNS, setup will conflict.
  • Apex domains only: Subdomain inputs, trailing dots, and single-label hostnames are rejected.
  • No internationalized domains: Punycode and IDN aren’t supported. The domain must be ASCII-only.

Troubleshooting

IssueSolution
”Enter a valid domain (e.g. example.com)“Check the input: apex only, ASCII only, TLD of 2+ characters, no leading or trailing hyphens.
”Domain does not have valid DNS records”The apex domain itself must resolve. Confirm your NS records are active before retrying.
”Domain is already registered to another project”Pick a different domain, or contact support if you believe the registration is a mistake.
”Verification check is on cooldown”Wait 60 seconds between manual checks. Automatic polling continues in the background.
Verification stuck on PendingCheck that DNS records match exactly — no trailing dots, correct CNAME targets. DNS can take up to 48 hours to propagate.
”Cannot delete domain: one or more identities have been successfully verified”A verified domain can’t be removed from the dashboard. Contact support for assistance.
Emails going to spamConfirm your DMARC record is published. New domains need warm-up time — review Domain warm-up.
High bounce rateVerify your audience list contains valid, opted-in addresses. Bounces slow or pause tier advancement.