Feature Flag Migration Playbook#95
Conversation
- Updated docs/what-is-mixpanel.mdx - Created images/FeatureFlagSetup.png - Created images/ExperimentSetup.png - Created images/ExperimentSetupMetrics.png - Created guides/strategic-playbooks/feature-flag-migration-playbook.mdx - Updated docs.json Mintlify-Source: dashboard-editor
kurbycchua
left a comment
There was a problem hiding this comment.
Overall comment is we need to make sure we fact check these as we do not want a customer ending up in messing up their experiment / FF data in mixpanel. Migrating the exposure of $experiment_started I find it the easy part, the challenging part is the Experiment report and the FF report of which underlying drives the analysis and the gates
- Updated docs/what-is-mixpanel.mdx - Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
| "guides/strategic-playbooks/onboarding-playbook/beyond-onboarding" | ||
| ] | ||
| }, | ||
| "guides/strategic-playbooks/feature-flag-migration-playbook", |
There was a problem hiding this comment.
@amymadden-bit more of a nitpick on this... depending on how we want to position this the actual content has a title of "Migrating Your Feature Flags and Experiments to Mixpanel" but the menu says "Feature Flag Migration Playbook" Also since the content is also covering feature flag that are NOT related to experiments - that's another angle to consider.
There was a problem hiding this comment.
@kurbycchua fair point, it's a bit long but I updated to "Feature Flag & Experiments Migration Playbook" (I think.... I did it in mintlify so hopefully it pulled over)
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
|
|
||
| ## Step 1. Migrate past experiment exposure events | ||
|
|
||
| An exposure event records that a user was enrolled in an experiment, and was bucketed into an experiment variant. To keep your historical data, export your existing exposure events from your current vendor and ingest them to Mixpanel as `$experiment_started` events. |
There was a problem hiding this comment.
@xinlintanmp @amymadden-bit nitpick: This statement "An exposure event records that a user was enrolled in an experiment, and was bucketed into an experiment variant." might imply to readers that exposure events (ie feature gate, dynamic config) not related to experiments need not be migrated.
| "properties": { | ||
| "distinct_id": "alice@example.com", // enrollment ID | ||
| "time": 1709275888, // Timestamp | ||
| "$insert_id": "exp_4821_alice_1709275888", |
There was a problem hiding this comment.
@xinlintanmp maybe a comment like //prevent re-run duplicates
| "status": "enabled", | ||
| "data_group_id": null, | ||
| "serving_method": "client", | ||
| "experiment_id": 12345, |
There was a problem hiding this comment.
@xinlintanmp @amymadden-bit We didn't really explain these? My guess is they should be tied to the id returned when creating the experiment? This is why I think it's important to have an engineer review these examples?
- experiment_id
- is_experiment_active
kurbycchua
left a comment
There was a problem hiding this comment.
See additional comments, I have resolved those that were updated. This is a more detailed read from me and I literally took a longer time trying to push my shoes into someone who is reading this for the first time and trying to figure out how to migrate. It's a good start but I feel it needs more meet to be a playbook
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
Confidence Score: 5/5No additional blocking issue qualifies for this follow-up review.
|
| Filename | Overview |
|---|---|
| guides/strategic-playbooks/feature-flag-migration-playbook.mdx | Adds the feature flag and experiment migration guide. |
| docs.json | Adds the migration playbook to the strategic playbooks navigation. |
| docs/what-is-mixpanel.mdx | Updates the Next Steps section on the Mixpanel introduction page. |
Reviews (5): Last reviewed commit: "Merge branch 'main' into amymadden-ffmig..." | Re-trigger Greptile
|
|
||
| In the case of live experiments, migration will result in users getting reassigned to a different variant mid-experiment. We recommend completing any existing experiments and importing the historical exposure events into Mixpanel, then launching the equivalent experiment fresh in Mixpanel post-cutover. | ||
|
|
||
| 1. **If your code uses OpenFeature**: Swap the provider — replace your current provider with the Mixpanel provider and leave your existing evaluation calls unchanged, as long as your flag keys carried over identically. |
There was a problem hiding this comment.
Provider Swap Changes Evaluation Context
Identical keys are not enough to keep existing OpenFeature calls unchanged. Mixpanel does not treat targetingKey as a special bucketing key, and its web provider does not support per-evaluation context, so applications relying on either behavior can target or bucket users incorrectly after the swap.
There was a problem hiding this comment.
@xinlintanmp @russell-loube-mixpanel anyway to validate what AI said above
| Now that you understand the basics, **we recommend planning the first events you would like to track**. This will help you understand what you need to get started. Choosing these events should take no more than 5 minutes. | ||
|
|
||
| <ExtendedButton title="Plan Your Tracked Events" link="/docs/what-to-track" /> | ||
|
|
||
| #### Already Know What You Want to Track? | ||
|
|
||
| If you already know the events you want to track, you can skip planning and start by installing Mixpanel. | ||
|
|
||
| <ExtendedButton title="Install Mixpanel" link="/docs/quickstart/install-mixpanel" /> | ||
| If you already know the events you want to track, you can skip planning and start by installing Mixpanel. No newline at end of file |
There was a problem hiding this comment.
The updated page still tells readers to plan events or install Mixpanel, but both destination buttons were removed. The onboarding page now ends without a way to perform either recommended next step.
| Now that you understand the basics, **we recommend planning the first events you would like to track**. This will help you understand what you need to get started. Choosing these events should take no more than 5 minutes. | |
| <ExtendedButton title="Plan Your Tracked Events" link="/docs/what-to-track" /> | |
| #### Already Know What You Want to Track? | |
| If you already know the events you want to track, you can skip planning and start by installing Mixpanel. | |
| <ExtendedButton title="Install Mixpanel" link="/docs/quickstart/install-mixpanel" /> | |
| If you already know the events you want to track, you can skip planning and start by installing Mixpanel. | |
| Now that you understand the basics, **we recommend planning the first events you would like to track**. This will help you understand what you need to get started. Choosing these events should take no more than 5 minutes. | |
| <ExtendedButton title="Plan Your Tracked Events" link="/docs/what-to-track" /> | |
| #### Already Know What You Want to Track? | |
| If you already know the events you want to track, you can skip planning and start by installing Mixpanel. | |
| <ExtendedButton title="Install Mixpanel" link="/docs/quickstart/install-mixpanel" /> |
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx Mintlify-Source: dashboard-editor
- Updated guides/strategic-playbooks/feature-flag-migration-playbook.mdx - Created images/Screenshot-2026-07-21-at-4.36.21-PM.png Mintlify-Source: dashboard-editor
kurbycchua
left a comment
There was a problem hiding this comment.
Resolved a couple of comments and kept those that seems unresolved open, @xinlintanmp once you edit something do you mind replying in the comment so I'd know which one you already accounted for?
kurbycchua
left a comment
There was a problem hiding this comment.
@russell-loube-mixpanel tagged you in 2 comments
Summary
This update introduces a new guide for migrating feature flags and experiments from other platforms to Mixpanel. It outlines a five-part process to ensure a smooth transition, covering exposure events, configurations, and verification.
Changes
guides/strategic-playbooks/feature-flag-migration-playbook.mdx.images/FeatureFlagSetup.png,images/ExperimentSetup.png, andimages/ExperimentSetupMetrics.png.docs.jsonnavigation structure.Mintlify
0 threads from 0 users in Mintlify