Mixpanel
Connect Mixpanel to run segmentation, funnels, and retention, look up profiles, and export and ingest event data.
A Mixpanel service account username and secret, the numeric project ID and your data region, plus an optional project token and GDPR OAuth token.
Paid plan required before this connector works
No one reviews anything, but Mixpanel's Query API (funnels, insights, segmentation, retention, profile event activity) is sold only with the Growth or Enterprise plan - a Free-plan project cannot call it however valid the service account is.
- Typical wait
- None - upgrading is self-serve in Mixpanel's billing settings and takes effect immediately
- Cost
- Mixpanel does not publish a flat price for Query API access. The Free plan covers up to 1M events/month and excludes the Query API. Growth is usage-based, advertised as 'Starts at $0' and priced by monthly event volume - use Mixpanel's own pricing calculator on mixpanel.com/pricing for a figure, since the published rate changes. Enterprise is custom-quoted by sales.
- Blocked until approved
- On the Free plan the Query API endpoints are not included in the plan, so you cannot programmatically pull formatted report data - Insights, Funnels, Retention, Segmentation or profile event activity. Mixpanel's docs state plainly that 'Users with a Growth or Enterprise plan can use our Query API to export formatted report data.' Free users are left exporting reports from the UI. Free does include ingestion and raw export API access.
- Works meanwhile
- Everything else works on Free with a service account created in seconds: event ingestion via the /track and /import endpoints, the Raw Event Export API, the Engage (user profiles) API, Lexicon/schema endpoints and the Identity APIs - the Free plan's feature list includes 'Ingestion & export API access'. If your connector only needs raw events and profiles, nothing is gated.
Where to apply: No application - upgrade the project's plan in Mixpanel under Organization Settings > Plan & Billing (choose Growth), then create credentials at Organization Settings > Service Accounts or Project Settings > Service Accounts.
- The plan gate is per organisation/project, so a service account scoped to a Free project still fails on Query API calls even if another project in the org is on Growth.
- 'You must have Owner or Admin permissions to manage a project's Service Accounts' - a plain member cannot create one.
- The service account secret is shown exactly once: 'you won't be able to access it again after creation.'
- Query and export endpoints are project-scoped and expect a project_id parameter; omitting it tends to surface as a confusing auth failure rather than a clear error.
- Residency matters: EU and India projects use api-eu.mixpanel.com / api-in.mixpanel.com, and hitting the US host with an EU project returns empty results rather than an error.
- Service accounts default to no expiration, but you can optionally set one at creation - an expiry set months earlier is a classic silent breakage.
- Setup time
- 6 min
- Auth
- API credentials
- API base URL
- https://mixpanel.com/api
- Rate limits
- Query endpoints are throttled per project at roughly 5 concurrent queries and 60 queries per hour. Ingestion endpoints accept large batched imports, and heavy exports should be paged rather than run in parallel.
Before you begin
- Mixpanel account with Owner or Admin permissions on the organization, because Analysts and Consumers cannot create service accounts
- The project you want PopMCP to read, since the connection is locked to one project ID
- Know your data residency: US by default, or EU or India
Get your credentials
Open Organization Settings and the Service Accounts tab
Click the gear icon at the bottom of the left nav and choose Organization Settings, then select Service Accounts from the settings menu. EU residency orgs do this on eu.mixpanel.com and India orgs on in.mixpanel.com.
Service Accounts
Machine credentials for the Mixpanel APIs, scoped to the projects you pick.
| Username | Role | Projects | Expires | Status |
|---|---|---|---|---|
| etl-sync.a1b2c3.mp-service-accountCreated Mar 4, 2026 | Analyst | Web App | Never | Active |
| legacy-import.d4e5f6.mp-service-accountCreated Aug 9, 2025 | Consumer | Web App, iOS | Jan 1, 2026 | Expired |
Secrets are never listed here. Only usernames are shown.
Add the service account
Click Add Service Account, name it popmcp, and pick an Organization Role. Tick the projects it may reach and leave Expiration empty.
Add Service Account
The role you pick here caps what every PopMCP tool can do.
Analyst covers reads. Admin is needed to create or edit saved cohorts, boards and Lexicon entries.
Copy the username and secret
Copy both the generated username and the secret before you close the dialog. The username ends in .mp-service-account.
Service Accounts
Machine credentials for the Mixpanel APIs, scoped to the projects you pick.
The secret is shown once. Service accounts authenticate with HTTP Basic auth, username as the user and secret as the password.
Find the numeric project ID
Open Project Settings and read the Project ID on the Overview tab. It is also the number in any Mixpanel URL, such as mixpanel.com/project/3210987/.
Overview
Identifiers and residency for this project.
- Project Name
- Web App
- Project ID
- 3210987
- Data Residency
- US
- Timezone
- Australia/Sydney
PopMCP locks the connection to this one project ID. The project name and token are different values.
Copy the Project Token only if PopMCP will write events
Open Project Settings and the Access Keys tab, then copy the Project Token. Skip this step if PopMCP only queries data.
Access Keys
Ingestion credentials for this project.
| Key | Value | Status |
|---|---|---|
| Project TokenWrite only | ****c4f1 | Active |
| API SecretLegacy auth | ****7b03 | Deprecated |
The Project Token can send events and profile updates. It cannot read data.
Paste everything into PopMCP
Enter the username, secret and project ID, then set Region to us, eu or in. Leave GDPR OAuth Token blank unless you need the data deletion and retrieval endpoints.
Connect in PopMCP
Open your workspace, choose Mixpanel in the marketplace, and fill in the connect dialog:
| Field | What to enter |
|---|---|
| Service Account usernametext | Mixpanel → Organization Settings → Service Accounts → Create. You must be an Owner or Admin. Choose the role + projects it can access. Copy the username shown after creation. Stored encrypted. |
| Service Account secretsecret | Shown only once when the service account is created, so save it immediately. If you lost it, delete the service account and create a new one. Stored encrypted.Encrypted with AES-256-GCM on save and never shown again. |
| Project IDtext | The numeric project id. Find it in Mixpanel → Project Settings → Overview (or in any Mixpanel URL: mixpanel.com/project/<PROJECT_ID>/…). The connection is locked to this one project. |
| Data region (us, eu, or in)text | Where your Mixpanel data is hosted: us (default), eu (EU Data Residency), or in (India Data Residency). Requests must hit the matching regional host. Pick wrong and calls 401/return no data. |
| Project Token (optional)secret | Optional. Project Settings → Access Keys → Project Token. Only needed to send live events/profiles (track, engage, groups) or evaluate feature flags. It's auto-injected so those tools work without you passing it. Batch /import works with just the service account. Stored encrypted.Encrypted with AES-256-GCM on save and never shown again. |
| GDPR OAuth Token (optional)secret | Optional. Only the GDPR API (data deletions & retrievals) requires this. It uses an OAuth bearer token (Organization Settings → generate a GDPR/OAuth token), not the service account. Leave blank if you don't need GDPR endpoints. Stored encrypted.Encrypted with AES-256-GCM on save and never shown again. |
PopMCP verifies the credential against Mixpanel immediately. On success the connection flips to Verified and its MCP tools are provisioned.
Verify it worked
PopMCP shows the connector as Connected and names your project, and a test segmentation query returns event counts rather than a 401 Invalid credentials error.
Troubleshooting
401 Invalid credentials
Why: Wrong regional host, or the username was pasted without its full .mp-service-account suffix.
Fix: Copy the whole username string and set Region to us, eu or in to match the project's residency.
Queries succeed but return no data
Why: The credentials are valid but aimed at the wrong regional host, so the project looks empty.
Fix: Check whether you sign in at mixpanel.com, eu.mixpanel.com or in.mixpanel.com and set Region to match.
403 on one specific project
Why: That project was not ticked under Granted Projects when the service account was created.
Fix: Delete and recreate the service account with the project selected, or create a project-level service account instead.
You lost the secret
Why: Mixpanel displays the secret only on the creation dialog.
Fix: Delete the service account under Organization Settings, Service Accounts, and create a new one.
Ingestion tools fail with a missing token error
Why: The track, engage and groups endpoints need the Project Token, which is a separate credential.
Fix: Copy the Project Token from Project Settings, Access Keys, into the optional Project Token field.
Credentials stopped working after a few months
Why: An expiration date was set when the service account was created.
Fix: Create a replacement service account with no expiration and rotate it on your own schedule.
The Service Accounts tab is not visible
Why: Your organization role is below Admin.
Fix: Ask an Owner or Admin to create the service account and hand you the username and secret.