Overview
This guide covers using Mixpanel’s Feature Flags through the OpenFeature standard with the Mixpanel Swift OpenFeature provider. OpenFeature provides a vendor-agnostic API for feature flag evaluation, allowing you to switch between providers without changing your application code. For the native Mixpanel SDK approach, see the Feature Flags (Swift) guide.Prerequisites
- A Mixpanel project with Feature Flags — see plan availability
- Swift 5.7+
- Project Token from your Mixpanel Project Settings
Apple Platform Support
Each major version of the provider has its own minimum supported OS. Version 1.x raises the minimum to match the minimum deployment targets of Xcode 27. Use this table to choose the version that fits your app.
If your app needs to support an older OS, stay on 0.x.
Installation
Add the following to yourPackage.swift:
MixpanelOpenFeature as a dependency of your target:
Quick Start
Using an Existing Mixpanel Instance
Usage
Flag Types and Evaluation Methods
Evaluation Context
Context must be set globally viaOpenFeatureAPI.shared.setEvaluationContext():
Runtime Properties
Passcustom_properties in the evaluation context for Runtime Properties targeting:
Unlike some providers,
targetingKey is not used as a special bucketing key. It is passed as another context property. Mixpanel’s server-side configuration determines which properties are used for targeting and bucketing.Full Resolution Details
Error Handling
To avoid
PROVIDER_NOT_READY, use setProviderAndWait:
Troubleshooting
Flags Always Return Default Values
- Provider not ready: Use
setProviderAndWaitto ensure initialization completes. - Network issues: Check for failed requests to Mixpanel’s flags API.
- Flag not configured: Verify the flag exists and is enabled in your Mixpanel project.