On this page

Migrate From Mixpanel

The Amplitude Professional Services team compiled this guide to help you migrate from Mixpanel and start getting insights quickly.

Customer case study

Learn how Whisk migrated from Mixpanel to Amplitude on the Amplitude Blog.

Import Mixpanel historical data

Amplitude offers two options to migrate historical data from Mixpanel:

Mixpanel import tool

With your Mixpanel project's API key or service account credentials, this tool uses Mixpanel's Export API to export event data from Mixpanel and import it to your Amplitude project.

Limitations

  • The tool processes about 160,000 events per batch.
  • The tool doesn't support User Profile imports. To import user profile information, use one of the following options:
    • Export your data from Mixpanel with the Mixpanel Export and Engage APIs, and import it to Amplitude with the Batch Event Upload API.
    • Contact Amplitude Support or your Amplitude account manager to get custom services from Amplitude's Professional Services team.

Troubleshooting

If the import tool responds with an authentication error:

  • Confirm you provide the correct authentication to the Mixpanel import tool.
  • If you use your Mixpanel project's API key, reference the correct project. Each project in Mixpanel has its own API key.
  • If you use a Mixpanel service account, enter the credentials as follows:
  • If you don't have the username and password for your Mixpanel project's service account, create a new service account for your project and copy the values.
  • Confirm your Mixpanel service account has permission to access the information you need. Test your credentials with Mixpanel's Download Data page. If the page responds with a 200 status, your service account has the necessary permissions.

If the import tool doesn't complete or responds with a generic error:

  • The data set may be too large to process. Try again with a narrower time range, aiming for no more than ~160,000 events per batch.

If the tool imports fewer transactions than expected:

  • Amplitude detects and excludes duplicate events. If your data contains many duplicates, Amplitude imports fewer events than expected.
  • Some Mixpanel events may not be compatible with Amplitude events because of missing information. If your Mixpanel instrumentation doesn't capture fields like name, date, or device ID, Amplitude may not import those events.

Amplitude Batch Event Upload API

Export your data from Mixpanel through the Mixpanel API and upload it to Amplitude with the Batch Event Upload API. If you host your data in another external source, you can also use the batch endpoint to upload data to Amplitude.

Professional Services

To get custom services from the Amplitude Professional Services team, contact your Amplitude account manager.

Plan new Amplitude tracking from Mixpanel

Set product goals

Before you start implementation, confirm that stakeholders and team members agree on what you want to get from the data and which use cases to focus on.

Common use cases by industry

Goal: Understand product engagement.

Key points:

  • See how your users convert through critical funnels: acquisition (free trial, sales, partner, POC), onboarding, activation, workflow, cross-sell/upsell funnels.
  • Target the right customers at the right time to move them through a critical funnel.
  • Find patterns in the way your customers move through key milestones (acquisition, onboarding, activation, renewal).
  • Understand different customer segments’ use and adoption to define key personas based on use cases and needs.
  • Optimize your product experience to target different customers personas needs and make them more successful.

Design and instrument a data taxonomy

Choose an instrumentation method

You can send data to Amplitude client-side, server-side, or through a third party. Use the following options based on where you track events:

Map Mixpanel methods to Amplitude methods

The mapping between Mixpanel and Amplitude tracking and identification methods depends on the type of data.

Event tracking
  • Mixpanel tracks events with the 'mixpanel.track()' method, which takes an event name and a set of properties.
  • Amplitude tracks events with the 'amplitude.getinstance().logEvent()' method, which takes an event name and a set of properties as a JSON object.
Property tracking

Mixpanel super properties attach to all subsequent events. Amplitude user properties function similarly: after you set them, they attach to all subsequent events that Amplitude ingests.

  • In Mixpanel, set super properties with the 'mixpanel.register()' method.
  • In Amplitude, update user properties with the 'amplitude.identify()' method.
User identification
  • Mixpanel identifies a user with the 'mixpanel.identify()' method, using a combination of distinct_id (a randomly generated identifier on a specific platform) and user_id (set by the instrumenting team).
  • Amplitude identifies a user with the 'amplitude.identify()' method, using a combination of device_id (a randomly generated identifier on a specific platform) and user_id (set by the instrumenting team).

For more on how Amplitude resolves user identities, refer to Track unique users.

Data privacy considerations

Consider the following features and areas when managing your customer data:

GDPR compliance

Amplitude is fully GDPR compliant. For more information about compliance, refer to Security and Privacy.

Amplitude maintains a user privacy API that lets you service end user data deletion requests.

Feedback or questions

To submit feedback or questions about this implementation guide, use this form.

Was this helpful?