SPF, DKIM and DMARC for Small Business Email: A Setup Guide
If your business emails land in spam, or someone else can send messages that look like they came from your domain, the fix usually starts in your DNS settings. Three records, SPF, DKIM and DMARC, tell receiving mail servers which senders to trust for your domain.
This guide walks through the setup in a safe order. It includes worked examples for Google Workspace and practical notes for Titan Business Email, and it applies to any small business that sends mail from its own domain.
Table of contents
- Quick answer
- What SPF, DKIM and DMARC each do
- Why small senders should care now
- Before you start
- Step 1: Publish your SPF record
- Step 2: Turn on DKIM signing
- Step 3: Add DMARC, starting in monitoring mode
- Test the result
- Common mistakes to avoid
- Titan Business Email or Google Workspace?
- Frequently asked questions
- Key takeaways
- Official references
Quick answer
Publish one SPF record that lists every service allowed to send for your domain, turn on DKIM signing with a key from your email provider, then add a DMARC record that starts at p=none with a reporting address. Confirm your mail passes, review the reports for a few weeks, and only then tighten the policy to quarantine or reject.
What SPF, DKIM and DMARC each do
Each record answers a different question, and all three are published as TXT records in your domain's DNS.
| Record | Question it answers | Where it lives | What it contains |
|---|---|---|---|
| SPF | Is this server allowed to send mail for this domain? | One TXT record at the domain root | A list of approved senders, such as your mailbox provider or newsletter tool |
| DKIM | Was this message signed by the domain, and was it changed in transit? | A TXT record at a selector name, such as google._domainkey |
A public key. Your mail provider signs outgoing mail with the matching private key |
| DMARC | What should receivers do when a message fails authentication? | A TXT record at _dmarc |
A policy (none, quarantine or reject) and an address for reports |
DMARC ties the other two together. A message passes DMARC when it passes SPF or DKIM and the authenticated domain matches the domain in the visible From address. Google calls this matching requirement alignment.
Why small senders should care now
Gmail's sender guidelines have applied since February 1, 2024. Every sender to Gmail accounts needs SPF or DKIM, valid forward and reverse DNS for the sending IP address, a TLS connection, and a spam rate kept below 0.30% in Google Postmaster Tools. Google recommends staying below 0.10%.
Senders of more than 5,000 messages a day to Gmail must meet stricter rules: both SPF and DKIM, a DMARC policy (p=none is acceptable), a From domain that aligns with SPF or DKIM, and one-click unsubscribe for marketing and subscribed messages.
Yahoo asks all senders to use SPF or DKIM at a minimum. Bulk senders need both, plus a valid DMARC policy of at least p=none. Yahoo's page does not state a volume threshold for bulk.
Most small businesses send far fewer than 5,000 messages a day to Gmail, so the bulk rules may not strictly apply to you. A DMARC record is still worth publishing because it shows who sends mail as your domain. Passing authentication does not guarantee inbox placement, since content and sender reputation still matter.
Before you start
- List every service that sends email as your domain: your mailbox provider, website contact forms, invoicing tools, newsletter platforms and CRM systems.
- Find out where your domain's DNS is managed. You add the records there, and that may be your registrar, a separate DNS host or a hosting control panel.
- Confirm you have admin access to both DNS and your email provider. In Google Workspace, Google says you need super administrator access or at least the Gmail Settings privilege to generate a DKIM key.
- Create a dedicated mailbox or group to receive DMARC reports. Google notes reports can arrive in large volumes.
- Check for an existing SPF record, which is a TXT record starting with
v=spf1. Edit it instead of adding a second one.
Step 1: Publish your SPF record
SPF is a single TXT record at your domain root that starts with v=spf1. Google's guidance says each domain must have its own SPF record. RFC 7208 section 4.6.4 limits an SPF check to 10 DNS-querying mechanisms and modifiers in total: include, a, mx, ptr, exists and redirect. Lookups inside the records you reference count toward that limit too, so a record with fewer than 10 direct include: entries can still exceed it and return a permerror.
If you send mail only through Google Workspace, Google's example record is:
v=spf1 include:_spf.google.com ~all
Google recommends ending the record with ~all. If you also send through other services, add the SPF setting each service tells you to use inside the same record, and verify the lookup count with an SPF checker after every change. Do not create a second SPF record, because two records for one domain can make SPF evaluation fail.
For Titan Business Email, copy the exact SPF value that Titan shows for your domain rather than typing it from memory or borrowing another provider's value. Titan's help center includes an article titled "What are SPF records and why are they important?" that explains the record.
Google notes that SPF changes can take up to 48 hours to propagate, although they often appear sooner.
Step 2: Turn on DKIM signing
DKIM needs two actions: publish the public key in DNS, then tell your email provider to start signing. In Google Workspace, the steps are:
- In the Admin console, go to Apps, then Google Workspace, then Gmail, then Authenticate email, and select your domain.
- Click Generate New Record. Choose a 2048-bit key if your DNS provider supports it, or 1024-bit if it does not. Keep the default selector,
google, unless your domain already uses a key with that prefix. - Copy the host name (for example
google._domainkey) and the TXT value, which beginsv=DKIM1; k=rsa; p=. - Add the TXT record at your DNS host. Some providers limit TXT length or append your domain automatically, so check how the saved record displays.
- Wait for DNS to update. Google says DKIM can take up to 48 hours to start working.
- Return to Authenticate email and click Start authentication.
If you only recently turned on Gmail, Google advises waiting 24 to 72 hours before generating the key. Generating it too early can return a "DKIM record was not created" error.
For Titan Business Email, follow Titan's "Set up DKIM Record" help article and use the host name and value Titan generates for your domain. The comparison table on the Titan Business Email page includes a "Custom DKIM support" row, so confirm what your chosen plan includes before you rely on it.
Step 3: Add DMARC, starting in monitoring mode
Google recommends setting up SPF and DKIM first and confirming that authentication has worked for at least 48 hours before you add DMARC. Then create a TXT record with the host name _dmarc and a value like this:
v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com
Replace the address with your own report mailbox. The tags work as follows:
vandpmust come first. Theptag sets the policy you request:noneis a monitoring policy that does not ask receivers to quarantine or reject mail based on DMARC,quarantineasks them to treat failing mail as suspicious, such as by filtering it to spam, andrejectasks them to refuse it. The receiving server makes the final decision under its own policies.ruais where aggregate reports go. Each address needs themailto:prefix. If the address is on a different domain, that domain needs its own DNS record to accept the reports.pctis optional. It sets the percentage of failing messages the policy applies to, and Google recommends including it during rollout.
Start with p=none so you can see which services send as your domain and whether they pass. Once every legitimate sender passes consistently, move to quarantine and then reject. Gmail does not support ruf (failure) reports, so rely on rua.
Test the result
- Send a test message from each service that sends as your domain to a Gmail address.
- Open the message in Gmail, choose Show original, and look at the Authentication-Results header. Google points to this header as the place to confirm a DKIM pass, and you can check SPF and DMARC there as well.
- Run your DMARC record through a free online DMARC checker to confirm the format is valid.
- Review your first DMARC reports after a few days. If a legitimate sender fails, fix its SPF or DKIM setup before you tighten the policy.
Common mistakes to avoid
Publishing two SPF records
Merge senders into a single record. Separate records for one domain can cause SPF to fail.
Forgetting a sending service
A contact form plugin, invoicing tool or newsletter platform may send as your domain. When you enforce DMARC, mail from any service you missed can be rejected or sent to spam.
Jumping straight to p=reject
Move from none to quarantine to reject in stages, using your reports as evidence that legitimate mail passes.
Doubling the domain in the host name
Some DNS hosts add your domain automatically. If you type the full name, you can end up with _dmarc.example.com.example.com. Check the saved record after you add it.
Titan Business Email or Google Workspace?
Both products are offered on the Z.com US store, and the authentication steps follow the same pattern. The difference is where you generate the values: the Google Admin console for Google Workspace, or Titan's control panel for Titan Business Email. You can review each option on the Titan Business Email page and the Google Workspace page. Your DNS records stay with whichever service hosts your domain's DNS.
Frequently asked questions
Do I need DMARC if I send only a few emails?
Gmail requires DMARC only from senders of more than 5,000 messages a day. A small sender can still benefit, because the reports show who is using your domain to send mail.
Can I use SPF and DKIM without DMARC?
Yes. Gmail requires SPF or DKIM from all senders. DMARC adds a policy and reporting on top of them.
How long until the records work?
Google says SPF and DKIM changes can take up to 48 hours to propagate, and it recommends adding DMARC only after SPF and DKIM are set up and you have confirmed for at least 48 hours that authentication is working.
Key takeaways
- Publish one SPF record per domain that includes every sending service.
- Generate DKIM keys in your email provider, add the TXT record, then start signing.
- Begin DMARC at
p=noneand tighten it only when reports show legitimate mail passing. - Copy record values from your provider's setup screen and test with a real message.
Official references
Requirements were checked against these pages on October 29, 2026. Providers can change their rules, so confirm current details before you publish records.
- Google: Email sender guidelines
- Google Workspace: Set up SPF
- Google Workspace: Set up DKIM
- Google Workspace: Set up DMARC
- Yahoo: Sender best practices
Choosing a mailbox provider for your own domain? Compare the options on the Z.com US store and pick the one that fits your team.
View Titan Business Email