What you'll set up
- Server-side forwarding of every short-link click in your workspace to Mixpanel as a
link_clickevent, with no JavaScript on the redirect. - Your Mixpanel Project Token plus a Data residency setting (US, EU or India) so events reach the host your project lives on.
- A Test connection button that shows Mixpanel's raw answer, and what that answer can and can't prove.
Elido sends a link_click event to Mixpanel's ingestion API each time someone clicks one of your short links. If your team already works in Mixpanel, link engagement shows up next to your product events without adding a tracking script anywhere.
Only clicks are forwarded. Forwarding conversion events to Mixpanel is planned.
What you need
- A Mixpanel project.
- The project's Project Token. It isn't a secret in Mixpanel's model, but Elido still stores it encrypted.
- To know your project's data residency: US, EU or India.
- The Admin or Owner role in your Elido workspace (the
conversions.managepermission).
Step 1: Find your project token and residency
- Log in to Mixpanel and open Settings → Project Settings.
- Under Access Keys, copy the Project Token. Don't use the API Secret or a service account; Elido doesn't need them.
- Check the project's Data Residency value. You'll pick the same one in Elido.
Step 2: Connect in Elido
- Go to Dashboard → Integrations → Mixpanel.
- Click Connect Mixpanel.
- Paste the token into Project Token.
- Set Data residency to match your project:
- United States sends to
api.mixpanel.com(the default). - EU sends to
api-eu.mixpanel.com. - India sends to
api-in.mixpanel.com.
- United States sends to
- Click Save. The panel now shows Connected and the token masked to its first and last four characters.
Forwarding covers every link in the workspace; there's no per-link switch. It starts within about 5 minutes of saving, and a changed token or residency, or a disconnect, takes effect within the same window.
Step 3: Test the connection
Click Test connection. Elido sends one link_click event with elido_test: true and slug _test, and shows Mixpanel's answer under the button: the HTTP status, the host it posted to, and the response body.
A pass isn't proof. Mixpanel's /track endpoint doesn't check whether the token is valid or whether the project lives on that residency, so a wrong token or the wrong region can still pass. A failure, on the other hand, is real: Mixpanel rejected the event, and the message says why.
What Elido sends
Each click becomes one event:
{
"event": "link_click",
"properties": {
"token": "your-project-token",
"distinct_id": "elido-link-4711",
"time": 1789000000,
"workspace_id": 42,
"link_id": 4711,
"slug": "spring-26",
"destination": "https://example.com/spring",
"country": "DE",
"device": "mobile",
"ip": "203.0.113.7"
}
}
distinct_idiselido-link-plus the link ID, so it's one value per link, not per visitor.timeis the click time in Unix seconds.destinationis the URL the visitor was sent to.countryis a two-letter country code anddevicethe device type.ipis the visitor's IP address; Mixpanel uses it for its own geolocation.- The test event adds
elido_test: true.
Every recorded click is forwarded, including clicks Elido's analytics flags as suspicious or bot traffic. If Mixpanel is unreachable, Elido retries once after a second and then drops that event; there's no backlog or replay. For a field-by-field walkthrough and report ideas, see Mixpanel link_click events.
How distinct_id works, and its limits
Because distinct_id is per link, every click on the same link counts as the same Mixpanel "user". That means:
- Uniques on
link_clickcount links, not people. Use total event counts instead. - Funnels from
link_clickto your signup or purchase event won't join up, because those events belong to a differentdistinct_id. - Mixpanel's hot-shard limit applies per
distinct_id, so one very busy link is where it would bite first.
To follow a person from click to signup today, put UTM tags on the destination URL and let the Mixpanel SDK on your landing page capture them, then identify the user there as you normally would.
Troubleshooting
Test connection passes, but nothing shows in Mixpanel. Check the token first: copy it again from Settings → Project Settings → Access Keys. Then check Data residency against the project's setting. Both mistakes pass the test, as explained above.
Test connection fails. Read the error and response body under the button; they come straight from Mixpanel. Fix the token or residency, click Update key, save, and test again.
Events land in the wrong project. Tokens are per project. If you have several, make sure you copied the token from the project you meant.
Real clicks don't appear right after connecting. Forwarding can take up to about 5 minutes to start. Click a short link after that, then check the Events view.
Mixpanel users don't match your identified users. That's expected: Elido's distinct_id is per link. See the section above for the UTM workaround.