Email DNS records: MX, SPF, DKIM and DMARC
Add the four records that make mail arrive and keep it out of spam, at BigRock, GoDaddy, Hostinger or Cloudflare, and check them.
On this page
Four DNS records connect your domain to FiniteHost email. MX tells the world where to deliver your mail. SPF, DKIM and DMARC prove that mail sent from your domain really comes from you, which keeps it out of spam folders. This guide explains each record, shows how to add them at the common registrars, and how to check that they work.
Before you start#
- Create at least one mailbox on the domain first (Email accounts). The DKIM key is generated for your domain when its first mailbox is set up.
- Know where your domain's DNS is managed. Usually that is the registrar where you bought the domain (BigRock, GoDaddy, Hostinger and so on). If you moved your nameservers to Cloudflare, add the records at Cloudflare instead.
- Open the panel in another tab on Email → Email accounts (the Mail DNS for … card) or, on web plans, Domains & DNS. Every value has a copy button. Copy, never retype.
The four records#
For the demo domain acme.in, the panel shows:
| Name | Type | Value |
|---|---|---|
acme.in | MX | 10 mx1.finitehost.com |
acme.in | TXT | v=spf1 include:_spf.finitehost.com -all |
fh1._domainkey.acme.in | TXT | v=DKIM1; k=rsa; p=MIIBIjANBgkqh… (long, unique to your domain) |
_dmarc.acme.in | TXT | v=DMARC1; p=quarantine |
What each record does#
- MX (mail exchanger). "Mail for
acme.ingoes tomx1.finitehost.com." Without it, no mail reaches your mailboxes. The10is the priority; with one MX record it does not matter, but most DNS panels ask for it in a separate Priority box. - SPF (Sender Policy Framework). A TXT record that lists the servers allowed to send mail as
@acme.in.include:_spf.finitehost.comallows the FiniteHost mail server;-allsays "reject everything else". - DKIM (DomainKeys Identified Mail). The FiniteHost server signs every message you send with a private key. This TXT record publishes the matching public key under the name
fh1._domainkey, so receivers can check that the message was not changed and really came from your domain. - DMARC. Tells receivers what to do when a message claims to be from
acme.inbut fails SPF and DKIM.p=quarantinemeans "put it in spam". This protects your customers from people who forge your address.
Name or host: full name or short name?#
DNS panels differ in what they want in the Name (or Host) box:
| Record | Short form (most registrars) | Full form |
|---|---|---|
| MX and SPF | @ (or leave blank) | acme.in |
| DKIM | fh1._domainkey | fh1._domainkey.acme.in |
| DMARC | _dmarc | _dmarc.acme.in |
@ means "the domain itself". If you type the full form into a panel that adds the domain automatically, you get fh1._domainkey.acme.in.acme.in, which does not work. After saving, look at how the panel displays the record; if your domain appears twice, edit it to the short form.
Add the records: general steps#
These steps are the same everywhere; only the menu names differ.
- Sign in to your registrar or DNS provider and open the domain's DNS (also called DNS Management, Manage DNS or DNS zone).
- Remove old MX records that point to another provider. Keep only one MX record, the FiniteHost one.
- Add the MX record: Type
MX, Name@, Value or Mail servermx1.finitehost.com, Priority10. Some panels want a trailing dot:mx1.finitehost.com.is the same thing. - Add or edit the SPF record: Type
TXT, Name@, Valuev=spf1 include:_spf.finitehost.com -all. If a TXT record starting withv=spf1already exists, edit that one instead of adding a second (see the note below). - Add the DKIM record: Type
TXT, Namefh1._domainkey, Value: paste the whole DKIM value from the panel. - Add the DMARC record: Type
TXT, Name_dmarc, Valuev=DMARC1; p=quarantine. If a_dmarcrecord already exists, replace its value. - Leave TTL at its default (often 1 hour, or "Auto").
- Save. Changes usually show up within minutes to an hour, and occasionally take up to 24 hours.
BigRock#
- Sign in to BigRock and open Domains → your domain → Manage.
- Open DNS Management (it may ask you to activate the DNS service once).
- Use the MX Records tab for the MX record: Zone/Host left empty or
@, Valuemx1.finitehost.com, Priority10. Delete other MX entries. - Use the TXT Records tab three times: SPF with Host empty or
@, DKIM with Hostfh1._domainkey, DMARC with Host_dmarc.
GoDaddy#
- Sign in, open My Products → your domain → DNS (or Manage DNS).
- Click Add New Record. Choose MX, Name
@, Valuemx1.finitehost.com, Priority10. Delete GoDaddy's own MX records if present. - Add three TXT records: Name
@(SPF), Namefh1._domainkey(DKIM), Name_dmarc(DMARC). - If GoDaddy already shows a
_dmarcrecord, edit it rather than adding a second.
Hostinger#
- Open hPanel → Domains → your domain → DNS / Nameservers (DNS records).
- Delete existing MX records that point to Hostinger mail.
- Add an MX record: Name
@, Points tomx1.finitehost.com, Priority10. - Add three TXT records with Names
@,fh1._domainkeyand_dmarc. If an SPF record for Hostinger mail exists, replace its value with the FiniteHost one (unless you still send through Hostinger, in which case merge).
Cloudflare#
- Open your domain in the Cloudflare dashboard → DNS → Records.
- Add record → Type MX, Name
@, Mail servermx1.finitehost.com, Priority10. - Add three TXT records: Name
@(SPF),fh1._domainkey(DKIM),_dmarc(DMARC). Paste the DKIM value in one piece; Cloudflare stores long values correctly. - MX and TXT records cannot be proxied, so there is no orange cloud to switch off for them.
Check the records#
From the command line#
On Windows, open Command Prompt; on Mac or Linux, open Terminal. Replace acme.in with your domain.
nslookup -type=mx acme.in
nslookup -type=txt acme.in
nslookup -type=txt fh1._domainkey.acme.in
nslookup -type=txt _dmarc.acme.inOn Mac and Linux dig gives shorter answers:
dig +short MX acme.in
dig +short TXT acme.in
dig +short TXT fh1._domainkey.acme.in
dig +short TXT _dmarc.acme.inWhat you should see:
| Query | Expected answer |
|---|---|
| MX | 10 mx1.finitehost.com. and nothing else |
| TXT on the domain | one line starting v=spf1 include:_spf.finitehost.com (other TXT records such as site verifications are fine) |
TXT on fh1._domainkey | v=DKIM1; k=rsa; p=… matching the panel (it may print as two quoted pieces) |
TXT on _dmarc | v=DMARC1; p=quarantine |
To ask a specific public resolver and skip your computer's cache, add it at the end: nslookup -type=mx acme.in 1.1.1.1.
With a test message#
- Send a short message from your FiniteHost mailbox to a Gmail address you own.
- In Gmail, open it, click the three-dot menu → Show original.
- At the top, Gmail lists SPF, DKIM and DMARC. All three should say PASS, and DKIM should mention
acme.in.
More ways to check, including a full header analysis: Keep your mail out of spam.
Troubleshooting#
| Problem | Cause and fix |
|---|---|
nslookup shows the old MX or no MX | The change has not reached your resolver yet, or it was saved on a DNS provider your domain does not use. Check the domain's nameservers at your registrar. |
| Two MX records, one FiniteHost and one old | Some mail still goes to the old provider. Delete the old MX record. |
SPF shows two v=spf1 lines | Merge them into one record (see the warning above). |
| DKIM lookup returns nothing | Check the Name. It must be fh1._domainkey (with the dot and underscore). Make sure the panel shows the domain only once in the full name. |
| DKIM is "fail" in a test message | The value was cut or has extra spaces or quote marks inside it. Delete the record and paste the value again from the panel. |
| The panel's DKIM value says "(appears after the first mailbox is set up)" | Create a mailbox on the domain, wait two minutes and reload. |
| DMARC fails | DMARC passes only when SPF or DKIM passes for your own domain. Fix the SPF or DKIM record first. Mail sent by another service (a newsletter tool, a website plugin) fails DMARC unless that service is set up for your domain too. |
See also Check your DNS for general DNS checks.
What's next#
Was this helpful?
Still stuck?
Email support@finitehost.com with your subscription ID (it starts with t, shown on the panel's Dashboard) and what you tried. A person replies, usually within one business day.
Last updated 27 October 2026. Found something wrong? Tell support@finitehost.com.