Installing Mixpanel is easy. This guide will show you how to do it with our SDKs.Already collect product data? Connect your Data Warehouse or via 3rd Party Integrations.
Replace YOUR_TOKEN with your project token. You can find your token here.You can learn more about configuring Session Replay and Heatmaps here.
//Import Mixpanel SDKimport mixpanel from "mixpanel-browser";// Near entry of your product, init Mixpanelmixpanel.init("YOUR_TOKEN", { debug: true, track_pageview: true, persistence: "localStorage", record_sessions_percent: 100, //records 100% of all sessions record_heatmap_data: true,});
In Xcode, select File > Swift Packages > Add Package Dependency.
Paste the URL https://github.com/mixpanel/mixpanel-swift and a minimum semantic version of v2.8.0.
Create a Podfile in your Xcode project directory by running pod init in your terminal, edit the Podfile generated, and add the following line: pod 'Mixpanel-swift'.
Run pod install in your Xcode project directory. CocoaPods should download and install the Mixpanel library, and create a new Xcode workspace. Open up this workspace in Xcode or typing open *.xcworkspace in your terminal.
Add github "mixpanel/mixpanel-swift" to your Cartfile.
Add implementation 'com.mixpanel.android:mixpanel-android:7.+' as a dependency to your build.gradle file.Once you’ve updated build.gradle, you can force Android Studio to sync with your new configuration by clicking the Sync Project with Gradle Files icon at the top of the window.If it cannot find the dependency, you should make sure you’ve specified mavenCentral() as a repository in build.gradle.Next, add the following permissions in your AndroidManifest.xml:
<!--Required to allow the application to send events to Mixpanel.--><uses-permission android:name="android.permission.INTERNET" /><!--Optional, but recommended so we can send data intelligently based on network conditions --><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><!-- Optional, but recommended so events will contain information about bluetooth state--><uses-permission android:name="android.permission.BLUETOOTH" />
Replace YOUR_TOKEN with your project token. You can find your token here.
//Import Mixpanel APIimport { Mixpanel } from "mixpanel-react-native";// Set up an instance of Mixpanelconst trackAutomaticEvents = false;const mixpanel = new Mixpanel("YOUR_TOKEN", trackAutomaticEvents);mixpanel.init();
Replace YOUR_TOKEN with your project token. You can find your token here.
import 'package:mixpanel_flutter/mixpanel_flutter.dart';class _YourClassState extends State<YourClass> { Mixpanel mixpanel; @override void initState() { super.initState(); initMixpanel(); } Future<void> initMixpanel() async { // Once you've called this method once, you can access `mixpanel` throughout the rest of your application. mixpanel = await Mixpanel.init("YOUR_TOKEN", trackAutomaticEvents: false); }}
Yes, if you pass track_pageview: true in the mixpanel.init() call, Mixpanel will automatically track a “Page View” event every time a new page is loaded. Learn more here.
What are the recommended web configuration options?
When tracking on web, we recommend using localStorage, as this is more reliable:
Please note that cross-subdomain tracking is not possible when using local storage. If your implementation requires cross-subdomain tracking, remove the persistence flag and use the default “cookie” persistence option.
Does Mixpanel use third-party cookies?
No, our Mixpanel JavaScript SDK does not set or use any third-party cookies. If you wish to disable cookies entirely, you can set the disable_persistence option to true when initializing your Mixpanel JS instance. Note that disabling persistence will disable the use of super properties and anonymous -> identified user tracking.
How can I track in a privacy compliant way?
If a user opts out of tracking, you can call the .optOutTracking() method on any of our client-side SDKs; this prevents any subsequent data being tracked from that user’s device. Learn more here.For iOS specifically: Mixpanel does not use IDFA, so it does not require user permission through the AppTrackingTransparency(ATT) framework. For more details, refer to our Apple App Developer Privacy Guidance.