# Add a sending domain

Add your root domain in Cloudflare, then add it in DomainSend. The app writes DNS and routes every address on that domain, including agent mailboxes.

4 min read. HTML: https://domainsend.app/help/add-a-sending-domain/

If your domain is on **Cloudflare**, you can add it as a sending domain without leaving DomainSend. The app talks to your Cloudflare account to onboard the domain for **Email Sending**, write the required **SPF, DKIM, and DMARC** records for you, and set up inbound **Email Routing** so replies land back in your inbox. Once it's verified, you send as any address on that domain — and your recipients see your domain's name, not “DomainSend”.

> **NOTE:** DomainSend can write DNS only after the root domain is an **active zone** on the Cloudflare account you connected in Settings. Adding that zone, and pointing the registrar at Cloudflare’s nameservers, is the one step in the Cloudflare dashboard. A subdomain such as `agents.yourdomain.com` cannot be its own zone on a Free, Pro, or Business account, and it cannot have a catch-all.

## If the domain is not on Cloudflare yet

In **Settings → Sending domains**, choose **Domain not on Cloudflare yet** and copy the prompt. Open the Cloudflare dashboard, open Gemini’s side chat, and paste it. Gemini walks through adding the root domain and waiting until the zone is **Active**. Then return to DomainSend and add the domain. The same prompt is below, with `yourdomain.com` as the placeholder.

```
I am in the Cloudflare dashboard for the account I connected to DomainSend. Guide me click by click. Stop and wait after each screen. Read nameservers off the page. Do not invent them.

Goal: make yourdomain.com an active zone so DomainSend can receive and send mail for every address at that domain, including agent mailboxes such as support@yourdomain.com.

Do not do any of these:
- Do not add a subdomain as its own site. Free, Pro, and Business accounts cannot create a separate zone for a name like agents.yourdomain.com. Add the root domain only: yourdomain.com.
- Do not add MX records.
- Do not create Email Routing rules or a catch-all.
- Do not add a Workers or Pages custom domain.
- Do not change DNS for any other site.

Do this:
1. If yourdomain.com is not already a site in this account, add a site whose hostname is exactly yourdomain.com. Use the Free plan.
2. If the zone is not Active, copy the nameservers Cloudflare shows and tell me to set those at the registrar. Wait until the zone status is Active.
3. Stop when yourdomain.com is Active. Tell me to go back to DomainSend, open Settings, then Sending domains, and add yourdomain.com.

DomainSend then turns on Email Routing, points the catch-all at its Worker, and writes the sending records. I do not configure mail in this dashboard.
```

## Add the domain

1. **Open Sending domains** — In the app, open **Settings** (`⌘` `,`) → **Sending domains**.
2. **Enter your domain** — Under **Add a sending domain**, type your domain, e.g. `yourbrand.com`. DomainSend suggests a title-cased *sender name* from it (so `docu-coach.com` becomes “Docu Coach”). Edit the name if you like — it's what recipients see.
3. **Click Add domain** — DomainSend onboards the domain for Email Sending, and Cloudflare adds the SPF/DKIM/DMARC records automatically. It also enables Email Routing and points the catch-all at the DomainSend worker so replies come back to you.
4. **Watch the status** — The domain shows **Verified** once sending is ready and **Receiving on** once inbound routing is set up. For Cloudflare-hosted domains this is typically instant. If it's still pending, hit **Verify** to re-check.

> **TIP:** The sender name is per-domain and editable. It's the friendly name in the “From” of every message you send from that domain — pick how you want your brand to appear.

## Add sender addresses

Under a verified domain, add the specific addresses you want to send from — `hello@`, `support@`, `you@`, and so on. Each one gets the domain's sender name by default, and you can mark one as your **default**. These are the addresses that appear in the composer's “From” menu.

## Send from your domain

When you compose, pick the sender from the **From** menu at the top of the message. Mail sent from a Cloudflare-provisioned domain goes out through **Cloudflare Email Sending** and arrives showing your domain's name — e.g. “Docu Coach <hello@docu-coach.com>”. No more “DomainSend” in the sender line.

## Receiving replies

Adding the domain sets a catch-all to DomainSend, so every address on that root domain can receive mail. Create `support@yourdomain.com` like any other sender address, then give an agent a key for that mailbox. See [Agent Keys](/help/agent-keys/) and [Instant agent inboxes](/help/agent-inboxes/). You do not add a routing rule per address, and you do not add MX records yourself.

> **WARNING:** Setting up the backend? The worker's Cloudflare API token needs **DNS · Edit**, **Email Sending · Edit**, **Email Routing Rules · Edit**, **Email Routing Addresses · Edit**, and **Zone · Read**. If a permission is missing, adding a domain returns a clear message telling you which one — sending can still succeed even if routing (receiving) isn't authorized yet.

Prefer to wire routing by hand, or sending through a third-party provider? See [Connect Cloudflare Email Routing](/help/connect-cloudflare-email-routing/) and [Sending from your domain](/help/sending-from-your-domain/). If a domain won't verify, check [Troubleshooting](/help/troubleshooting/).