# Domain verification TXT records

Services such as Google Search Console, Microsoft 365, Apple, Meta and Stripe ask you to add a TXT record with a unique token to prove you control a domain. They look it up, and if it's there, the domain is linked to your account. A domain can have as many as you need.

- Record type: TXT (Verification is carried in TXT records)
- Lives at: @ (usually)
- Used for: Email
- How common: Everyday

## Format

```
@ <ttl> IN TXT "<service>-verification=<token>"
```

| Field | What it means | Accepted values |
| --- | --- | --- |
| Name | Usually the domain itself. Some services use their own label, such as _github-challenge-org. | Whatever the service tells you. |
| Token | A unique string tied to your account at the service. | Copy it exactly; it's case sensitive. |

## Examples

### Google

```
@ 3600 IN TXT "google-site-verification=rXOxyZounnZasA8Z7oaD3c14JdjS9aKSWvsR1EbUSIQ"
```

For Search Console and Google Workspace.

### Microsoft 365

```
@ 3600 IN TXT "MS=ms12345678"
```

Proves the domain to Microsoft 365 before email is set up.

### GitHub organisation

```
_github-challenge-example-org 3600 IN TXT "8a1c3e5b7d"
```

Some services use their own name instead of @.

## Tokens this guide recognises

The live lookup names the service behind common tokens, including Google, Microsoft, Meta, Apple, Atlassian, Stripe, DocuSign, Adobe, OpenAI, Anthropic, Zoom, Slack, Dropbox, HubSpot, Notion, Figma, Canva, Miro, Pinterest, Twilio, Shopify and Amazon SES.

## TTL

Anything; 3600 is fine. Verification usually works within minutes.

## Common mistakes

- Replacing the SPF record with the verification token instead of adding a second TXT record.
- Adding it at www when the service checks the bare domain.
- Removing it after verification for services that check again later.

## At your DNS host

- Add a new TXT record; don't edit an existing one. Most dashboards want the token without quotes.

## Questions

### Can I delete verification TXT records?

For services you no longer use, yes. For active ones, keep them: some services check again and unverify the domain if the record is gone.

### Do verification records slow anything down?

No, but a long list of them makes every TXT lookup bigger. Remove the ones for services you've left.

## Related

- [TXT record](https://lemon.domains/dns-records/txt.md)
- [SPF record](https://lemon.domains/dns-records/spf.md)
- [CNAME record](https://lemon.domains/dns-records/cname.md)

Interactive version with a record checker and live lookup: https://lemon.domains/dns-records/verification
