Set Up Your First Domain
After installing MarkRelay and signing in, connect a domain so MarkRelay can receive and send its email. It takes about 15 minutes, most of it waiting for Cloudflare.
Before you start
- The domain is in your Cloudflare account, using Cloudflare DNS.
- To send, the account is on the Workers Paid plan, which includes Cloudflare Email Sending.
- You are signed in to MarkRelay as the administrator.
Step 1: Add the domain in MarkRelay
- Open Manage → Domains and select Add domain.
- Enter the domain, such as
example.com(no@orhttps://), and select Create domain.
MarkRelay then shows the Cloudflare steps below. To see them again, open the domain and select Configure.
Step 2: Turn on receiving in Cloudflare
Cloudflare Email Routing delivers the domain's incoming mail to MarkRelay.
- In the Cloudflare dashboard, open Compute → Email Service → Email Routing and onboard the domain. Cloudflare adds the DNS records.
- Go to Routing Rules and edit the Catch-all rule.
- Set the action to Send to a Worker, choose your MarkRelay Worker (
markrelay-mail-appunless you renamed it), and turn the rule on.
The catch-all rule sends every address of the domain to MarkRelay. To route only some addresses, add one rule per address instead.
Step 3: Turn on sending in Cloudflare
Cloudflare Email Sending lets MarkRelay send from the domain. It is included in the Workers Paid plan.
- Open Compute → Email Service → Email Sending and select Onboard Domain.
- Choose the domain and select Done. Cloudflare adds the DNS records.
- Wait until the domain shows as verified, usually 5–15 minutes.
Step 4: Create a mailbox
- In MarkRelay, open the domain and select Add mailbox.
- Enter the Email address, such as
support, and a Display name, such asSupport. - Select Create mailbox.
Step 5: Test it
- From another email account, send a message to
support@example.com. It appears in MarkRelay's Webmail. - Reply from Webmail. The reply arrives in the other account.
Your domain is ready. Add more mailboxes the same way, as you need them.
If something goes wrong
| Problem | What to check |
|---|---|
| Mail does not arrive | The Email Routing rule is on and sends to your MarkRelay Worker, and the mailbox exists. Manage → Logs in MarkRelay shows what was received. |
| Sending fails | The domain is verified under Email Sending in Cloudflare. |
| Replies land in spam | Wait until Email Sending is verified, then see Deliverability. |
Recommended next
Give MarkRelay its own address
Links in invitations and broadcasts use the address you set up MarkRelay on. A shared workers.dev address can hurt deliverability, so use your own, such as mail.example.com:
- In Cloudflare, open your Worker → Settings → Domains & Routes and add a custom domain.
- In MarkRelay, enter it under Manage → Settings → App URL.
Track broadcast delivery
If you send broadcasts, let MarkRelay see whether each email was delivered, bounced, or marked as spam. Do this once per sending domain:
- In Cloudflare, open Compute → Queues and select
markrelay-mail-email-events-queue. - On Subscriptions, select Subscribe to events.
- Choose Email Sending as the source, then the domain.
- Subscribe to
message.delivered,message.deferred,message.bounced,message.failed,message.rejected, andmessage.complained.
Without it, broadcasts still send, but their delivery status stays pending, and spam complaints are not added to suppressions.
Invite your team
Invite people from Manage → Members and give each the mailboxes they work with. See Members & access.