JustEmails
PricingSign inStart free trialStart free
Guides··13 min read

Email for Your Own Domain: The Complete Setup, Start to Finish

A start-to-finish walkthrough for setting up email on a domain you already own — the records, the mailboxes, the client settings, the old mail, and what week one actually looks like.

By JustEmails Platform Team
Contents
  1. What a complete email setup on your own domain involves
  2. Step 1 — Decide where the mail lives
  3. Step 2 — Add the domain and publish the records
  4. Step 3 — Create the addresses
  5. Step 4 — Connect a client
  6. Step 5 — Bring the old mail across
  7. What week one actually looks like
  8. Month two, when you've forgotten all of this
  9. Frequently Asked Questions
  10. Can I set up email for my domain without a website?
  11. What's the difference between a mailbox, an alias, and a catch-all?
  12. How do I move my existing email to a new domain host without losing anything?
  13. How long does it take before email for my domain works?
  14. Where to go next
  15. Try JustEmails

The moment usually arrives on a phone call. Someone asks for your address, you get three syllables into your own domain name, and then you have to finish the sentence with "at gmail dot com." Small pause on the other end. Nothing bad happens. It just lands differently than it would have.

So you go looking for how to run email on the domain you already pay for, and find forty tutorials that each cover a third of the job.

This is the whole job. Records, mailboxes, client settings, moving the old mail across, and the part nobody writes about — what the first two weeks feel like. We build JustEmails at Velocity Digital Labs, so the settings below are ours; the structure is identical wherever you land.

What a complete email setup on your own domain involves

Four things get mashed together in most guides. Your registrar sold you the domain. Your DNS host answers questions about it — often the registrar, often Cloudflare. Your mail host is where the mailbox lives. Your client is Gmail or Apple Mail or Thunderbird. All four can be different companies, which is why "my domain is at Namecheap" tells you nothing about where the email should go.

The records split into two jobs:

  • MX tells the world where to deliver mail addressed to you. Without it, incoming mail bounces.
  • SPF, DKIM and DMARC tell receivers whether mail claiming to be from you is real. Without them, outgoing mail lands in spam or gets rejected outright.

One is about arriving, one about being believed. People set up the first, skip the second, then spend a month wondering why their invoices keep landing in junk.

Step 1 — Decide where the mail lives

Two pricing shapes exist and they diverge fast.

Per-user hosts charge for each person. Google Workspace Business Starter and Microsoft 365 Business Basic both list at $7.00 per user per month as of September 2026 (Microsoft's went up from $6.00 on 1 July, so plenty of pages still quote the old number). Check the vendor's own pricing page, not a blog post, ours included.

Flat-rate hosts charge for the account and stop counting. JustEmails is one plan, billed annually: $49 a year, flat, for unlimited custom domains and unlimited mailboxes with a unified inbox across all of them — additional team members are $2 per member per month, and storage beyond the included 10 GB is $99 a year per 100 GB.

Honest version: if you're one person on one domain who already wants Docs and Drive, Workspace bundles an office suite we do not. Flat-rate hosting starts winning at the second domain, or the third person, or the first API key — not before.

Worth weighing today rather than in month four: whether your app will eventually send mail too. Most hosts do mailboxes or transactional sending, not both, and discovering that late means two vendors — see running mailboxes and an API on a single host.

Step 2 — Add the domain and publish the records

DNS panel in one tab, mail host in the other. Add the domain at the host and it hands you records to publish.

MX. One record, priority 10:

Type  Host  Priority  Value
MX    @     10        mail1.justemails.app

If a guide gives you a second "backup" MX at priority 20, check something real answers there. A backup MX pointing at nothing is a documented route for spam to walk in.

Moving from another provider with mail you want to keep? Read Step 5 before you change MX — the import comes first.

Delete the old MX records before you finish. Leaving a previous provider's MX beside the new one sends some mail to the dead inbox and some to the live one, intermittently, and it takes days to spot. It's the kind of problem that looks exactly like the new host dropping mail, when the old one is still quietly answering half the time.

SPF. One TXT record per domain, always exactly one:

Type  Host  Value
TXT   @     v=spf1 a:mail1.justemails.app ~all

There's no include: in ours, and that detail matters more than it reads. An include: pointing at a hostname with no TXT record authorises zero IP addresses — SPF then fails while your DNS panel shows a flawless-looking record. Already sending through other services? Fold them into this single record instead of adding a second.

DKIM, DMARC and the rest. DKIM signs the message so receivers can tell it wasn't altered in transit; DMARC tells them what to do when SPF or DKIM fail, and where to send reports. The dashboard generates the remaining records for you: DKIM at dkim._domainkey, an ARC key at arc._domainkey, DMARC at _dmarc, a justemails-verify=… TXT at @ that proves the domain is yours, and the MTA-STS pair (a TXT at _mta-sts and a CNAME at mta-sts). The keys and tokens are unique to each domain, so copy them from your dashboard rather than from any guide, this one included. On Cloudflare, one-click connect publishes them for you; at other DNS hosts you paste them in by hand, and the dashboard shows which records are still missing.

One DMARC record only. Registrars often add a default _dmarc record; edit that one rather than adding a second, because domain verification fails when there are two. The record the dashboard suggests uses p=quarantine. If other services already send as your domain and you aren't sure they pass SPF or DKIM, start at p=none with reports going to an address you read, then tighten. Opening with p=reject bounces your own legitimate mail the first time something's misconfigured — the ramp is in going from p=none to p=reject without breaking your email. For the same records written out for Google, Microsoft and Zoho, the full DNS setup guide covers all four.

Step 3 — Create the addresses

A little structure here saves a cleanup later. Mailboxes are real inboxes with passwords. Aliases are extra addresses landing in an existing mailbox. Catch-all sweeps up everything undefined at your domain.

Sane shape for a one-person business: one mailbox at you@yourdomain.com, aliases for hello@, billing@ and support@ pointing into it, catch-all on as a safety net. One password to remember, four addresses on your website.

Two cautions. Catch-all ages badly — once the domain has been scraped a few times, every random string becomes deliverable spam. And aliases aren't forwarding, however alike they look; the difference bites when replies go out from the wrong address, untangled in aliases versus forwarding.

Mailboxes and aliases are unlimited here, and creating one never touches billing. Additional team members — separate people with their own logins — are $2 per member per month, owner free.

Step 4 — Connect a client

Every mainstream client wants the same four facts.

PurposeHostPortSecurity
IMAPmail.justemails.app993SSL/TLS
POP3mail.justemails.app995SSL/TLS
SMTP submissionmail.justemails.app587STARTTLS

Username is the full email address. Password is the mailbox password.

Three things that have each cost somebody an evening:

  • It's mail. — not smtp. or imap.. Those hostnames don't exist here and never did, so they fail at name resolution before TLS starts. You get a silent timeout rather than a useful error.
  • Port 587 with STARTTLS, not 465. 465 is closed on our side. It's a real port at plenty of other providers, which is exactly why so many tutorials confidently tell you to use it.
  • No app-specific passwords to generate. IMAP and SMTP authenticate with the mailbox password itself, and auth is PLAIN or LOGIN — anything defaulting to CRAM-MD5 fails. (App passwords from Google or Zoho are real, but you need them in the other direction, importing old mail from them.)

Max message size is 25 MB. Fine for contracts. Not for the video someone will try to send you.

Step 5 — Bring the old mail across

Order matters, and getting it wrong is the main way people lose messages.

Create the mailboxes at the new host while your MX still points at the old one. Run the import — we have migration tooling for Google Workspace, Zoho and generic IMAP that keeps folders and labels intact. Let it finish. Then switch MX, and only after that delete the old record. In that order there's never a window where mail lands somewhere nobody is reading, and you can abandon the whole thing halfway with no consequences.

Expect a tail. Whatever TTL your old MX carried decides how long stragglers keep hitting the previous host — 24 hours means a full day of split delivery. Lower it a day before you cut over if you can plan that far ahead. Most people can't. Survivable either way.

What week one actually looks like

This is what separates working setups from the ones people give up on.

New sending domains are rate-limited everywhere. Here, a freshly verified domain gets no more than 50 sends a day in its first week, 200 in the second, and up to 500 from day 15. Read those as ceilings, not promises — your actual allowance in the opening days can run lower depending on account history. There's also a ceiling of 100 distinct recipients per hour.

Nothing is broken. You're inside a ramp, and the ramp is what makes the mail deliverable later. Three details worth remembering:

  1. The domain clock starts at verification, not signup. Adding a fifth domain to a two-year-old account restarts warm-up for that domain.
  2. The cap belongs to the account, not the mailbox — ten mailboxes share one daily allowance.
  3. API sends draw on the same number. The plan includes 1,000 transactional emails a month and each $25/year tier adds 10,000 to that monthly quota — but the daily ceiling doesn't move, putting the practical maximum near 15,000 a month. Nine tiers doesn't buy 91,000 deliverable emails. Better known before the invoice than after.

Which settles a question people ask: this isn't a newsletter backend. The SMTP config connects to Listmonk or Mautic happily and then walks into the daily wall. If bulk is the job, use a bulk ESP.

Month two, when you've forgotten all of this

Records get clobbered. A marketing tool rewrites SPF, or the domain moves registrar and the TXT records don't follow. Six months later mail quietly starts failing and nobody connects it to a change made in spring. So we watch verified domains and email you when SPF, DKIM, DMARC or MX drifts — the feature nobody shops for and then won't give up. Same argument our sister product makes about building a status page from uptime data: things that fail silently need something watching them.

Also in the box: MTA-STS and DANE/TLSA, BIMI with VMC, DKIM key rotation, blocklist monitoring across five DNSBLs. The gaps: no calendar, no contacts, no native mobile apps, no SSO or SAML, and sending is from shared infrastructure — dedicated IPs aren't offered. If any of those is load-bearing, buy elsewhere and don't let a $49 price tag talk you out of it.

Frequently Asked Questions

Can I set up email for my domain without a website?

Yes. A website and a mailbox are unrelated — the first uses A or CNAME records, the second uses MX records, and neither needs the other to exist. If you own the domain and can edit its DNS, you can run email on it today with no hosting, no landing page, and no code. Plenty of people register a domain purely for the address.

What's the difference between a mailbox, an alias, and a catch-all?

A mailbox is real storage with its own password and login. An alias is a second address that drops into an existing mailbox — no separate password, no extra storage. A catch-all takes every address at your domain that isn't otherwise defined and funnels it into one inbox, which is handy for a small business and a spam magnet once the domain gets old enough to be scraped. On JustEmails all three are unlimited on the $49/year plan.

How do I move my existing email to a new domain host without losing anything?

Add the domain and create the mailboxes at the new host first, but leave your MX records pointing at the old one. Run an IMAP import to copy the mail across — JustEmails has migration tools for Google Workspace, Zoho and generic IMAP that preserve folders and labels. Only after the copy finishes do you switch MX, and only then do you delete the old record. Sending stops for nobody and no message lands in a mailbox that doesn't exist yet.

How long does it take before email for my domain works?

Hands-on time is roughly 30 minutes. New DNS records usually show within minutes and can take a few hours, and the TTL on your old records decides the tail — a 24-hour TTL means some senders keep using the old MX for a full day. Receiving works almost immediately; sending is throttled for the first couple of weeks while the domain builds a reputation, which is normal at every host.

Where to go next

Before you call it done: send one message out and one in, then read the headers. In Gmail that's three dots → Show original, and you want SPF, DKIM and DMARC all reading PASS. MXToolbox reads your records back in plain English for free and catches the two classic typos — a duplicate SPF record, a missing underscore in _dmarc. If mail is already going astray on a domain you just bought, deliverability after a domain purchase covers the reputation you inherited.

There is a 7-day trial: a card is required, and you aren't charged until it ends. It's enough to prove mail flows, not enough to build an integration against — the trial has no API access, so build against the API on the paid plan. Refunds run 14 days from the first charge.


Try JustEmails

Unlimited custom domain email hosting for $49/year flat — unlimited domains, unlimited mailboxes, 10 GB storage, full IMAP/SMTP. Built for agencies, freelancers, and anyone managing email across more than one domain.

Start your 7-day free trial → · How it compares

email-for-domaincustom-domain-emailmx-recordsemail-migrationimap-smtp-setupbuildinpublicsaasstudioaiworkforcebuildwithclaude

Related posts

Comparisons
Titan Email Alternative Once You Pass a Handful of Mailboxes
10 min read
Comparisons
Amazon SES Alternative: JustEmails API vs SES, Minus the AWS Tax
12 min read
Guides
Namecheap Domain Email Setup: Custom MX Records in 5 Steps
13 min read