Overview
This guide walks you through how to migrate from your current MMP (Adjust, Singular, Kochava, Appsflyer, etc.) to Branch.
Best practices
To help ensure a seamless transition to Branch, we recommend implementing these best practices:
Start small with tracking link transitions - Begin by switching tracking links on your lowest-spend ad networks first to minimize potential attribution loss during the initial rollout.
Maintain dual SDK coverage - Keep your existing MMP SDK active for a minimum of 2 weeks post-release to ensure continuous data collection from users who haven't yet updated to the latest app version containing the Branch SDK.
Implement a forced app update - Consider requiring users to update to the latest version to ensure your entire user base transitions to Branch SDK rather than remaining on your legacy MMP solution.
Migrate all optimization events - Ensure that every event currently sent to ad networks for campaign optimization is properly configured to flow through the Branch SDK.
Phase your implementation approach - Begin by replicating your current MMP configuration exactly within Branch, then gradually expand functionality and explore additional features once the baseline setup is stable.
Before you begin
To follow the steps in this guide, you must sign up for the Branch Growth Platform. Some features are included in the Branch Growth Platform, while others require a specific package. Please visit our Pricing page or contact our Sales team to learn more.
Note
You must add a payment method to your account within 30 days of creating it. Learn more on our billing page.
Audit current MMP
Before you start migrating to Branch, you’ll need to understand your current MMP setup and the features that you use. We recommend creating an inventory of this so you know what needs to migrate to Branch.
You can also think about whether you want to add additional functionality to your setup by broadening the scope of features you use with Branch.
Alternatively, you may want to do some cleanup and maintenance during the migration to get rid of things like unused links or old events.
After you complete this step, you’ll be ready to start migrating to Branch.
Expand to view tasks
Organic channels
Task | Owner | Description |
---|---|---|
Inventory owned links | Marketing Team | For every link you are using with your existing MMP, you will need to replace that with a Branch Link. This means determining where all the links you are using today in your organic/owned channels live. |
Domain | Marketing Team | Note what your current domain is and whether it’s: For example, if the domain is branded and ends in |
Paid channels
Task | Owner | Description |
---|---|---|
Audit ad partners | Marketing Team | Create a list of the ad partners that you are using with your current MMP. |
Assess SKAN | Marketing Team | Confirm whether your team uses SKAN with your current MMP, and whether this setup was implemented in-house. |
Inventory ad links | Marketing Team | For every link you are using with your existing MMP, you will need to replace that with a Branch Ad Link. This means determining where all the links you are using today in your paid channels live. |
Audit events used for optimization | Marketing Team | Create an inventory of the events you currently use to optimize paid media spend. Your Development Team will need to track these through the Branch SDK, so they get forwarded to ad partners. |
Data
Task | Owner | Description |
---|---|---|
Account for data exports | Data Team | Determine the ways in which you are exporting data out of your current MMP, and decide whether you would like to replicate the same setup in Branch. |
Plan event tracking | Marketing Team | Create a list of all the events your current setup tracks. Decide whether you would like to continue tracking the same events with Branch. |
Consider importing existing users | Data Team | If your MMP allows you to export a list of your existing user IDs, you’ll need to think about whether you want to import this list into Branch. |
Migrate to Branch
Follow these steps to transition from your current MMP to Branch while preserving your attribution data and minimizing disruption to your marketing campaigns.
Step 1: Import historical data (optional)
You have two options for this step:
Skip if: You're comfortable starting fresh with new data collection.
Complete if: You want to preserve historical attribution data and user profiles. Once you have your data in the required format, the Branch team will import this data into our system. We recommend importing a maximum of six months of data.
Caution
If you install the Branch SDK without completing this step first, all existing users will appear as new installs in your data.
After you complete this step, you’ll have historical data in Branch that you can start to gain new insights into.
Expand to view tasks
Task | Owner | Description | Time estimate* |
---|---|---|---|
Export data out of current MMP | Data Team | Export device IDs and timestamps from current MMP. Ensure you have IDFA/IDFV for iOS devices and GAID/Android ID for Android devices | 1 day |
Format data in Branch-compatible format | Data Team | Format data into JSON line text format with required fields (timestamp, app_id, device IDs). Reference our importing guide for exact format requirements and optional attribution fields. Please note that you will also need your Branch App ID, which you can find in the Profile tab of the Account Settings page. | 2 days |
Share your data files with the Branch team | Data Team | Once you have submitted the files to Branch in the right format, the Branch team will ingest this data into our database. | 2 days |
Step 2: Configure Branch and integrate SDK
Set up your Branch account, integrate the Branch SDK into your mobile app, and release the updated version.
After you complete this step, Branch will start actively tracking attribution data for your app, and you'll be ready to begin transitioning your marketing campaigns to use Branch Links.
Expand to view tasks
Task | Owner | Description | Time estimate* |
---|---|---|---|
Set up Branch Dashboard | Marketing Team | Configure important fields within the Branch Dashboard, such as link domain and global attribution window settings. Visit our general onboarding guide for more details. | 1 day |
Set up Branch SDK, track Branch Events, and validate setup | Mobile Development Team | Integrate the Branch SDK into your app and use it to start tracking Branch Events. Visit our general onboarding guide for more details. | 8 days |
Release your app | Mobile Development Team | Important: If you choose to import historical data, please ensure that the import is complete before you release the app. | 1 day |
Warning
If you are planning to use the same custom domain on Branch as your previous MMP, you will need to CNAME the domain and migrate the links. Migration of the domain can lead to a short down time when transitioning to Branch.
Step 3: Migrate owned links
Owned media refers to attribution links you use in content sharing, email, SMS, referrals, social media posts, blogs, and push notifications. Use Branch Short Links (App Links or Web Links) for these channels.
After you complete this step, all your owned media channels will be using Branch Links for attribution tracking.
Expand to view tasks
Task | Owner | Description | Time estimate* |
---|---|---|---|
Re-create owned links in Branch | Marketing Team, Development Team | Using your existing owned links as reference, re-create your links with Branch. You have several options for how to create links: in the Dashboard, with one of our APIs, or using the SDK. | 2-5 days, depending on how many links you need to re-create |
Replace old owned links | Marketing Team | Replace your existing owned links from your old MMP with your new Branch Links. | 1-3 days, depending on how many links you need to replace |
Step 4: Set up ad partner configurations
Configure self-attributing network (SAN) ad partners like Google and Facebook, set up other non-SAN ad partners, and gradually replace your existing ad campaign links with Branch Ad Links.
After you complete this step, all your paid advertising channels will be integrated with Branch, giving you unified attribution measurement across both owned and paid user acquisition efforts.
Expand to view tasks
Task | Owner | Description | Time estimate* |
---|---|---|---|
Integrate SAN partners in Branch | Marketing Team | Enable all relevant SAN partners in the Branch Dashboard, and map your Branch Events to the ad partner events.
| 15 minutes per ad partner |
Replace SAN links | Marketing Team | In your SAN campaigns, replace each of your existing MMP ad links with a Branch Ad Link. Learn more in our Ad Link guide. | 1-2 days, depending on how many links you need to re-create and replace |
Integrate non-SAN partners in Branch | Marketing Team | Enable all relevant non-SAN partners in the Branch Dashboard, and validate the postbacks to ensure the right events are sent to the ad partner. | 15 minutes per ad partner |
Replace non-SAN links | Marketing Team | In your non-SAN campaigns, replace each of your existing MMP ad links with a Branch Ad Link. Learn more in our Ad Link guide. | 1-2 days, depending on how many links you need to re-create and replace |
Use SKAN with Branch | Marketing Team, Development Team | SKAN postbacks can be supported only by a single MMP. If your existing MMP is already sending SKAN postbacks to Apple, you will need to wait until the legacy MMP is fully disabled to start using SKAN with Branch.
| 5 hours |
Step 5: Set up data exports
Configure integrations to send Branch data to supported data partners. This ensures your downstream systems continue to receive the attribution data they need without interruption.
To determine which Branch data export(s) best fit your use cases, check out this blog post.
After you complete this step, your migration to Branch will be functionally complete. All your marketing channels will be tracked through Branch, and your data infrastructure will be receiving Branch attribution data for analysis and reporting.
Expand to view tasks
Task | Owner | Description | Time estimate* |
---|---|---|---|
Integrate Branch with data partners | Data Team | If you’d like to send Branch data to a supported data partner, you can configure that integration in the Branch Dashboard. Visit our general Data Integration Implementation guide for more details. | 15 minutes per partner |
Pass partner-specific metadata to Branch SDK | Data Team | To pass Branch Event data to your data partner, you will first need to pass partner-specific metadata to the Branch SDK. | 1 hour |
Export Branch data using APIs | Data Team | You can export Branch data either at the aggregate-level or the log-level based on your requirements.
| 3 hours |
Test and validate your setup | Data Team | For data partner integrations, you can reference the Liveview Webhook Records tab to monitor the data being passed to your data partners in real time. | 1 hour |
Additional support
Branch offers several ways to connect with expert guidance as you learn how to use all the powerful features of the Branch Growth Platform.
Live trainings
For continued learning, Branch University offers live, expert-led training sessions designed to help you master our products, sharpen your skills, and gain hands-on experience. These sessions provide an opportunity to ask questions directly to our trainers, ensuring you get the most out of the Branch Growth Platform.
Professional Services
For deeper technical support, QA testing, or custom solutions, our Professional Services team is here to help. We offer dedicated workshops to better understand your goals, assist with setup, and provide guidance through go-live and beyond.
To learn more, please reach out to your Branch point of contact or contact our Sales team to request scoping.
*The time estimates provided for each task are approximate and intended as general guidance. Actual completion times may vary depending on factors such as your team’s prior experience with Branch and the complexity of your existing app logic.