Skip to content
Start with 100 free verification credits
Qualisend
SPF setup guide

SPF, DKIM & DMARC for Groove.

Groove is a shared-inbox help desk, so the mail it sends is customer-facing — every reply to a support ticket goes out under your domain. "White-labeling" in Groove is exactly the authentication step that makes those replies provably yours. Instead of having you paste a shared SPF line, Groove's modern flow generates CNAME records inside each inbox's SMTP configuration tab — a DKIM key on the groove._domainkey selector plus a return-path CNAME — along with a DMARC TXT record. Add them, let Groove's "Test DNS" check turn green, and your support mail is DKIM-signed as your own domain: DMARC passes, Gmail drops the "via groovehq.com" notice, and replies stop sliding into customers' spam folders.

SPF include
Your DNSAdd the CNAME / TXT records
GrooveSigns & sends as your domain
The inboxSPF · DKIM · DMARC pass

Why authenticate Groove?

Authenticating Groove isn't housekeeping — for a help desk it's the difference between a customer seeing your reply and it dying in spam, the worst possible place for a support answer to land. Since February 2024, Gmail and Yahoo require every bulk sender (roughly 5,000+ messages a day, a bar a busy shared inbox clears on ticket replies and notifications alone) to pass SPF, DKIM, and DMARC with alignment, and Microsoft began enforcing the same on consumer Outlook/Hotmail mail in 2025. Until you white-label, Groove sends on its own infrastructure: recipients see a "via groovehq.com" or "on behalf of" note, your From address doesn't cryptographically belong to you, DMARC can't pass, and your reputation is pooled with every other unauthenticated Groove sender. White-labeling fixes all of it in one move — DKIM aligns to your domain, the "via" tag disappears, DMARC passes, and the reputation you build accrues to your own domain. In support, where trust is the whole product, that alignment is what keeps customers reading and replying instead of reporting you as spam.

The SPF reality for Groove

Groove is technically an "include" provider — there really is a shared mechanism, include:smtp.groovehq.com — but it is NOT the path that makes DMARC pass, and it's not what Groove's current setup recommends. Two reasons. First, Groove sends every message with a Return-Path/envelope on its own bounce domain (Groove owns and processes the bounces), so SPF is always evaluated against Groove's domain, never your From domain. include:smtp.groovehq.com makes the raw SPF check pass for Groove's IPs, but it does not ALIGN with your organizational domain — and DMARC only counts SPF when it aligns. Groove's own deliverability documentation is blunt about this: it uses one of its own domains for the return-path, and it provides no mechanism that lets SPF alignment pass. Second, Groove's white-labeling flow doesn't ask for the include at all: in the inbox's SMTP configuration tab it hands you CNAME records — a DKIM key on the groove._domainkey selector plus a return-path CNAME (and a third CNAME on newer accounts) — and a DMARC TXT record. DKIM signed as d=yourdomain.com is the mechanism that aligns and carries your DMARC pass. Groove explicitly tells anyone who "previously set up DKIM and SPF records for your SMTP sending" to "migrate to the newer improved CNAME version." So the include still exists and old tutorials still cite v=spf1 include:smtp.groovehq.com ~all, but on the modern setup it's optional: it burns one of your 10 SPF lookups and buys no DMARC alignment. One scope note — white-labeling only applies to inboxes that send through Groove's own SMTP servers; if you connected an inbox via Gmail/Google Workspace or Microsoft 365 OAuth, Groove relays through that provider and you authenticate the domain there instead.

Two ways to set it up

Recommended

CNAME white-labeling (recommended)

  • Groove generates DKIM + return-path CNAMEs (selector groove._domainkey) that sign mail as your domain
  • DKIM aligns, so DMARC passes even though SPF can't — Groove owns the return-path
  • Adds zero DNS lookups to your root SPF; there's nothing to merge
  • Groove holds and rotates the keys behind the CNAMEs, so you never re-paste a key
Legacy

SPF include + DKIM record (legacy)

  • You add v=spf1 include:smtp.groovehq.com ~all to your root SPF yourself
  • Costs one of your 10 SPF lookups and still doesn't align (return-path is Groove's)
  • Groove now tells anyone on this method to migrate to the CNAME version
  • Only relevant for old mailboxes not yet moved to white-labeling

Step by step

In Groove
  1. 1

    Confirm the inbox uses Groove's SMTP servers

    Go to Settings → Channels → Email, choose the inbox, and click the pencil icon to edit. White-labeling only exists for inboxes sending through Groove's own SMTP servers (the 'recommended' option). If this inbox is connected via Gmail/Google Workspace or Microsoft 365, Groove relays through that provider — stop here and authenticate the domain in Google/M365 instead.

  2. 2

    Open the SMTP configuration tab

    In the inbox edit view, open the SMTP configuration tab. You'll see the CNAME records — a DKIM key on the groove._domainkey selector plus a return-path CNAME (some accounts show 2 CNAMEs, newer ones show 3) — and a DMARC TXT record. Copy them exactly: the hosts and targets are unique to this mailbox and can't be guessed.

In your DNS
  1. 3

    Add the DKIM CNAME

    At your DNS host, create a CNAME with host groove._domainkey pointing to the target Groove shows. Keep the type as CNAME — don't switch it to TXT. This is the record that signs mail as d=yourdomain.com, so it's the one that aligns and carries your DMARC pass; skipping it means DMARC can't pass at all.

  2. 4

    Add the return-path CNAME(s)

    Add the second CNAME Groove lists (the return-path/bounce host that satisfies SPF for Groove's sending IPs), and the third if your account shows one. Copy each host/target pair verbatim from the SMTP tab. These are also CNAMEs delegated to Groove — leave the type alone.

  3. 5

    Fix host labels and the Cloudflare proxy

    If your registrar auto-appends your domain, enter just the label (groove._domainkey, not groove._domainkey.yourdomain.com) to avoid doubling. Google Domains additionally needs a trailing period on the CNAME target. On Cloudflare, set every Groove CNAME to 'DNS only' (grey cloud) — an orange-cloud proxied CNAME won't resolve and Test DNS stays Invalid.

  4. 6

    Publish the DMARC TXT record

    Add a TXT record at host _dmarc: v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com. Groove's flow offers a DMARC record too — use it, but only if you don't already have one, because a domain must have exactly one _dmarc record. p=none is monitor-only, so nothing changes while you confirm alignment.

Verify
  1. 7

    Click Test DNS

    Back in the SMTP configuration tab, click the Test DNS button under the CNAME listing. It flips from Invalid to Valid once the records resolve — propagation is usually minutes but can take 48–72 hours. Once Valid, Groove activates white-labeling and starts signing with the groove selector.

  2. 8

    Send a real reply and read the headers

    Send a test (or a real ticket reply) to a Gmail address, open it, and choose ⋮ → Show original. You want DKIM: PASS with d=yourdomain.com and selector groove (not groovehq.com), and DMARC: PASS. SPF may show Groove's domain — that's expected; DKIM is what aligns here.

  3. 9

    Leave the records in place

    Groove re-runs verification daily at midnight Pacific time and automatically disables white-labeling if a record no longer resolves. Don't remove or 'clean up' the CNAMEs later, and repeat this whole setup for every inbox you send from — each mailbox has its own SMTP configuration tab and its own records.

Records to add

Groove generates the exact values in its setup wizard — these show the shape of what you'll add at your DNS host.

TypeHostValue
CNAMEgroove._domainkeygroove.dkim.u1234567.groovehq.comDKIM key — Groove-managed. Illustrative target: copy the exact value from your SMTP configuration tab. This is the record that signs as your domain and carries your DMARC pass.
CNAMEemu1234567.groovehq.comReturn-path / bounce CNAME Groove lists alongside the DKIM record (newer accounts show a third CNAME too). Illustrative host and target — copy the exact pair from the SMTP tab. Satisfies SPF for Groove's sending IPs but does not align to your From domain.
TXT_dmarcv=DMARC1; p=none; rua=mailto:dmarc@yourdomain.comYour DMARC policy — Groove's flow supplies this as the '1 TXT record'. One per domain; skip if you already publish _dmarc. Start at p=none, then tighten.
TXT@v=spf1 include:smtp.groovehq.com ~allLegacy/optional root SPF include. Authorizes Groove's IPs but does NOT align to your From domain (Groove owns the return-path), so it can't pass DMARC on its own — the DKIM CNAME does. Costs 1 SPF lookup; the modern CNAME flow doesn't need it.

Keep exactly one SPF (v=spf1) TXT record on your root domain — merge every sender into it. Two SPF records is itself an error.

The 10-lookup budget

SPF is capped at a hard 10 DNS lookups — go over and it returns a permerror and stops validating everywhere. Here's what Groove's setup costs against that budget.

SPF 10-lookup budget0 used · 10 free

Groove's recommended setup adds 0 lookups — all 10 stay free for the senders that do need an include.

DKIM

DKIM is the heart of Groove authentication, because it's the only mechanism that can align to your domain — SPF can't, since Groove sends from its own return-path/bounce domain. Groove uses CNAME-based DKIM on the groove._domainkey selector (Groove-managed), so you don't paste a public key: you add a CNAME with host groove._domainkey pointing to the target Groove shows, and Groove holds the private key. Because it's a CNAME delegated to Groove rather than a static TXT record, Groove can rotate the published key behind that selector without you ever re-editing DNS. Find the value in the app: Settings → Channels → Email → select the inbox → pencil (edit) → SMTP configuration tab. Older accounts list 2 CNAMEs plus a DMARC TXT; newer ones list 3 CNAMEs. Add each as a CNAME (never TXT), entering just the label groove._domainkey if your host appends the domain; Google Domains wants a trailing period on the target, and on Cloudflare set the record to DNS-only (grey cloud). Then click Test DNS. Once it reads Valid, Groove signs outgoing support mail as d=yourdomain.com and DKIM starts aligning — which is what actually gets you a DMARC pass.

DMARC

DMARC is a separate policy TXT record on your domain. Groove's white-labeling flow conveniently offers one — the "1 TXT record" it lists alongside the CNAMEs — but only publish it if you don't already have a _dmarc record, because a domain must have exactly one. Add it at _dmarc.yourdomain.com starting with v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com. p=none is monitor-only: it changes nothing about delivery while you watch the aggregate (rua) reports to confirm Groove — and every other sender on your domain — is authenticating. The Groove-specific point to internalize: because Groove owns the return-path, your DMARC pass rides entirely on DKIM (the groove._domainkey CNAME), so make sure that record shows Valid and Show original reports DKIM d=yourdomain.com before you tighten. Once alignment is consistent for a week or two, move the policy to p=quarantine and then p=reject. Keep just one _dmarc record for the whole domain regardless of how many senders you run — Groove, Google Workspace, a marketing tool — they all report to the same record.

Check it actually worked

Groove gives you two verification layers, and you should trust neither alone. In-app: the Test DNS button under the CNAME listing in the SMTP configuration tab flips from Invalid to Valid once the records resolve (propagation is usually minutes but can run 48–72 hours). Groove also re-runs verification automatically every day at midnight Pacific — and silently disables white-labeling if a record later stops resolving, so if mail suddenly shows "via groovehq.com" again, a CNAME almost certainly changed. Don't stop at the green badge: send a real reply (or a test) to a Gmail account, open it, and choose ⋮ → Show original. Confirm DKIM: PASS with d=yourdomain.com and selector groove (not groovehq.com), and DMARC: PASS — SPF may still show Groove's domain, which is expected because DKIM is what aligns here. Then run your domain through Qualisend's domain health check to confirm the DKIM CNAME, the return-path CNAME(s), and the DMARC record all resolve cleanly, and once aggregate reports arrive, drop one into the DMARC report analyzer to see Groove show up as an aligned, passing source.

Common gotchas

  • DNS setup

    DKIM carries DMARC here, not SPF. Groove owns the return-path/bounce domain, so SPF passes against Groove's domain but doesn't ALIGN to yours. Adding include:smtp.groovehq.com will not make DMARC pass — the groove._domainkey DKIM CNAME is what does. Don't skip it thinking the SPF include has you covered.

  • DNS setup

    White-labeling only applies to Groove-SMTP inboxes. If an inbox is connected through Gmail/Google Workspace or Microsoft 365, Groove sends through that provider — these CNAMEs don't apply and you authenticate the domain in Google/M365 instead.

  • DNS setup

    Groove re-verifies daily at midnight Pacific and silently disables white-labeling if any record breaks. If mail reverts to 'via groovehq.com', a CNAME was changed or removed (a registrar edit, a Cloudflare proxy toggle) — re-add it and click Test DNS.

  • DNS setup

    The record set is per-inbox. Each connected mailbox has its own SMTP configuration tab and its own CNAMEs — authenticate every inbox you send from, not just the first one you set up.

  • DNS setup

    Host-field doubling and the Google Domains quirk: enter just groove._domainkey, not groove._domainkey.yourdomain.com; Google Domains additionally requires a trailing period on the CNAME target.

  • DNS setup

    Cloudflare proxy breaks CNAME resolution. Set each Groove CNAME to 'DNS only' (grey cloud) — an orange-cloud proxied CNAME won't resolve to the Groove host and Test DNS stays Invalid.

  • DNS setup

    Don't stack a redundant include:smtp.groovehq.com when you use the CNAME flow. It consumes one of your 10 SPF lookups and buys no alignment; Groove itself tells legacy SPF/DKIM users to migrate to the CNAMEs.

  • Breaks auth

    Only one DMARC record per domain. Groove offers a DMARC TXT in its flow — skip it if you already publish _dmarc, because two DMARC records is invalid and neither will apply.

Build your SPF record

Groove doesn't need an SPF include: on your root domain — use the generator to assemble one clean record for your other senders, and keep it to a single line.

1

Sending sources

Search for each platform you send email through and tick it.

Search for your email platform above, or .

2

This domain's own servers

Authorize the domain itself, if it sends mail directly (not through a platform above).

3

Other senders & IPs

Anything not in the list — another provider's SPF host, or specific IP addresses.

We add the include: prefix — enter the hostname your provider documents.

4

Policy for everyone else

What receivers should do with mail from any server not listed above (the all mechanism).

Your SPF record0/10 DNS lookups
v=spf1 ~all

No senders yet, so every message would hit the ~all policy. Add the platforms you send through in step 1.

  • Publish it as a TXT record at your root domain — host @ (the bare domain), value the full string above.
  • Keep only one SPF record per domain. Merge every sending source into this single line — a second TXT record starting v=spf1 makes both invalid.
  • Stay at or under 10 DNS lookups. Each include:, a and mx counts, and an include can trigger more lookups inside itself — ip4: and ip6: are free.

Authentication published? The next step is sending to a clean, verified list.

Verify a list

Groove SPF — FAQ

Related reading

Once it's published, confirm everything resolves with the domain health check, then read who's sending as you with the DMARC report analyzer. Browse all sending sources in the generator. Authentication is only half of deliverability, though — a listed sending IP or domain still lands you in spam no matter how clean your SPF is, so it's worth watching the blacklists with blacklist monitoring.

Authenticated — now keep the list clean

Passing SPF, DKIM, and DMARC gets you to the inbox; a clean list keeps you there. Verify yours — start free with 100 credits, no card required.

Start verifying