> For the complete documentation index, see [llms.txt](https://docs.yeymail.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.yeymail.com/using-yeymail/custom-domains/namecheap.md).

# Namecheap

Namecheap has two things that catch people out: the mail settings are a single dropdown where only one option can win, and saving a record takes two clicks in two different places.

## First, check which DNS you are on

The **Advanced DNS** tab will happily accept records that are never served. It only controls your domain if you are on Namecheap's own registrar nameservers.

Look at **Manage → Domain → NAMESERVERS**, or run an NS lookup. You want to see `registrar-servers.com`:

| Nameservers                                      | What to do                                                  |
| ------------------------------------------------ | ----------------------------------------------------------- |
| `dns1/dns2.registrar-servers.com` (BasicDNS)     | Follow this guide                                           |
| `pdns1/pdns2.registrar-servers.com` (PremiumDNS) | Follow this guide                                           |
| `freedns1–5.registrar-servers.com` (FreeDNS)     | Follow this guide                                           |
| `dns1/dns2.namecheaphosting.com`                 | **Stop.** Your DNS is in cPanel (see below)                 |
| Anything else                                    | **Stop.** Add the records at whoever runs those nameservers |

If you are on `namecheaphosting.com`, your zone lives in **cPanel → Zone Editor**, and you must also set **Email → Email Routing** to **Remote Mail Exchanger**. Left on *Local*, the server keeps your domain's mail itself and ignores your MX records completely: perfect DNS, nothing delivered.

Note that switching nameservers back to BasicDNS **overwrites your existing DNS records**. Do not do it casually to follow this guide.

## Switch mail settings to Custom MX

1. **Domain List → Manage → Advanced DNS**.
2. Find the **MAIL SETTINGS** section and open the dropdown.
3. Choose **Custom MX**.

This is one dropdown with one winner. Left on **Email Forwarding**, Namecheap keeps writing its own MX records for your domain, and yours never take effect.

Two options to avoid:

* **MXE record** sends mail to a bare IP address. We are addressed by hostname and our addresses can change, so an MXE pin breaks the moment we renumber.
* **Gmail** is currently broken by Namecheap's own admission; their docs tell you to use Custom MX instead.

Any preset you click rewrites your MX records when you save, so do not try them "just to see".

## Add the records

In the **HOST RECORDS** section:

1. Delete every existing MX row with the bin icon. If the domain was on Email Forwarding or Private Email, Namecheap wrote its own and they must go.
2. Select **ADD NEW RECORD** and fill the row from your domain's DNS tab in YeyMail:
   * **Type**: `MX Record`, or `TXT Record` for SPF, DKIM and DMARC
   * **Host**: `@` for the root domain, `_dmarc` for DMARC, `default._domainkey` for DKIM. **Never include your domain in this field**. Namecheap appends it, so typing `default._domainkey.example.com` creates a record at `default._domainkey.example.com.example.com` and DKIM silently finds nothing.
   * **Value**: the mail server hostname or the TXT value, on its own
   * **Priority**: MX only, its own column. Do not put the number in Value.
   * **TTL**: `Automatic`
3. **Click the green tick** at the end of the row. A row still in edit mode is not saved.
4. Repeat for every record, including both MX rows: `mx1` at priority 10 and `mx2` at priority 20.
5. **Click Save all changes.** Nothing is live until you do.

Both clicks matter. The usual failure is one MX saved instead of two, which works fine until the first one is briefly unreachable.

Namecheap adds the trailing dot to mail server names for you, so you do not need to type one.

## Two more places to check

**Manage → Domain → REDIRECT EMAIL.** Delete every forwarder and catch-all row here. Leftover forwarders are the most common reason a domain looks correct in DNS and still loses mail.

**Only one `v=spf1` record.** The SPF record Namecheap creates for its free email forwarding cannot be deleted while forwarding is on, and can survive the switch to Custom MX. Two SPF records is a permanent failure that breaks authentication for mail you send, with nothing shown in the UI. Re-open **Host Records** afterwards and confirm exactly one TXT row on `@` starts with `v=spf1`.

**No CNAME on the bare domain.** A CNAME on `@` outranks MX and mail stops. This catches people who pointed their root domain at a site builder. Replace it with an A or ALIAS record.

## Check it worked

Namecheap says host records take about 30 minutes, and the default TTL is 30 minutes. Change nothing while you wait. Clicking other mail presets to "fix" it is how zones get broken.

Then press **Verify records** on the domain's DNS tab. We also re-check on our own and email you when everything passes. An external MX lookup should return both of our hostnames.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.yeymail.com/using-yeymail/custom-domains/namecheap.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
