Mixpanel integration summary

Stitch’s Mixpanel integration replicates data using the Mixpanel Data Export API. Refer to the Schema section for a list of objects available for replication.

Mixpanel feature snapshot

A high-level look at Stitch's Mixpanel (v23-12-2015) integration, including release status, useful links, and the features supported in Stitch.

STITCH
Release status

Deprecated on June 2, 2020

Supported by

Stitch

Stitch plan

Standard

API availability

Not available

Singer GitHub repository

Not applicable

REPLICATION SETTINGS
Anchor Scheduling

Supported

Advanced Scheduling

Unsupported

Table-level reset

Unsupported

Configurable Replication Methods

Unsupported

DATA SELECTION
Table selection

Supported

Column selection

Unsupported

Select all

Supported

TRANSPARENCY
Extraction Logs

Unsupported

Loading Reports

Supported

Connecting Mixpanel

Step 1: Retrieve your Mixpanel API credentials

  1. Sign into your Mixpanel account.
  2. Click Account, which is located in the upper right portion of the screen.
  3. In the modal that displays, click Projects.

    Note: This window is different than the Project Settings window, which is accessed using the gear icon in the lower left corner. The window you need can be accessed only by clicking Account > Projects.

  4. Your API credentials will display:

    Mixpanel API credentials.

    Leave this page open - you’ll need it to complete the setup in Stitch.

Step 2: Add Mixpanel as a Stitch data source

  1. Sign into your Stitch account.
  2. On the Stitch Dashboard page, click the Add Integration button.

  3. Click the Mixpanel icon.

  4. Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.

    For example, the name “Stitch Mixpanel” would create a schema called stitch_mixpanel in the destination. Note: Schema names cannot be changed after you save the integration.

  5. Paste your API credentials in the the API Key and Secret fields, respectively.

Step 3: Define the historical sync

The Sync Historical Data setting defines the starting date for your Mixpanel integration. This means that:

  • For tables using Key-based Incremental Replication, data equal to or newer than this date will be replicated to your destination.
  • For tables using Full Table Replication, all data - including records that are older, equal to, or newer than this date - will be replicated to your destination.

For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.

Note: Mixpanel limits the number of days historical data may be accessed, depending on your Mixpanel plan. If you select a Start Date greater than what your Mixpanel account has access to, the Mixpanel API will return an error and prevent Stitch from extracting data.

For example: If you have a Starter Free Mixpanel plan, you have access to 90 days of historical data (as of 04/28/2020). If you select a Start Date greater than 90 days, Mixpanel’s API will prevent Stitch from extracting your data.

Refer to Mixpanel’s documentation for more info and to check your Mixpanel account’s historical data access limit.

Step 4: Create a replication schedule

In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.

Mixpanel integrations support the following replication scheduling methods:

To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.

Step 5: Set objects to replicate

The last step is to select the tables you want to replicate. Learn about the available tables for this integration.

Note: If a replication job is currently in progress, new selections won’t be used until the next job starts.

For Mixpanel integrations, you can select:

  1. **Individual tables **

  2. All tables and columns

Click the tabs to view instructions for each selection method.

  1. In the Integration Details page, click the Tables to Replicate tab.
  2. Locate a table you want to replicate.
  3. To track a table, click the checkbox next to the table’s name. A blue checkmark means the table is set to replicate.

  4. Repeat this process for all the tables you want to replicate.
  1. Click into the integration from the Stitch Dashboard page.
  2. Click the Tables to Replicate tab.

  3. In the list of tables, click the box next to the Table Names column.
  4. In the menu that displays, click Track all Tables and Fields:

    The Track all Tables and Fields menu in the Tables to Replicate tab

  5. Click the Finalize Your Selections button at the bottom of the page to save your data selections.

Initial and historical replication jobs

After you finish setting up Mixpanel, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.

For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.

Free historical data loads

The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.


Mixpanel replication

Because of how Mixpanel’s API is designed, two of the three tables in the Mixpanel integration - the mixpanel_export and mixpanel_funnels tables - can only be queried by day.

This means that every time Stitch runs a replication job for a Mixpanel integration, the past day’s worth of data will be replicated for each of these tables.

To prevent the re-replication of data that will count against your row count, we recommend setting the Replication Frequency to something less frequent.


Mixpanel table reference


mixpanel_engage

Replication Method: Full Table
Primary Key: distinct_id
Contains Nested Structures?: Yes

The mixpanel_engage table contains info from People Analytics, which will enable you to do user-level analysis. This data is only available to Mixpanel customers with a People Plan.

Table Info & Attributes

mixpanel_engage & Nested Structures

This table contains nested structures. If you use a data warehouse that doesn't natively support nested structures, some of the attributes listed below may be in a subtable.

These items are marked with a *

mixpanel_engage Attributes

While we try to include everything Mixpanel has here, this may not be a full list of attributes. Refer to Mixpanel's documentation for a full list and description of each attribute.

  • distinct_id

  • created

  • email

  • first_name

  • last_name

  • last_seen

mixpanel_export

Replication Method: Key-based Incremental
Primary Key: event:time:distinct_id:_rjm_record_hash
Contains Nested Structures?: No

The mixpanel_export table contains raw event data.

Table Info & Attributes

Replication

Because of how Mixpanel’s API is designed, this table can only be queried by day. This means that every time Stitch runs a replication job for a Mixpanel integration, the past day’s worth of data will be replicated for this table.

mixpanel_export Attributes

While we try to include everything Mixpanel has here, this may not be a full list of attributes. Refer to Mixpanel's documentation for a full list and description of each attribute.

  • distinct_id

  • event

  • mp_country_code

  • mp_lib

  • mp_reserved_browser

  • mp_reserved_browser_version

  • mp_reserved_city

  • mp_reserved_current_url

  • mp_reserved_initial_referrer

  • mp_reserved_initial_referring_domain

  • mp_reserved_lib_version

  • mp_reserved_os

  • mp_reserved_region

  • mp_reserved_screen_height

  • mp_reserved_screen_width

  • time

  • _rjm_record_hash

mixpanel_funnels

Replication Method: Key-based Incremental
Primary Key: funnel_id:date
Contains Nested Structures?: Yes

The mixpanel_funnels table contains contains info about your Mixpanel funnels.

Table Info & Attributes

mixpanel_funnels & Nested Structures

This table contains nested structures. If you use a data warehouse that doesn't natively support nested structures, some of the attributes listed below may be in a subtable.

These items are marked with a *

Replication

Because of how Mixpanel’s API is designed, this table can only be queried by day. This means that every time Stitch runs a replication job for a Mixpanel integration, the past day’s worth of data will be replicated for this table.

mixpanel_funnels Attributes

While we try to include everything Mixpanel has here, this may not be a full list of attributes. Refer to Mixpanel's documentation for a full list and description of each attribute.

  • funnel_id

  • date

  • steps*: count, step_conv_ratio, goal, overall_conv_ratio, avg_time, event

  • analysis__completion

  • analysis__starting_amount

  • analysis__steps

  • analysis__worst


Questions? Feedback?

Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.