Authenticate your domain so Userpilot can send emails from your own address, protecting your brand and landing more messages in the inbox.
Overview
Domain authentication proves to email providers that Userpilot is allowed to send emails on your behalf. It’s required before you can send any emails, and it’s what keeps your messages trusted rather than flagged as spam.Once your domain is authenticated, you’ll:
Prevent spoofing - stop others from forging emails that appear to come from your domain.
Pass modern sender checks - meet the authentication requirements now enforced by Gmail, Outlook, and other major inbox providers.
Keep tracking links trusted - click links are served from your own domain, so they’re less likely to be stripped or flagged as suspicious.
Prerequisites
Before you start, make sure you have:
A registered domain you own. Your emails will be sent from this domain.
Access to that domain’s DNS settings through a provider like GoDaddy, Cloudflare, Route 53, etc.
Authenticate DKIM + MAIL FROM (required)
1
Add your domain in Userpilot
Open Settings → Email → Domains in the Userpilot dashboard.
Click Add domain, enter yourdomain.com, then click Create.
Domain just added – pending authentication
2
Create the DNS records
Add the generated DNS records in your DNS provider.
Record Description
DKIM: DKIM adds a tamper-proof signature to every email your app sends. Receiving mail providers check that signature against public keys in your DNS to confirm the message really came from you and wasn’t altered in transit.
SPF: SPF is an allow-list that Internet Service Providers use to check email authorization.
TXT Record → Authorizes our mail server to send emails on your behalf.
MX Record → A return-path which mail clients use to route bounces. Ensures block spoofing and keeps your main email (e.g., Gmail/Office 365) untouched.
DMARC: DMARC helps protect your domain from email spoofing by working alongside SPF and DKIM. It lets you define how email providers should handle messages that fail authentication checks and provides reports so you can monitor and improve your domain’s email security.
Note: You don’t need to add or adjust your DMARC TXT record if you already have one. Simply review it to ensure it meets your needs.
If you use Cloudflare, set all records to DNS Only. Proxying breaks verification.
Spam filters and recipient servers assess the root domain of email links to decide whether to trust an email, so using a domain you control significantly improves deliverability and reduces “suspicious link” flags.By default, Userpilot serves your email links with its own domain to track opens and clicks. With custom tracking domain enabled, those assets are served from your custom tracking subdomain instead (e.g., tracking.yourdomain.com). This keeps link URLs brand aligned and leverages your domain’s reputation for better inbox placement.
Option A – Userpilot-Managed (Easiest)
1
Request a tracking subdomain
Email support@userpilot.com with the tracking subdomain you want to use (e.g. tracking.yourdomain.com). Make sure the subdomain is not used for other purposes.Userpilot will then provision the following resources for you:
SSL certificate.
CDN Distribution.
2
Verify the CNAME records
We will reach out to you once the resources are provisioned and ready to use. We will provide you with a set of CNAME records for both resources to add in your DNS provider.
3
Confirm the setup
Confirm to the support team that you have added the CNAME records. We will then configure the custom tracking domain for your emails.
Option B – Bring your Own CDN (Advanced)
US region
EU region
Origin: r.us-west-2.awstrack.me
Origin: r.eu-west-3.awstrack.me
If your security policy requires using your own CDN/certificate, you can manage the tracking subdomain yourself.
Create a CDN/edge distribution (e.g. CloudFront) for the tracking subdomain (e.g. tracking.yourdomain.com) pointing to the origin value above.
Make sure your CDN is configured to:
Force HTTPS protocol.
Forward original Host headers to the origin.
Disable caching.
Attach an SSL certificate for the subdomain to your CDN distribution.
Add a CNAME record for your subdomain to point to your CDN distribution.
Reach out to support@userpilot.com when you have verified the setup. We will then configure the custom tracking domain for your emails and confirm it with you.
You can find your Userpilot hosting region in the Environment page. If your HTTP endpoint is https://analytex-eu.userpilot.io/, you’re in the EU region.
A 200 response with headers like below confirms the setup:
x-amz-ses-region: us-west-2 # or eu-west-3x-amz-ses-request-protocol: https
Troubleshooting
What do i need to check if the Records are still pending after 24 hrs?
Check for typos in records.
Disable CDN/proxy if using Cloudflare.
What if the Emails landed in spam after authenticating or marked as suspicious?
Add DMARC and a tracking subdomain.
Make sure your emails contain valid links.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Userpilot Knowledge Base","colors":{"primary":"#6765e8","light":"#9a98f0","dark":"#343374"},"logo":{"light":"https://mintcdn.com/userpilot/KtUQBkEo7Hf3bjCu/up-logo-dark.svg?fit=max\u0026auto=format\u0026n=KtUQBkEo7Hf3bjCu\u0026q=85\u0026s=ed5988b05e17770537d7327506be349c","dark":"https://mintcdn.com/userpilot/KtUQBkEo7Hf3bjCu/up-logo-light.svg?fit=max\u0026auto=format\u0026n=KtUQBkEo7Hf3bjCu\u0026q=85\u0026s=2558daac7455ff6275b45a01cecb8ca9"},"favicon":"https://mintcdn.com/userpilot/KtUQBkEo7Hf3bjCu/up-favicon.svg?fit=max\u0026auto=format\u0026n=KtUQBkEo7Hf3bjCu\u0026q=85\u0026s=bd3fb42ae91a32d13d543fed45a8b88e","footer":{"socials":{"twitter":"https://linkedin.com/company/teamuserpilot","facebook":"https://facebook.com/userpilot","linkedin":"https://linkedin.com/company/teamuserpilot"},"links":[{"header":"Support","items":[{"label":"support@userpilot.com","href":"mailto:support@userpilot.com"}]}]},"seo":{"metatags":{"canonical":"https://docs.userpilot.com","og:site_name":"Userpilot Knowledge Base","og:type":"website","og:image":"https://docs.userpilot.com/up-logo-dark.svg","twitter:card":"summary_large_image","twitter:site":"@usaborpilot"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"userpilot","hasAudioNarration":false,"actualSubdomain":"userpilot","customDomains":["docs.userpilot.com"],"gitSource":{"type":"github","owner":"userpilot","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"edits":true,"issues":true,"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af1aa6212241f5ef5b8694e","clientVersion":"0.0.4142","searchFilterCounts":[{"language":"default","tag":"Platform","count":137},{"language":"default","tag":"Developer","count":88},{"language":"default","tag":"Installation","count":76},{"language":"default","tag":"Mobile","count":68},{"language":"default","tag":"In App Engagement","count":56},{"language":"default","tag":"APIs","count":42},{"language":"default","tag":"Configure","count":23},{"language":"default","tag":"Endpoints","count":20},{"language":"default","tag":"Bulk Export","count":17},{"language":"default","tag":"Integrations","count":14}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":":root{--primary: 103 101 232;--primary-light: 225 224 250;--primary-dark: 103 101 232;--background-light: 255 255 255;--background-dark: 9 13 13;--gray-50: 243 247 246;--gray-100: 238 242 241;--gray-200: 222 226 226;--gray-300: 206 210 209;--gray-400: 158 163 162;--gray-500: 112 116 115;--gray-600: 80 84 83;--gray-700: 62 67 66;--gray-800: 37 41 40;--gray-900: 23 27 26;--gray-950: 10 14 13;--header: 128 127 236;--hover-btn: 52 51 116;--accent: 103 101 232}header#header>div>div{color:rgb(var(--header))}body :is(.dark\\:bg-primary-light:is(.dark *)){background:rgb(var(--accent))}body :is(.dark\\:bg-primary-light\\/10:is(.dark *)){background:rgb(var(--hover-btn))}"}],"page":{"pagePath":"in-app-engagement/emails/setup-and-authenticate-email-domain","slug":"/in-app-engagement/emails/setup-and-authenticate-email-domain","pageMetadata":{"title":"Setup and authenticate your email domain","description":"Authenticate your domain so Userpilot can send emails from your own address, protecting your brand and landing more messages in the inbox.","keywords":["Userpilot","authenticate","email","domain","Engagement","Emails"],"href":"/in-app-engagement/emails/setup-and-authenticate-email-domain"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Authenticate your domain so Userpilot can send emails from your own address, protecting your brand and landing more messages in the inbox.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,blockquote:`blockquote`,br:`br`,code:`code`,em:`em`,hr:`hr`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Check,CodeBlock,Frame,Heading,Info,Note,OptimizedImage,Step,Steps,Tab,Tabs,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Check)_missingMdxReference(`Check`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Note)_missingMdxReference(`Note`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`overview`,children:`Overview`}),`\n`,_jsx(_components.p,{children:`Domain authentication proves to email providers that Userpilot is allowed to send emails on your behalf. It’s required before you can send any emails, and it’s what keeps your messages trusted rather than flagged as spam.`}),`\n`,_jsx(_components.p,{children:`Once your domain is authenticated, you’ll:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Prevent spoofing`}),` - stop others from forging emails that appear to come from your domain.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Pass modern sender checks`}),` - meet the authentication requirements now enforced by Gmail, Outlook, and other major inbox providers.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Keep tracking links trusted`}),` - click links are served from your own domain, so they’re less likely to be stripped or flagged as suspicious.`]}),`\n`]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`prerequisites`,children:`Prerequisites`}),`\n`,_jsx(_components.p,{children:`Before you start, make sure you have:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`A registered domain you own.`}),` Your emails will be sent from this domain.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Access to that domain’s DNS settings`}),` through a provider like GoDaddy, Cloudflare, Route 53, etc.`]}),`\n`]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`authenticate-dkim-+-mail-from-required`,children:`Authenticate DKIM + MAIL FROM (required)`}),`\n`,_jsxs(Steps,{children:[_jsxs(Step,{title:`Add your domain in Userpilot`,children:[_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Open `,_jsx(_components.strong,{children:`Settings → Email → Domains`}),` in the Userpilot dashboard.`]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Add domain`}),`, enter `,_jsx(_components.strong,{children:_jsx(_components.code,{children:`yourdomain.com`})}),`, then click `,_jsx(_components.strong,{children:`Create`}),`.`]}),`\n`]}),_jsx(Frame,{caption:`Domain just added – pending authentication`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-not-authenticated.png?fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=1920a2357c4956764106a57385b76e6d`,alt:`Pending domain authentication status`,\"data-og-width\":`3086`,width:`3086`,\"data-og-height\":`1054`,height:`1054`,\"data-path\":`images/email-domain-not-authenticated.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-not-authenticated.png?w=280\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=fe93820a09970bc570b3ae3401f440d6 280w, https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-not-authenticated.png?w=560\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=93eafba09a88180c1501e3dc6ed7bd98 560w, https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-not-authenticated.png?w=840\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=0ad9eb745fde00bce9787c3308b30c06 840w, https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-not-authenticated.png?w=1100\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=8fc97e856c9adca8afb024fee40236e2 1100w, https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-not-authenticated.png?w=1650\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=28a77d1595ae8a889c361001c8a6b560 1650w, https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-not-authenticated.png?w=2500\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=ac677f628fd9578f85732891da1a816d 2500w`})})]}),_jsxs(Step,{title:`Create the DNS records`,children:[_jsx(_components.p,{children:`Add the generated DNS records in your DNS provider.`}),_jsxs(Note,{children:[_jsx(Heading,{level:`4`,id:`record-description`,children:`Record Description`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`DKIM:`}),` DKIM adds a tamper-proof signature to every email your app sends. Receiving mail providers check that signature against public keys in your DNS to confirm the message really came from you and wasn’t altered in transit.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`SPF:`}),` SPF is an allow-list that Internet Service Providers use to check email authorization.`,`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`TXT Record`}),` → Authorizes our mail server to send emails on your behalf.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`MX Record`}),` → A return-path which mail clients use to route bounces. Ensures block spoofing and keeps your main email (e.g., Gmail/Office 365) untouched.`]}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`DMARC:`}),` DMARC helps protect your domain from email spoofing by working alongside SPF and DKIM. It lets you define how email providers should handle messages that fail authentication checks and provides reports so you can monitor and improve your domain’s email security.`]}),`\n`]}),_jsxs(_components.blockquote,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Note:`}),` You don’t need to add or adjust your DMARC TXT record if you already have one. Simply review it to ensure it meets your needs.`]}),`\n`]})]}),_jsx(Warning,{children:_jsxs(_components.p,{children:[`If you use Cloudflare, set all records to `,_jsx(_components.strong,{children:`DNS Only`}),`. Proxying breaks verification.`]})})]}),_jsxs(Step,{title:`Verify`,children:[_jsx(_components.p,{children:`DNS may take a few minutes (rarely up to 48h).`}),_jsx(Note,{children:_jsxs(_components.p,{children:[`Verified domains will automatically cover all their subdomains.`,_jsx(_components.br,{}),`\n`,`For example, if you’ve verified `,_jsx(_components.a,{href:`http://example.pxl.studio`,children:_jsx(_components.strong,{children:`example.pxl.studio`})}),`, you can now send emails from addresses like `,_jsx(_components.a,{href:`mailto:noreply@eng.example.pxl.studio`,children:_jsx(_components.strong,{children:`noreply@eng.example.pxl.studio`})})]})}),_jsx(Check,{children:_jsxs(_components.p,{children:[`Status switches to `,_jsx(_components.strong,{children:`Authenticated`}),` when DKIM and SPF records are valid. You are now ready to send emails.`]})}),_jsx(Frame,{caption:`Authenticated status`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-authenticated.png?fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=8b1d5d0c1c79073cbafb7639d2004fa1`,alt:`Domain authenticated status`,style:{width:`100%`},\"data-og-width\":`3074`,width:`3074`,\"data-og-height\":`1036`,height:`1036`,\"data-path\":`images/email-domain-authenticated.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-authenticated.png?w=280\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=31c4cc1df4fcbdc9446dd7dddfd8f819 280w, https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-authenticated.png?w=560\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=f50032ae91ce9008663e13dfbce8d7fe 560w, https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-authenticated.png?w=840\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=b2cd4625e6a91e7e2656370bd073c5ef 840w, https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-authenticated.png?w=1100\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=36f45e8a138429c364362c8ee35d6624 1100w, https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-authenticated.png?w=1650\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=fd09b9c8c2753d4e00b2a37552535e3c 1650w, https://mintcdn.com/userpilot/6mq0DeMvNIpVRWN5/images/email-domain-authenticated.png?w=2500\u0026fit=max\u0026auto=format\u0026n=6mq0DeMvNIpVRWN5\u0026q=85\u0026s=c391c8501dc5d430df1ee8d736ff0366 2500w`})})]})]}),`\n`,_jsxs(Warning,{children:[_jsxs(_components.p,{children:[`If DNS records are not found after `,_jsx(_components.strong,{children:`72 hours`}),`, the status changes to `,_jsx(_components.strong,{children:`Failed`}),`. Click `,_jsx(_components.strong,{children:`Retry Verification`}),` to restart the lookup process.`]}),_jsx(OptimizedImage,{src:`https://mintcdn.com/userpilot/XL7YmTTWVDAuL5SC/images/email-domain-failed-authentication.png?fit=max\u0026auto=format\u0026n=XL7YmTTWVDAuL5SC\u0026q=85\u0026s=990acf229f0704365a25bc7a96a857ce`,alt:`Domain failed authentication status`,\"data-og-width\":`3048`,width:`3048`,\"data-og-height\":`1216`,height:`1216`,\"data-path\":`images/email-domain-failed-authentication.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/userpilot/XL7YmTTWVDAuL5SC/images/email-domain-failed-authentication.png?w=280\u0026fit=max\u0026auto=format\u0026n=XL7YmTTWVDAuL5SC\u0026q=85\u0026s=3a7a81c60c4a84fc58ad0d12cf8ebc48 280w, https://mintcdn.com/userpilot/XL7YmTTWVDAuL5SC/images/email-domain-failed-authentication.png?w=560\u0026fit=max\u0026auto=format\u0026n=XL7YmTTWVDAuL5SC\u0026q=85\u0026s=7fe8194552e11783435fc6d6abc5670c 560w, https://mintcdn.com/userpilot/XL7YmTTWVDAuL5SC/images/email-domain-failed-authentication.png?w=840\u0026fit=max\u0026auto=format\u0026n=XL7YmTTWVDAuL5SC\u0026q=85\u0026s=a5bcd5729d0c73d8e14a3107b6eebc10 840w, https://mintcdn.com/userpilot/XL7YmTTWVDAuL5SC/images/email-domain-failed-authentication.png?w=1100\u0026fit=max\u0026auto=format\u0026n=XL7YmTTWVDAuL5SC\u0026q=85\u0026s=4854e0300e352934791cec9f77cc67ef 1100w, https://mintcdn.com/userpilot/XL7YmTTWVDAuL5SC/images/email-domain-failed-authentication.png?w=1650\u0026fit=max\u0026auto=format\u0026n=XL7YmTTWVDAuL5SC\u0026q=85\u0026s=1e0aecafb37a0707ed55bd0993be7486 1650w, https://mintcdn.com/userpilot/XL7YmTTWVDAuL5SC/images/email-domain-failed-authentication.png?w=2500\u0026fit=max\u0026auto=format\u0026n=XL7YmTTWVDAuL5SC\u0026q=85\u0026s=efd19dab3a43482c6fcf78bc88761f87 2500w`})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`custom-link-tracking-domain-optional-strongly-recommended`,children:`Custom Link-Tracking Domain (Optional - Strongly Recommended)`}),`\n`,_jsx(_components.p,{children:`Spam filters and recipient servers assess the root domain of email links to decide whether to trust an email, so using a domain you control significantly improves deliverability and reduces “suspicious link” flags.`}),`\n`,_jsxs(_components.p,{children:[`By default, Userpilot serves your email links with its own domain to track opens and clicks. With custom tracking domain enabled, those assets are served from your custom tracking subdomain instead (e.g., `,_jsx(_components.code,{children:`tracking.yourdomain.com`}),`). This keeps link URLs brand aligned and leverages your domain’s reputation for better inbox placement.`]}),`\n`,_jsxs(Heading,{level:`3`,id:`option-a-–-userpilot-managed-easiest`,children:[`Option A – Userpilot-Managed `,_jsx(_components.em,{children:`(Easiest)`})]}),`\n`,_jsxs(Steps,{children:[_jsxs(Step,{title:`Request a tracking subdomain`,children:[_jsxs(_components.p,{children:[`Email `,_jsx(_components.a,{href:`mailto:support@userpilot.com`,children:_jsx(_components.strong,{children:`support@userpilot.com`})}),` with the tracking subdomain you want to use (e.g. `,_jsx(_components.code,{children:`tracking.yourdomain.com`}),`). Make sure the subdomain is not used for other purposes.`]}),_jsx(_components.p,{children:`Userpilot will then provision the following resources for you:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`SSL certificate.`}),`\n`,_jsx(_components.li,{children:`CDN Distribution.`}),`\n`]})]}),_jsx(Step,{title:`Verify the CNAME records`,children:_jsx(_components.p,{children:`We will reach out to you once the resources are provisioned and ready to use. We will provide you with a set of CNAME records for both resources to add in your DNS provider.`})}),_jsx(Step,{title:`Confirm the setup`,children:_jsx(_components.p,{children:`Confirm to the support team that you have added the CNAME records. We will then configure the custom tracking domain for your emails.`})})]}),`\n`,_jsxs(Heading,{level:`3`,id:`option-b-–-bring-your-own-cdn-advanced`,children:[`Option B – Bring your Own CDN `,_jsx(_components.em,{children:`(Advanced)`})]}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`US region`,id:`us-region`,children:_jsxs(_components.p,{children:[`Origin: `,_jsx(_components.strong,{children:_jsx(_components.code,{children:`r.us-west-2.awstrack.me`})})]})}),_jsx(Tab,{title:`EU region`,id:`eu-region`,children:_jsxs(_components.p,{children:[`Origin: `,_jsx(_components.strong,{children:_jsx(_components.code,{children:`r.eu-west-3.awstrack.me`})})]})})]}),`\n`,_jsx(_components.p,{children:`If your security policy requires using your own CDN/certificate, you can manage the tracking subdomain yourself.`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Create a CDN/edge distribution (e.g. CloudFront) for the tracking subdomain (e.g. `,_jsx(_components.code,{children:`tracking.yourdomain.com`}),`) pointing to the origin value above.`]}),`\n`]}),`\n`,_jsxs(Info,{children:[_jsx(_components.p,{children:`Make sure your CDN is configured to:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Force `,_jsx(_components.strong,{children:`HTTPS`}),` protocol.`]}),`\n`,_jsx(_components.li,{children:`Forward original Host headers to the origin.`}),`\n`,_jsx(_components.li,{children:`Disable caching.`}),`\n`]})]}),`\n`,_jsxs(_components.ol,{start:`2`,children:[`\n`,_jsx(_components.li,{children:`Attach an SSL certificate for the subdomain to your CDN distribution.`}),`\n`,_jsxs(_components.li,{children:[`Add a `,_jsx(_components.strong,{children:`CNAME`}),` record for your subdomain to point to your CDN distribution.`,`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`\u003ctracking.yourdomain.com> CNAME \u003cyour-cdn-domain.example.net>`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`Reach out to `,_jsx(_components.a,{href:`mailto:support@userpilot.com`,children:_jsx(_components.strong,{children:`support@userpilot.com`})}),` when you have verified the setup. We will then configure the custom tracking domain for your emails and confirm it with you.`]}),`\n`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`You can find your Userpilot hosting region in the `,_jsx(_components.a,{href:`https://run.userpilot.io/environment`,children:`Environment page`}),`. If your HTTP endpoint is `,_jsx(_components.code,{children:`https://analytex-eu.userpilot.io/`}),`, you’re in the EU region.`]})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`verify-link-tracking-domain`,children:`Verify Link-Tracking Domain`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` -I https://tracking.yourdomain.com/favicon.ico`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`A 200 response with headers like below confirms the setup:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`x-amz-ses-region: us-west-2 # or eu-west-3`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`x-amz-ses-request-protocol: https`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`troubleshooting`,children:`Troubleshooting`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`What do i need to check if the Records are still pending after 24 hrs?`,id:`what-do-i-need-to-check-if-the-records-are-still-pending-after-24-hrs`,children:_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Check for typos in records.`}),`\n`,_jsx(_components.li,{children:`Disable CDN/proxy if using Cloudflare.`}),`\n`]})}),_jsx(Accordion,{title:`What if the Emails landed in spam after authenticating or marked as suspicious?`,id:`what-if-the-emails-landed-in-spam-after-authenticating-or-marked-as-suspicious`,children:_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Add `,_jsx(_components.strong,{children:`DMARC`}),` and a `,_jsx(_components.strong,{children:`tracking subdomain`}),`.`]}),`\n`,_jsx(_components.li,{children:`Make sure your emails contain valid links.`}),`\n`]})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Setup and authenticate your email domain","description":"Authenticate your domain so Userpilot can send emails from your own address, protecting your brand and landing more messages in the inbox.","keywords":["Userpilot","authenticate","email","domain","Engagement","Emails"],"href":"/in-app-engagement/emails/setup-and-authenticate-email-domain"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Overview","slug":"overview","depth":2,"children":[]},{"title":"Prerequisites","slug":"prerequisites","depth":2,"children":[]},{"title":"Authenticate DKIM + MAIL FROM (required)","slug":"authenticate-dkim-+-mail-from-required","depth":2,"children":[{"title":"Record Description","slug":"record-description","depth":4,"children":[]}]},{"title":"Custom Link-Tracking Domain (Optional - Strongly Recommended)","slug":"custom-link-tracking-domain-optional-strongly-recommended","depth":2,"children":[{"title":"Option A – Userpilot-Managed (Easiest)","slug":"option-a-–-userpilot-managed-easiest","depth":3,"children":[]},{"title":"Option B – Bring your Own CDN (Advanced)","slug":"option-b-–-bring-your-own-cdn-advanced","depth":3,"children":[]}]},{"title":"Verify Link-Tracking Domain","slug":"verify-link-tracking-domain","depth":2,"children":[]},{"title":"Troubleshooting","slug":"troubleshooting","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/userpilot/3ace2e9458eac66f/.prettierrc.js","/_mintlify/custom/userpilot/27d7e6557bc674e7/plausible.js","/_mintlify/custom/userpilot/222114e09e9d43ba/scripts/generate-kb-manifest.js","/_mintlify/custom/userpilot/7588c52f105b4ce6/scripts/check-nav.js","/_mintlify/custom/userpilot/77c4aabf1776912c/scripts/check-redirects.js","/_mintlify/custom/userpilot/c4efe6226e95d900/scripts/lib/docs-lib.js","/_mintlify/custom/userpilot/8278790c2c1428e5/scripts/precommit.js","/_mintlify/custom/userpilot/826df8c2727af7c1/scripts/seo-audit.js"],"subdomain":"userpilot","siteName":"Userpilot Knowledge Base","title":"Setup and authenticate your email domain - Userpilot Knowledge Base","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-28T20:58:42.673Z","originalFileLocation":"in-app-engagement/emails/setup-and-authenticate-email-domain.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Authenticate your domain so Userpilot can send emails from your own address, protecting your brand and landing more messages in the inbox.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Userpilot Knowledge Base\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/userpilot/aR1cLyV1TsYivBqB/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/userpilot/aR1cLyV1TsYivBqB/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/userpilot/aR1cLyV1TsYivBqB/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/userpilot/aR1cLyV1TsYivBqB/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/userpilot/aR1cLyV1TsYivBqB/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/userpilot/aR1cLyV1TsYivBqB/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/userpilot/aR1cLyV1TsYivBqB/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/userpilot/aR1cLyV1TsYivBqB/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/userpilot/aR1cLyV1TsYivBqB/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Setup and authenticate your email domain - Userpilot Knowledge Base\">\u003cmeta data-mint-head property=\"og:description\" content=\"Authenticate your domain so Userpilot can send emails from your own address, protecting your brand and landing more messages in the inbox.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Userpilot Knowledge Base\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.userpilot.com/in-app-engagement/emails/setup-and-authenticate-email-domain\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://docs.userpilot.com/up-logo-dark.svg\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Setup and authenticate your email domain - Userpilot Knowledge Base\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Authenticate your domain so Userpilot can send emails from your own address, protecting your brand and landing more messages in the inbox.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://docs.userpilot.com/up-logo-dark.svg\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/userpilot/aR1cLyV1TsYivBqB/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Userpilot Knowledge Base\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6765e8\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.userpilot.com/in-app-engagement/emails/setup-and-authenticate-email-domain\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/in-app-engagement/emails/setup-and-authenticate-email-domain.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.userpilot.com/#organization\",\"name\":\"Userpilot Knowledge Base\",\"url\":\"https://docs.userpilot.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/userpilot/KtUQBkEo7Hf3bjCu/up-logo-dark.svg?fit=max\u0026auto=format\u0026n=KtUQBkEo7Hf3bjCu\u0026q=85\u0026s=ed5988b05e17770537d7327506be349c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.userpilot.com#website\",\"name\":\"Userpilot Knowledge Base\",\"url\":\"https://docs.userpilot.com\",\"publisher\":{\"@id\":\"https://docs.userpilot.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.userpilot.com/in-app-engagement/emails/setup-and-authenticate-email-domain#webpage\",\"url\":\"https://docs.userpilot.com/in-app-engagement/emails/setup-and-authenticate-email-domain\",\"name\":\"Setup and authenticate your email domain\",\"description\":\"Authenticate your domain so Userpilot can send emails from your own address, protecting your brand and landing more messages in the inbox.\",\"dateModified\":\"2026-09-28T20:58:42.673Z\",\"isPartOf\":{\"@id\":\"https://docs.userpilot.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.userpilot.com/in-app-engagement/emails/setup-and-authenticate-email-domain#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.userpilot.com/in-app-engagement/emails/setup-and-authenticate-email-domain#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In App Engagement\",\"item\":\"https://docs.userpilot.com/in-app-engagement/flows/getting-started/themes\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Emails\",\"item\":\"https://docs.userpilot.com/in-app-engagement/emails/userpilots-email-sending-guidelines\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Setup and authenticate your email domain\",\"item\":\"https://docs.userpilot.com/in-app-engagement/emails/setup-and-authenticate-email-domain\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.userpilot.com/in-app-engagement/emails/setup-and-authenticate-email-domain#article\",\"headline\":\"Setup and authenticate your email domain\",\"name\":\"Setup and authenticate your email domain\",\"description\":\"Authenticate your domain so Userpilot can send emails from your own address, protecting your brand and landing more messages in the inbox.\",\"url\":\"https://docs.userpilot.com/in-app-engagement/emails/setup-and-authenticate-email-domain\",\"mainEntityOfPage\":{\"@id\":\"https://docs.userpilot.com/in-app-engagement/emails/setup-and-authenticate-email-domain#webpage\"},\"image\":\"https://docs.userpilot.com/up-logo-dark.svg\",\"dateModified\":\"2026-09-28T20:58:42.673Z\",\"keywords\":\"Userpilot, authenticate, email, domain, Engagement, Emails\",\"publisher\":{\"@id\":\"https://docs.userpilot.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.userpilot.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Userpilot Knowledge Base\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Userpilot Knowledge Base\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/in-app-engagement/emails/setup-and-authenticate-email-domain.md","siteName":"Userpilot Knowledge Base","nav":{"global":null,"tabs":[{"tab":"Platform","groups":[{"group":"Userpilot Overview","pages":[{"title":"What is Userpilot?","href":"/getting-started/what-is-userpilot"},{"title":"What does Userpilot offer?","href":"/getting-started/what-does-userpilot-offer"}]},{"group":"Welcome to Userpilot","pages":[{"title":"Get started with Userpilot","href":"/welcome-to-userpilot/get-started-with-userpilot"},{"title":"Userpilot Installation Quickstart","sidebarTitle":"Installation Quickstart","href":"/getting-started/quickstart"}]},{"group":"Users and Companies","pages":[{"title":"Users \u0026 Companies Dashboard","sidebarTitle":"Dashboard","icon":"users","href":"/users-companies/dashboard"},{"title":"Segments","icon":"chart-pie-simple","href":"/users-companies/segments"},{"title":"Profiles","icon":"address-card","href":"/users-companies/profile"}]},{"group":"Data and Events","pages":[{"group":"Events","icon":"code","pages":[{"title":"Events Dashboard","href":"/data-events/events-dashboard"},{"title":"Select The Right Element","sidebarTitle":"Element Detection","href":"/data-events/select-eleme-events"}]},{"group":"Event Types","icon":"tag","pages":[{"title":"Labeled Events (Visually/CSS)","href":"/data-events/autocapture/visual-labeler"},{"title":"Tracked Events","href":"/data-events/tracked-events/tracked-events"},{"title":"Custom Events","icon":"cube","href":"/data-events/tracked-events/custom-events"}]},{"group":"Auto-capture","icon":"bullseye-pointer","pages":[{"title":"Raw Events","href":"/data-events/autocapture/raw-events"},{"title":"Labeled Events (Visually/CSS)","href":"/data-events/autocapture/visual-labeler"},{"title":"Mobile Event Auto-Capture","href":"/data-events/autocapture/mobile-events-autocapture"}]},{"group":"Page Tracking","icon":"window","pages":[{"title":"Page Tracking","href":"/data-events/page-tracking/pages-dashboard"}]},{"group":"Mobile Screen Tracking","icon":"mobile-screen-button","pages":[{"title":"Track Mobile Screens Manually","href":"/data-events/mobile-screen-tracking/track-mobile-screens-manually"},{"title":"Mobile Screen Auto Capture","href":"/data-events/mobile-screen-tracking/mobile-screen-auto-capture"}]}]},{"group":"Chrome Extension Basics","pages":[{"title":"Button Actions","icon":"rectangle-history","href":"/ce-basics/button-actions"},{"title":"Embeds","icon":"square-plus","href":"/ce-basics/embeds"},{"title":"UI Templates","icon":"bookmark","href":"/ce-basics/ui-templates"},{"title":"AI Assistant","icon":"microchip-ai","href":"/ce-basics/ai-assistant"},{"title":"Personalize Content","icon":"user","href":"/ce-basics/personalize-content"},{"title":"Switching Themes","icon":"palette","href":"/ce-basics/switching-themes"},{"title":"Select The Right Element","sidebarTitle":"Element Detection","icon":"highlighter-line","href":"/ce-basics/select-element"},{"title":"Create \u0026 Preview Content","icon":"eye","href":"/ce-basics/preview-content"}]},{"group":"In App Engagement","pages":[{"group":"Flows","icon":"arrow-progress","pages":[{"group":"Getting Started","pages":[{"title":"Setup a Theme","href":"/in-app-engagement/flows/getting-started/themes"},{"title":"Create a Flow","href":"/in-app-engagement/flows/getting-started/create-flow"},{"title":"Set up Flow Settings","sidebarTitle":"Flow Settings","href":"/in-app-engagement/flows/getting-started/flow-settings"},{"title":"Best Practices","href":"/in-app-engagement/flows/getting-started/best-practices"},{"title":"Testing Flows","href":"/in-app-engagement/flows/getting-started/testing-flows"},{"title":"Flow performance analytics","href":"/in-app-engagement/flows/getting-started/Flow-performance-analytics"}]},{"group":"Chrome Extension","pages":[{"title":"Flow Logic","href":"/in-app-engagement/flows/CE/logic"},{"title":"Progressive Groups","sidebarTitle":"Groups","href":"/in-app-engagement/flows/CE/groups"},{"title":"Page Changes","href":"/in-app-engagement/flows/CE/page-changes"},{"title":"Localize Flows","href":"/in-app-engagement/flows/CE/localize"}]},{"group":"Use Cases","pages":[{"title":"Experiments","href":"/in-app-engagement/flows/use-cases/AB-testing"},{"title":"Ordering \u0026 Throttling","href":"/in-app-engagement/flows/use-cases/order-throttle"},{"title":"Form Responses","icon":"file-circle-question","href":"/in-app-engagement/flows/use-cases/forms"}]}]},{"group":"Spotlights","icon":"lightbulb-message","pages":[{"title":"Overview","href":"/in-app-engagement/spotlights/overview"},{"title":"Native Tooltips","href":"/in-app-engagement/spotlights/native-tooltips"},{"title":"Buttons","href":"/in-app-engagement/spotlights/buttons"},{"title":"Hotspots","href":"/in-app-engagement/spotlights/hotspots"},{"title":"Spotlight Settings ","href":"/in-app-engagement/spotlights/targeting-settings"}]},{"group":"Embeds","icon":"flag-pennant","pages":[{"title":"Create Banner","href":"/in-app-engagement/embeds/create-banner"},{"title":"Create Card","href":"/in-app-engagement/embeds/create-card"},{"title":"Targeting an Embed","href":"/in-app-engagement/embeds/targeting"}]},{"group":"Resource Center","icon":"book","pages":[{"title":"Resource Center Overview","sidebarTitle":"Overview","href":"/in-app-engagement/resource-center/overview"},{"group":"Create and Manage","pages":[{"title":"Resource Center Setup","sidebarTitle":"Content","href":"/in-app-engagement/resource-center/create"},{"title":"Resource Center Targeting Settings","sidebarTitle":"Targeting","href":"/in-app-engagement/resource-center/targeting"},{"title":"Resource Center Style and Triggering","sidebarTitle":"Style and Triggering","href":"/in-app-engagement/resource-center/style"},{"title":"Localize Resource Center Content","sidebarTitle":"Localization","href":"/in-app-engagement/resource-center/localization"},{"title":"Testing and Publishing Resource Center","sidebarTitle":"Testing and Publishing","href":"/in-app-engagement/resource-center/testing-publishing"},{"title":"Adding a Video to the Resource Center","sidebarTitle":"Video Content","href":"/in-app-engagement/resource-center/video-content"}]},{"group":"Knowledge Base","pages":[{"title":"Knowledge Base Integrations","sidebarTitle":"Knowledge Base Integrations","href":"/in-app-engagement/resource-center/knowledge-base-integrations"},{"title":"Zendesk Integration","href":"/in-app-engagement/resource-center/zendesk-integration"}]}]},{"group":"Checklists","icon":"list-check","pages":[{"title":"Getting Started with Checklists","sidebarTitle":"Overview","href":"/in-app-engagement/checklists/overview"},{"group":"Create and Manage","pages":[{"title":"Create a Checklist","href":"/in-app-engagement/checklists/create-checklist"},{"title":"Style Checklist Widget","sidebarTitle":"Style Widget","href":"/in-app-engagement/checklists/style"},{"title":"Localization","href":"/in-app-engagement/checklists/localization"},{"title":"Targeting a Checklist","href":"/in-app-engagement/checklists/targeting-checklist"},{"title":"Trigger and Beacon Settings","sidebarTitle":"Trigger and Beacon Settings","href":"/in-app-engagement/checklists/trigger-and-beacon-settings"},{"title":"Testing and Publishing Checklists","sidebarTitle":"Test and Publish","href":"/in-app-engagement/checklists/test-and-publish"}]},{"title":"Checklist Overview and Analytics","sidebarTitle":"Analytics","href":"/in-app-engagement/checklists/ChecklistOverviewandAnalytics"}]},{"group":"Mobile Content","icon":"mobile-notch","pages":[{"title":"Get started with mobile content","href":"/in-app-engagement/mobile-content/get-started-with-mobile-content"},{"title":"Build a Mobile Carousel","href":"/in-app-engagement/mobile-content/build-mobile-carousel"},{"title":"Build a Mobile Slideout","href":"/in-app-engagement/mobile-content/build-a-mobile-slideout"},{"title":"Mobile Push Notifications","href":"/in-app-engagement/mobile-content/mobile-push-notifications"},{"title":"Mobile content ordering \u0026 throttling","href":"/in-app-engagement/mobile-content/mobile-content-ordering"},{"title":"Mobile content overview","href":"/in-app-engagement/mobile-content/mobile-content-overview"},{"title":"Mobile content performance analytics","href":"/in-app-engagement/mobile-content/mobile-content-performance-analytics"},{"title":"Preparing to Send Push Notifications","href":"/in-app-engagement/mobile-content/preparing-to-send-push-notifications"}]},{"group":"Emails","icon":"envelope","pages":[{"title":"Userpilot's Email Sending Guidelines","href":"/in-app-engagement/emails/userpilots-email-sending-guidelines"},{"title":"Get started with emails","description":"Userpilot's Email feature helps you re-engage users, boost retention, and deliver behavior-based messages outside the product.","href":"/in-app-engagement/emails/get-started-with-emails"},{"title":"Setup and authenticate your email domain","href":"/in-app-engagement/emails/setup-and-authenticate-email-domain"},{"title":"Email performance analytics","description":"Userpilot's Email Analytics gives you a detailed, real-time view of how recipients interact with your email.","href":"/in-app-engagement/emails/email-performance-analytics"},{"title":"Email deliverability performance metrics","href":"/in-app-engagement/emails/view-and-analyze-domain-level-performance"},{"title":"Add email addresses","href":"/in-app-engagement/emails/add-email-addresses"},{"title":"Customize email signature","href":"/in-app-engagement/emails/customize-email-signature"},{"title":"Manage email subscriptions","href":"/in-app-engagement/emails/manage-email-subscriptions"},{"title":"Manage unsubscribes","href":"/in-app-engagement/emails/manage-unsubscribes"},{"title":"Suppression list","href":"/in-app-engagement/emails/suppression-list"},{"title":"Design email theme","href":"/in-app-engagement/emails/design-email-theme"}]}]},{"group":"Workflows","pages":[{"title":"Building your Workflow","icon":"diagram-next","href":"/building-your-workflow"},{"title":"Workflow performance analytics","icon":"chart-line","href":"/workflow-performance-analytics"}]},{"group":"Product Analytics","pages":[{"group":"Reports","icon":"chart-mixed","pages":[{"title":"Trends","href":"/product-analytics/reports/trends"},{"title":"Funnels","href":"/product-analytics/reports/funnels"},{"title":"Paths","href":"/product-analytics/reports/paths"},{"title":"Retention","href":"/product-analytics/reports/retention"}]},{"group":"Dashboards","icon":"objects-column","pages":[{"title":"Product Usage Dashboard","href":"/product-analytics/dashboards/product-usage"},{"title":"Feature Engagement","href":"/product-analytics/dashboards/feature-engagement"},{"title":"User Activation Dashboard","href":"/product-analytics/dashboards/user-activation"},{"title":"User Retention Dashboard","href":"/product-analytics/dashboards/user-retention"},{"title":"Free to Paid Conversion","href":"/product-analytics/dashboards/free-to-paid-conversion"},{"title":"Expansion Revenue","href":"/product-analytics/dashboards/expansion-revenue"},{"title":"Custom Dashboards","href":"/product-analytics/dashboards/custom-dashboards"}]}]},{"group":"User Feedback","pages":[{"group":"NPS","icon":"face-smile","pages":[{"title":"Create an NPS","href":"/user-feedback/nps/create-nps"},{"title":"NPS Responses and Analytics","sidebarTitle":"NPS Responses","href":"/user-feedback/nps/nps-responses"},{"title":"NPS Settings","href":"/user-feedback/nps/nps-settings"}]},{"group":"Surveys","icon":"square-poll-horizontal","pages":[{"title":"Get started with survey","href":"/user-feedback/surveys/create-survey"},{"title":"Survey details and analytics","sidebarTitle":"Survey Responses","href":"/user-feedback/surveys/survey-details-and-analytics"},{"title":"User responses","href":"/user-feedback/surveys/user-responses"}]},{"title":"Form Responses","icon":"file-circle-question","href":"/in-app-engagement/flows/use-cases/forms"}]},{"group":"Session Replay","pages":[{"title":"Session Replay","icon":"play","href":"/sessions/session-replay"}]},{"group":"AI","pages":[{"title":"Welcome to Lia","icon":"sparkles","href":"/ai/welcome-to-lia"},{"title":"Userpilot MCP Server","icon":"sparkles","href":"/ai/userpilot-mcp-server"},{"group":"Agent Analytics","icon":"sparkles","pages":[{"title":"Overview","href":"/agent-a-overview"},{"title":"Topics","href":"/topics"},{"title":"Failure Signals","href":"/failure-signals"},{"title":"Agent Conversation Transcripts","href":"/agent-conversation-transcripts"}]}]},{"group":"Admin Console","pages":[{"title":"Admin Console","icon":"briefcase","sidebarTitle":"Overview","href":"/admin-console/overview"},{"title":"Cloning Content Across Applications","href":"/admin-console/duplicating-and-cloning-content-across-applications"}]},{"group":"Configure","pages":[{"group":"Themes and Design Library","icon":"palette","pages":[{"title":"Get started","href":"/configure/themes-and-design-library/get-started"},{"title":"Set up a web app theme","href":"/configure/themes-and-design-library/set-up-a-web-app-theme"},{"title":"Set up a mobile app theme","href":"/configure/themes-and-design-library/set-up-a-mobile-app-theme"},{"title":"Set up a design library","href":"/configure/themes-and-design-library/set-up-a-design-library"},{"title":"Theme Switching","href":"/configure/themes-and-design-library/switching-themes"}]},{"group":"Notifications","icon":"bell","pages":[{"title":"Get started with notifications","href":"/configure/notifications/get-started-with-notifications"},{"title":"System notifications","href":"/configure/notifications/system-notifications"},{"title":"Signal notifications","href":"/configure/notifications/signals"},{"title":"Digest notification","href":"/configure/notifications/digest"}]},{"group":"Teams","icon":"users","pages":[{"title":"Managing your team in Userpilot","href":"/configure/team-and-roles/managing-your-team-in-userpilot"},{"title":"Access and activity logs","href":"/configure/team-and-roles/access-and-activity-logs"},{"title":"Two-Factor Authentication (2FA)","href":"/configure/team-and-roles/2fa"},{"title":"SSO","href":"/configure/team-and-roles/sso"},{"title":"Just-in-Time (JIT) Provisioning","href":"/configure/team-and-roles/jit"},{"title":"SCIM Integration","href":"/configure/team-and-roles/scim"},{"title":"Bulk Teammate Import (CSV)","href":"/configure/team-and-roles/csv-import"}]},{"group":"Navigation and Interface","icon":"location-arrow","pages":[{"title":"Inbox","href":"/navigation-and-interface/inbox"},{"title":"Global search","href":"/navigation-and-interface/global-search"}]},{"group":"Accessibility","icon":"universal-access","pages":[{"title":"Accessibility in Userpilot in-app messages","href":"/accessibility/accessibility-in-userpilot-in-app-messages"}]},{"group":"Exclude Lists","icon":"list","pages":[{"title":"Exclude CSS Selectors","href":"/configure/exclude-lists/dynamic-attributes"},{"title":"Exclude Users and Companies","href":"/configure/exclude-lists/exclude-user"}]},{"group":"Data \u0026 Privacy","icon":"shield-halved","pages":[{"title":"Data Retention","icon":"clock-rotate-left","href":"/configure/data-retention/data-retention"},{"title":"Data Capture \u0026 Privacy","icon":"database","href":"/configure/data-capture-and-privacy/data-capture-and-privacy"}]}]},{"group":"Reference","icon":"book","pages":[{"title":"When to Use What in Userpilot","href":"/reference/when-to-use"},{"title":"Userpilot Data Model","href":"/reference/data-model"},{"title":"Userpilot Glossary","href":"/reference/glossary"},{"title":"Userpilot Error Reference","href":"/reference/errors"}]}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/integrations/overview"}]},{"tab":"Developer","pages":[{"title":"Developer","href":"/developer/installation/web"}]},{"tab":"APIs","pages":[{"title":"APIs","href":"/api-references/overview"}]}]},"basePath":"","title":"Setup and authenticate your email domain - Userpilot Knowledge Base","buildId":"dpl_G2Qd45vZZ7MkBiGF9yYx8ZsbbKXX","deploymentId":"dpl_G2Qd45vZZ7MkBiGF9yYx8ZsbbKXX","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-DL7q6v_h.js","DynamicMarkdown-CaSwclgK.js","zoom-image-lightbox-BLUesUNd.js","lightbox-handle-r17bVUz3.js"]}