NexlyFlow
  • Data
  • How it works
  • Contact
  • Compliance
  • FAQ
  • Pricing
Log in Get Started Free
  • Data
  • How it works
  • Contact
  • Compliance
  • FAQ
  • Pricing
Log in Get Started Free
NexlyFlowNexlyFlow
DataHow it worksComplianceFAQPricingHelpContact
Log inStart Free Trial
Privacy PolicyTerms of ServiceRefund PolicyContactHelp Center

Popular:
Help Center / Sending Setup / Verify SPF, DKIM and DMARC

Verify SPF, DKIM and DMARC

12 steps · About 20 minutes, plus DNS waiting time

What you will finish with. All three domain checks green in NexlyFlow, the single biggest factor in whether your emails reach the inbox instead of the spam folder.

Who this is for. Anyone sending from their own domain – do this before your first real campaign.

Before you start: finish SMTP setup first, and make sure you can log in wherever your domain DNS is managed.

The three records in plain words

SPF lists which servers may send email using your domain. Without it, anyone can pretend to be you, so receiving servers distrust your mail.

DKIM adds an invisible signature to every message. The receiver checks it against your DNS to confirm the message really came from you and was not altered.

DMARC tells receivers what to do when SPF or DKIM fails, and asks them to report it to you.

1Confirm which domain you send from

Look at the From email you saved in Sending Setup. The part after the @ is the domain you must verify. If you send from more than one domain, repeat this guide for each.

Why this matters. Records added to the wrong domain do nothing at all – the most common wasted hour in email setup.

Expected result. You have the exact domain written down, without www and without the @.

If it fails. If your From email uses a subdomain, that subdomain is what you verify.

2Open your DNS management page

Log in to whoever manages your domain – usually the registrar you bought it from, or your hosting provider. Find the section called DNS, DNS Zone, Name servers or Advanced DNS.

Where is my DNS page?

DNS lives wherever you BOUGHT the domain (or wherever its name servers point). Click your company for the exact clicks.

GoDaddy

Where to find it: Log in → My Products → find your domain → DNS → Manage Zones. Click Add New Record to create each record.

Record type fieldshown as Type – choose TXT
Name fieldGoDaddy calls it Host. For the domain root type @
Value fieldGoDaddy calls it TXT Value – paste the value here
TTLleave the default (1 hour)

GoDaddy sometimes shows an existing SPF record already. Edit that one instead of adding a second – a domain may only have ONE SPF record.

Namecheap

Where to find it: Log in → Domain List → Manage → Advanced DNS → Add New Record.

Record typeTXT Record
Host@ for the domain root, or _dmarc for DMARC
Valuepaste the value from NexlyFlow
TTLAutomatic
Cloudflare

Where to find it: Log in → select your domain → DNS → Records → Add record.

TypeTXT
Name@ for the root, _dmarc for DMARC
Contentpaste the value
Proxy statusnot applicable to TXT records

If your DKIM record is a CNAME, make sure the orange proxy cloud is OFF for it.

Hostinger

Where to find it: hPanel → Domains → your domain → DNS / Name Servers → Manage DNS records.

TypeTXT
Name@ for the root, _dmarc for DMARC
TXT valuepaste the value
TTL14400 default is fine
Squarespace, Wix, Shopify or another builder

Where to find it: Look for Domains → your domain → DNS settings / Advanced DNS. The wording differs but the three fields are always Type, Name/Host, and Value.

TypeTXT
Name / Host@ or _dmarc
Value / Contentpaste the value

Some builders manage email for you and hide DNS. If you cannot find a DNS page, ask their support to add the records you copied from NexlyFlow.

Not sure who holds your domain? Search for a WHOIS lookup and enter your domain – the registrar name is shown there.

How to know you are in the right place

You are on the correct page when you can see a list of existing records with a column called Type showing letters like A, MX, TXT or CNAME, and a button that says Add, Add record or Add New Record.

If instead you see prices, renewal dates or a shopping cart, you are still in the billing area – look for the words DNS, Manage DNS, DNS Zone or Advanced DNS.

The three fields have different names at different companies, but they always mean the same thing:

What we call itWhat your provider may call it
TypeType, Record type
NameName, Host, Hostname, Record name
ValueValue, Content, TXT Value, Data, Points to

Why this matters. This is the only place the internet reads your domain settings from; NexlyFlow cannot change them for you.

Expected result. You can see a list of existing records with types like A, MX, TXT and CNAME.

If it fails. If your domain uses third-party name servers, records must be added there, not at the registrar.

3Get the records from NexlyFlow

In the app open Sending Setup and click Check domain. The result panel lists SPF, DKIM and DMARC with their current status and what still needs to be added.

Why this matters. The values are generated for your account and mailbox – copying values from a blog post or another company will always fail.

Expected result. You can see which of the three are missing or failing.

If it fails. If the panel shows nothing, save your SMTP settings first – the check needs to know your sending domain.

4Add the SPF record

Add a TXT record for your domain root. Paste the value exactly as NexlyFlow shows it, with no extra spaces or quotes.

Your domain provider · DNS records
TypeName / HostValue
1TXT@ (domain root)the SPF value shown in Check domain
Adding SPF at your domain provider. Name is the domain root – putting the full domain here twice is a common mistake.

What exactly goes in the SPF value?

SPF lists who may send email using your domain, so it must include whoever hosts your mailbox. Pick the line that matches your provider:

Google Workspacev=spf1 include:_spf.google.com ~all
Microsoft 365 / Outlookv=spf1 include:spf.protection.outlook.com ~all
Zoho Mailv=spf1 include:zoho.com ~all
Yahoov=spf1 include:spf.mail.yahoo.com ~all
GoDaddy classic emailv=spf1 include:secureserver.net ~all
Hostinger / most web hostsv=spf1 include:_spf.mail.hostinger.com ~all

Already have an SPF record? Do not add a second one. Merge them: keep one v=spf1 at the start, list every include one after another, and finish with ~all. Example of a merged record: v=spf1 include:_spf.google.com include:_spf.mail.hostinger.com ~all

Your own provider may publish a slightly different include – if NexlyFlow shows you a value in Check domain, that value wins over this table.

Your domain provider · Add new record · SPF
1
Type
TXT
2
Name / Host
@
3
Value / Content
v=spf1 include:_spf.google.com ~all  (use the line for YOUR mail provider)
4
TTL
leave the default

This is exactly what the form should look like before you press Save. Field 2 is a single @ character – it means “the domain itself”.

Why this matters. SPF authorises your sending server. Without it most receivers treat your mail as suspicious no matter how good the content is.

Expected result. The record appears in your DNS list.

If it fails. Never create a SECOND SPF record – a domain may have only one. If one exists, merge the new part into it.

5Add the DKIM record

Add the DKIM record exactly as shown – the name usually looks like a selector followed by _domainkey. Copy the whole value; DKIM values are long and are often truncated by accident.

Your domain provider · DNS records
TypeName / HostValue
1TXT / CNAMEselector._domainkeythe FULL DKIM value – long, copy all of it
DKIM values are long. If the saved value looks shorter than what NexlyFlow shows, it was truncated on paste.
Your domain provider · Add new record · DKIM
1
Type
TXT (or CNAME if your provider gave you a CNAME)
2
Name / Host
the selector NexlyFlow shows, for example google._domainkey

3
Value / Content
the long key from your provider – paste ALL of it, it can be 400 characters

4
TTL
leave the default

DKIM is the record people get wrong most often, because the value is long and half of it gets lost when pasting. Paste, save, then re-open the record and check the end of the value is still there.

Why this matters. DKIM proves the message was not tampered with. It is the record that most often fails because only half the value was pasted.

Expected result. The record appears with the full value intact.

If it fails. If your DNS panel adds quotes automatically, do not add your own. If the saved value looks shorter than what NexlyFlow shows, paste it again.

6Add the DMARC record

Add a TXT record named _dmarc. Start with a monitoring-only policy so nothing is rejected while you confirm everything works, and include an address for reports.

Your domain provider · DNS records
TypeName / HostValue
1TXT_dmarcv=DMARC1; p=none; rua=mailto:your@address
Start at p=none so nothing is rejected while you confirm SPF and DKIM are working.

A safe DMARC record you can copy

Create a TXT record named _dmarc and paste this as the value. Replace the address with your own before saving.

v=DMARC1; p=none; rua=mailto:you@yourcompany.com

What it means in plain words: p=none tells receiving mail servers “just watch and report, do not block anything yet”. That is the safe starting point. Weeks later, once reports look clean, you can tighten it to quarantine.

Your domain provider · Add new record · DMARC
1
Type
TXT
2
Name / Host
_dmarc
3
Value / Content
v=DMARC1; p=none; rua=mailto:you@yourcompany.com
4
TTL
leave the default

Change the email address to yours before saving. The name field is exactly _dmarc – with the underscore, and nothing else after it.

Why this matters. DMARC turns SPF and DKIM into an enforceable policy and gives you visibility. Starting at p=none means you learn without risking legitimate mail.

Expected result. The _dmarc record appears in your DNS list.

If it fails. Only one DMARC record per domain. Tighten the policy weeks later, after clean reports – never on day one.

7Save your DNS changes

Click save or apply in your DNS panel. Some providers need an extra confirmation before records go live.

Why this matters. Unsaved records are invisible to the internet, producing a confusing “nothing changed” result later.

Expected result. Each new record is visible in the record list after a refresh.

If it fails. If the panel rejects a value, check for a stray space at the start or end of what you pasted.

8Wait for DNS to spread

DNS changes are copied between servers worldwide on a schedule. Allow at least 15-30 minutes; some providers take up to 24-48 hours.

Why this matters. Checking too early gives a red result that is not a real failure – which leads people to change correct records and break them.

Expected result. Time passes. This step is deliberately doing nothing.

If it fails. If you are impatient, re-check every 15 minutes rather than editing records repeatedly.

9Return to NexlyFlow and re-check

Open Sending Setup and click Check domain again.

nexlyflow.com/app
NexlyFlow
Find Leads
Contacts
Campaigns
Email Templates
Pipeline
Sending Setup
Billing & Credits
Sending Setup / Domain check
1SPFauthorised sender list
2DKIMmessage signature
3DMARCpolicy and reports
4⟶Check domain
✓ SPF, DKIM and DMARC verified
⚠ DKIM not found – DNS may still be spreading
Check domain reads live DNS, so it shows exactly what receiving mail servers see.

Why this matters. This reads live DNS, so it reflects exactly what receiving mail servers see.

Expected result. SPF, DKIM and DMARC each show a passing status and your domain score rises.

If it fails. A single red item does not block sending, but each one lowers inbox placement – fix it before volume sending.

10Read the result line by line

Look at each of the three lines separately. A failure on one record tells you exactly which record to revisit – you do not need to redo the whole guide.

Why this matters. Treating the result as one pass-or-fail hides which record is wrong and costs another DNS wait cycle.

Expected result. You know precisely which record, if any, still needs work.

If it fails. If the panel still shows an old result, refresh the page – the check runs when you click it.

11Fix a failing record

SPF failing usually means a duplicate SPF record. DKIM failing usually means a truncated value. DMARC failing usually means the record is not named _dmarc. Fix, save, wait, re-check.

The five mistakes that cause almost every failure

1Typing your domain in the Name field instead of @. Most providers add your domain automatically. Typing it again creates a record for yourcompany.com.yourcompany.com, which does nothing.
2Creating a second SPF record. A domain may have only ONE. If a v=spf1 record already exists, edit it and add the new include inside it.
3A truncated DKIM value. The value is very long. After saving, re-open the record and confirm the last characters match what you copied.
4Adding quotes yourself. Some panels add the quotation marks automatically. If you also type them, the record becomes invalid.
5Checking too soon. DNS changes take from a few minutes up to 48 hours to spread. A red result in the first hour usually just means “not yet”.

Why this matters. Each record fails for its own characteristic reason, so targeted fixes are much faster than starting over.

Expected result. After the next DNS wait, the failing line turns green.

If it fails. Still failing after 48 hours? Send us the exact wording in the panel and we will read it with you.

12Protect your domain going forward

Keep using your verified sending domain for outreach and avoid sudden volume jumps from a brand-new mailbox. Start small and increase gradually week by week.

Why this matters. Domain reputation is earned slowly and lost quickly; one aggressive first week can undo a perfect DNS setup.

Expected result. Your checks stay green and inbox placement holds as volume grows.

If it fails. If results drop, reduce daily volume, send only to engaged contacts, and let reputation recover before scaling again.

← Previous: Set up SMTPHelp Center →
Still need help?

Send us a screenshot of your Check domain panel and your DNS record list. Contact support.

SPF and DKIM values by provider (verified 2026-08)

Pick your email provider and use these exact values
Google Workspace (Gmail)
SPF value: v=spf1 include:_spf.google.com ~all
DKIM: admin.google.com → Apps → Google Workspace → Gmail → Authenticate email → choose the domain → GENERATE NEW RECORD (2048-bit, prefix google) → publish the TXT it shows at Name google._domainkey → back on that page click START AUTHENTICATION.
Microsoft 365 / Outlook
SPF value: v=spf1 include:spf.protection.outlook.com ~all
DKIM: security.microsoft.com → Email & collaboration → Policies & rules → Threat policies → Email authentication settings → DKIM → click the domain → switch Sign messages ON. It refuses the first time and shows TWO CNAME records (selector1._domainkey and selector2._domainkey) — publish both, then switch ON again.
Microsoft 365 from GoDaddy / GoDaddy Professional Email
SPF value: v=spf1 include:secureserver.net ~all
DKIM: godaddy.com → My Products → Email & Office → Manage → your domain. If GoDaddy also hosts your DNS it publishes DKIM for you. If your DNS is elsewhere, enable DKIM at security.microsoft.com instead and publish the two CNAMEs yourself.
Zoho Mail
SPF value: v=spf1 include:zoho.com ~all
DKIM: mailadmin.zoho.com (or zoho.eu / zoho.com.cn for your region) → Domains → your domain → Email Configuration → DKIM → Add selector (name it zoho) → publish the TXT at Name zoho._domainkey → press Verify.
Tencent Exmail (腾讯企业邮)
SPF value: v=spf1 include:spf.mail.qq.com ~all
DKIM: exmail.qq.com admin console (or work.weixin.qq.com if your mail moved to WeCom) → old console: 工具箱 / 域名管理 → DKIM; WeCom console: 协作 → 邮件 → 设置 → DKIM验证 → 配置. Publish the TXT it shows, then click 已完成配置,立即验证.
Alibaba Mail (阿里企业邮箱)
SPF value: v=spf1 include:spf.mxhichina.com ~all
DKIM: Mail admin console → 域名管理 → your domain → 域名设置 → DKIM → 生成密钥 (2048) → publish 主机记录 + 记录值 as TXT → verify. Newer accounts use include:spf.qiye.aliyun.com — always trust the value your own console shows.
NetEase Enterprise Mail (网易企业邮)
SPF value: v=spf1 include:spf.163.com ~all
DKIM: qiye.163.com admin console (free edition: ym.163.com) → 域名管理 → your domain → DKIM / 安全设置 → generate → publish the TXT it shows → verify.
Web host / cPanel (Hostinger, Namecheap hosting…)
SPF value: v=spf1 a mx ~all
DKIM: cPanel / hPanel → Email Deliverability → your domain → MANAGE (or Repair). If DNS is at the same company press INSTALL THE SUGGESTED RECORD and it publishes SPF and DKIM for you; otherwise copy the DKIM record shown (usually default._domainkey) to wherever your DNS lives.
Three rules that break SPF silently
One SPF record only. If a record already exists, add the include: part into it. Two records = SPF fails completely.
Ten lookups maximum. Every include: counts. Mailbox provider plus a marketing tool plus a CRM will hit the ceiling and SPF stops working — keep the list short.
~all first, -all later. ~all is soft-fail and safe to start with. Only switch to -all after weeks of clean DMARC reports.
DMARC starter record
Type TXT · Name _dmarc · Value v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com
p=none only collects reports and changes nothing about delivery. Move to p=quarantine once the reports look clean.
The rua address must be a real mailbox you can open, otherwise the reports are lost.
Where to paste records at 13 common providers
GoDaddy: My Products → your domain → DNS → Add record
Namecheap: Domain List → Manage → Advanced DNS → Add New Record
Cloudflare: your domain → DNS → Records → Add record (Proxy status = DNS only)
Hostinger: hPanel → Domains → Manage → DNS / Nameservers
Alibaba Cloud: Domain console → DNS Settings → Add Record
Tencent Cloud / DNSPod: My Domains → Resolve → Add Record
Wix: Settings → Domains → your domain → Advanced → Edit DNS records (only when connected by nameservers)
Squarespace (incl. old Google Domains): Settings → Domains → DNS → DNS Settings
Shopify: Settings → Domains → Domain settings → Edit DNS settings
IONOS: Domains & SSL → the domain → DNS → Add record
Bluehost / HostGator: Domains → your domain → DNS → Add record
AWS Route 53: Hosted zones → your domain → Create record
Porkbun / Dynadot / Name.com: open the domain → DNS records → add record
If your nameservers point somewhere else (for example Cloudflare), add the records THERE, not at the company you bought the domain from.
NexlyFlow

NexlyFlow Pte. Ltd.
UEN 202632611H
68 Circular Road, #02-01, Singapore 049422

B2B outreach, built on comprehensive, up-to-date business data.

Product

Lead LibraryContactOutreach EngineComplianceHelp Center

Company

Privacy PolicyTerms of ServiceRefund PolicyEmail: info@nexlyflow.comHotline: +65 9888 6988
© 2026 NexlyFlow Pte. Ltd. All rights reserved.
Contains information from ACRA datasets accessed via data.gov.sg under the Singapore Open Data Licence v1.0. NexlyFlow Pte Ltd is not affiliated with, or endorsed by, ACRA or the Singapore Government.
NexlyFlow

One platform. Every channel. Smarter growth.

Product

  • Features
  • Pricing
  • Integrations
  • Changelog

Solutions

  • B2B SaaS
  • E-commerce
  • Agencies
  • Enterprise

Company

  • About
  • Blog
  • Careers
  • Contact

Nexly AI Lead Generation System

Privacy Policy Terms of Service Refund Policy Cookie Policy