Skip to main content
First-Party Domains are available on the Enterprise plan. See our pricing page for more details.

Overview

Ad blockers, content blockers, and browser tracking protection commonly block requests to known analytics endpoints like api.mixpanel.com. When a request is blocked, the event never reaches Mixpanel and the data is lost. A first-party domain lets you send tracking traffic to a subdomain you own — for example track.yourcompany.com — instead of api.mixpanel.com. Because the request goes to your own domain, it isn’t matched by blocklists that target Mixpanel’s endpoints, so more of your events arrive. Mixpanel hosts and operates the endpoint for you. You point a DNS record at Mixpanel, and Mixpanel provisions and renews the TLS certificate and forwards traffic to its ingestion API. There is no proxy server for you to run, scale, or patch.

First-party domain vs. self-hosted proxy

You can achieve a similar result by running your own proxy server. The tradeoffs: If you need to serve Mixpanel’s SDK bundles and async modules from your own domain as well, a self-hosted proxy is still the right choice. See Supported endpoints.

Requirements

  • An Enterprise plan.
  • Permission to edit organization settings (Organization Owner or Admin).
  • A domain you control, with access to add DNS records at its DNS provider.
  • The domain you configure must be a subdomain (such as track.yourcompany.com), not an apex domain like yourcompany.com.
Each organization can have up to 3 first-party domains.

How it works

  1. You add a domain in Mixpanel. Mixpanel creates a DNS authorization and a managed TLS certificate for it.
  2. You add two CNAME records at your DNS provider: one that routes traffic to Mixpanel, and one that proves to the certificate authority that you control the domain.
  3. Once the records resolve, the certificate is issued automatically and the domain goes Active.
  4. You point your Mixpanel SDK at the domain. Requests terminate TLS at Mixpanel’s edge and are routed to the same ingestion backends that serve api.mixpanel.com.
Your project token continues to identify the project, exactly as before. Using a first-party domain does not change how events are attributed, stored, or billed.

Set up a first-party domain

Step 1: Add the domain in Mixpanel

  1. Go to Organization SettingsFirst-Party Domains.
  2. Click Add Domain.
  3. Enter the subdomain you want to use, for example track.yourcompany.com.
  4. Select the region that matches your project’s data residency — US, EU, or IN.
  5. Click Add domain.
The region must match the data residency of the projects sending traffic to this domain. A domain created in the US region forwards to Mixpanel’s US ingestion; it cannot serve an EU-resident or IN-resident project. If you have projects in more than one region, create a separate domain for each.

Step 2: Add the DNS records

After you add the domain, Mixpanel shows two CNAME records. Add both at your DNS provider exactly as shown. The first record routes your tracking traffic to Mixpanel. The second one authorizes certificate issuance and renewal — leave it in place permanently. If you remove it, Mixpanel cannot renew the certificate and the domain will eventually stop serving traffic. You can reopen these records at any time from the menu on the domain row → View setup instructions.
If your DNS is behind a proxying CDN (such as Cloudflare’s orange-cloud mode), set the tracking record to DNS-only. Proxying it prevents certificate validation and can break TLS for your domain.

Step 3: Wait for the certificate

Certificate issuance begins automatically once the DNS records resolve. This usually completes within minutes, but can take longer depending on your DNS provider’s TTL and propagation time. Return to the First-Party Domains page to check the status. Don’t send production traffic to the domain until it shows Active.

Step 4: Point your SDK at the domain

Once the domain is Active, set your SDK’s API host to https://track.yourcompany.com. The domain serves the same paths as api.mixpanel.com, so no path prefix is needed.
The option name differs by SDK. Refer to the relevant SDK page for exact syntax:

Step 5: Verify traffic is flowing

After deploying the change, confirm events are arriving on the new domain:
  • Check that events appear in Events or the Data Inspector for the affected projects.
  • In your browser’s network tab, confirm requests are going to track.yourcompany.com and returning 200.
  • Compare event volume against your baseline before and after the change.

Supported endpoints

A first-party domain serves Mixpanel’s ingestion and client-configuration paths: Any other path returns a 404.
A first-party domain does not serve Mixpanel’s CDN assets from cdn.mxpnl.com. Do not set the JavaScript SDK’s lib_base_path (or MIXPANEL_CUSTOM_LIB_URL) to your first-party domain — those requests will 404.This matters most for Session Replay on web: replay ingestion at /record goes through your domain, but the recorder module itself still loads from cdn.mxpnl.com and can be blocked. If you need to serve SDK assets from your own domain too, use a self-hosted proxy for those paths.

Regions

Point the tracking CNAME record at the host for your project’s data residency. The exact value is always shown in the Mixpanel UI — use that as the source of truth.

Delete a first-party domain

Deleting a domain is a destructive change: once it is torn down, any SDK still pointing at it will fail to send data. To protect against accidental deletion, Mixpanel applies a 5-day grace period. To delete a domain:
  1. On the domain row, open the menu and choose Delete domain.
  2. Type the domain name to confirm.
The domain moves to Deletion scheduled and keeps serving tracking traffic for the full 5 days. After the grace period elapses, Mixpanel removes the certificate and the domain permanently stops serving traffic. Before deleting, make sure you have:
  • Updated every SDK and server-side integration so it no longer points at the domain.
  • Verified that tracking traffic is no longer flowing to the domain across all projects.

Cancel a scheduled deletion

While a domain is in the grace period, open the menu and choose Cancel deletion. The domain stays active and the scheduled teardown is cancelled. Once the grace period has elapsed and teardown has begun, the deletion can no longer be cancelled. You’ll need to add the domain again and repeat DNS setup. After a domain is fully deleted, you can safely remove its two CNAME records from your DNS provider.

Troubleshooting

FAQ

No. A first-party domain avoids blocklists that target Mixpanel’s endpoints, which recovers a meaningful share of otherwise-blocked traffic. It does not defeat blockers that inspect request payloads, block based on script names, or prevent the SDK from loading in the first place.
Yes. A first-party domain is configured at the organization level and can serve any number of projects in the same region. The project token in each request determines where the data lands.
No. Only the API host changes.
No. Traffic is forwarded to the ingestion backend for the region you selected, so EU and IN residency guarantees are unchanged — provided the domain’s region matches your project’s.
No. First-party domains must be a subdomain, because setup relies on a CNAME record. Apex domains generally cannot hold a CNAME.
Users with permission to edit organization settings — Organization Owners and Admins. See Roles and Permissions.
The domain moves to Certificate error and will stop serving traffic once the existing certificate expires. Confirm the _acme-challenge CNAME record is still present and matches the value shown in the UI.