How to Set Up SPF, DKIM and DMARC for Google Workspace

Step-by-step SPF, DKIM and DMARC setup for Google Workspace domains: the smtp.google.com MX record, include:_spf.google.com, a 2048-bit DKIM key with the google selector, and a safe DMARC rollout from p=none to quarantine and reject.

Home › Guides › Google Workspace email authentication

Last updated 17 October 2026

Quick answer

For a domain that sends mail only through Google Workspace, you publish three DNS records and turn on DKIM signing in the Admin console:

@                   TXT  v=spf1 include:_spf.google.com ~all
google._domainkey   TXT  v=DKIM1; k=rsa; p=<key from the Admin console>
_dmarc              TXT  v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com

SPF and DMARC are DNS-only: Google says you don't need to do anything in the Admin console for them. DKIM needs both a key generated in the Admin console and a click on Start authentication after the TXT record is live. Once DMARC reports look clean, move from p=none to p=quarantine and then p=reject.

Google's sender guidelines require every sender to personal Gmail accounts to set up SPF or DKIM, and bulk senders (more than 5,000 messages a day) to set up all three. See the bulk sender requirements guide for the full checklist.

Before you start

Step 1: Check your MX records

MX records control inbound mail, not authentication, but they are the first thing to confirm when you move a domain to Google Workspace. Google's current MX record is a single host:

Type: MX   Name: @   Priority: 1   Value: smtp.google.com

See what a domain publishes today with the MX Record Lookup, and confirm changes worldwide with the DNS Propagation Checker.

Step 2: Publish SPF

If Google Workspace is the only service that sends as your domain, add this TXT record at the root of the domain (host @):

v=spf1 include:_spf.google.com ~all

If other services send as you, put them all in the same record. Examples from Google's own table:

v=spf1 include:_spf.google.com include:spf.protection.outlook.com ~all   (Google Workspace + Microsoft 365)
v=spf1 include:_spf.google.com include:amazonses.com ~all             (Google Workspace + Amazon SES)
v=spf1 include:_spf.google.com include:servers.mcsv.net ~all          (Google Workspace + Mailchimp)
v=spf1 include:_spf.google.com include:_spf.salesforce.com ~all       (Google Workspace + Salesforce)

Combine senders with the SPF Record Builder. Google says SPF can take up to 48 hours to start working.

Step 3: Generate a DKIM key in the Admin console

  1. Sign in to the Google Admin console as a super administrator and go to Menu > Apps > Google Workspace > Gmail, then click Authenticate email.
  2. In Selected domain, choose the domain.
  3. Click Generate New Record.
  4. Key bit length: choose 2048 if your DNS host supports 2048-bit keys (longer keys are more secure). Choose 1024 only if it doesn't. If you used a 1024-bit key before, you can switch to 2048.
  5. Prefix selector: leave the default, google, which Google recommends. Only enter a different prefix if your domain already has a DKIM key named google (for example from an older setup).
  6. Click Generate. The page shows a DNS Host name (for example google._domainkey) and a TXT record value in the form v=DKIM1; k=rsa; p=....
  7. Copy both values. Don't click Start authentication yet.

If you have more than one domain in the Workspace account, repeat this for each one. Google says every domain needs its own unique DKIM key from the Admin console.

Step 4: Publish the DKIM TXT record

"v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...first part..."
"...second part...IDAQAB"

Check that the record is live and complete with the DKIM Checker (it tries the google selector along with other common ones) and paste the value into the DKIM Record Explainer to confirm it is a 2048-bit RSA key. Google says it can take up to 48 hours for DKIM to start working after you add the key.

Step 5: Turn on DKIM signing and verify

  1. Back in Apps > Google Workspace > Gmail > Authenticate email, select the domain and click Start authentication. When it works, the status changes to Authenticating email with DKIM.
  2. The page may keep showing "You must update the DNS records for this domain" for up to 48 hours. If you have added the record correctly, Google says you can ignore it.
  3. Send a message to someone who uses Gmail or Google Workspace. Google notes you can't verify DKIM by sending yourself a test message.
  4. In Gmail, open the message, click More > Show original and copy the headers into the Email Header Analyzer. In Authentication-Results you want dkim=pass with header.d= your domain, plus spf=pass.

If the header has no DKIM line at all, messages aren't being signed: re-check the Admin console status and the TXT record.

Step 6: Publish DMARC at p=none

Google says to have SPF and DKIM authenticating mail for at least 48 hours before you turn on DMARC. Then create a dedicated group or mailbox for reports (you can get many each day) and publish a TXT record at host _dmarc:

Host:  _dmarc
Type:  TXT
Value: v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com

Build the record with the DMARC Record Generator and check what's live with the DMARC Record Checker.

Step 7: Move to quarantine, then reject

Google's recommended rollout:

  1. Stay at p=none for about one week and read the reports daily. Google says a week is usually enough for the reports to show all your mail streams. Fix any legitimate sender that fails SPF and DKIM alignment.
  2. Move to p=quarantine for a small percentage of mail with pct. Google's example is v=DMARC1; p=quarantine; pct=5; rua=mailto:dmarc@example.com. It suggests a small organization might start at 10% and a large one at 1%.
  3. Raise pct over time until the policy covers 100% (leaving pct out means 100%).
  4. Finish at v=DMARC1; p=reject; rua=mailto:dmarc-reports@example.com, where receivers refuse mail that fails DMARC.

The newer DMARC standard (RFC 9989) drops pct, so some receivers may apply your full policy even while you publish a percentage. Only raise the policy when your reports are clean. The DMARC rollout guide covers pct, t=y and np= in more detail. If you plan to use BIMI, Google requires p=quarantine or p=reject with pct=100; the BIMI Record Generator builds the record.

Subdomains, extra domains and third-party senders

Common mistakes

Audit hundreds of domains at once

Need SPF, DMARC and MX checks across a whole client list? Run the Bulk SPF / DMARC / MX Auditor on Apify ($2 per 1,000 domains).

Related tools and guides

Check the whole domain with the Email Deliverability Checker, look up MX records with MX Record Lookup, build and test SPF with the SPF Record Builder and SPF Record Checker, find and grade DKIM keys with the DKIM Checker, and create and verify DMARC with the DMARC Record Generator and DMARC Record Checker. Read test messages in the Email Header Analyzer. Related guides: Gmail, Yahoo and Outlook bulk sender requirements and, for Microsoft 365 domains, SPF, DKIM and DMARC.

FAQ

What is the SPF record for Google Workspace?

If Google Workspace is your only sender, publish v=spf1 include:_spf.google.com ~all as a TXT record at the domain root. Add other senders to the same record, for example include:spf.protection.outlook.com for Microsoft 365, and keep the whole record under 10 DNS lookups.

What is the default DKIM selector for Google Workspace?

The default prefix selector is google, so the DKIM key is published as a TXT record at google._domainkey.yourdomain. Google recommends keeping the default unless your domain already has a DKIM key with that name.

Should I use a 2048-bit or 1024-bit DKIM key in Google Workspace?

Use 2048-bit if your DNS host supports it, because longer keys are more secure. A 2048-bit key is longer than 255 characters, so split it into several quoted strings in one TXT record. Choose 1024-bit only if your DNS host cannot store the longer key.

Why can I not generate a DKIM key in the Google Admin console?

You must be signed in as a super administrator, and Google says to wait 24 to 72 hours after turning on Gmail for your organization. Generating a key earlier can fail with an error that the DKIM record was not created.

What DMARC record should I start with for Google Workspace?

After SPF and DKIM have been working for at least 48 hours, publish v=DMARC1; p=none; rua=mailto:dmarc-reports@yourdomain at host _dmarc. Watch reports for about a week, then move to p=quarantine with a small pct value, raise it to 100 and finish at p=reject.

Want the full kit?

Runbooks, checklists and helpdesk templates: IT Admin Packs on Gumroad.