Most teams do not pick an MMP for its webhooks. They pick it for attribution, then six months later their data team asks a simple question: can we get install and conversion events pushed to our own systems in real time? That is when the pricing page stops being abstract.
In migration conversations, one reason comes up again and again. Teams move off Branch and other legacy MMPs because real-time webhook delivery, the thing their engineering and data teams actually need, sits behind a higher tier or a custom contract. The attribution was fine. The data pipe was paywalled.
This post lays out where webhook delivery sits in Branch's packaging, what that costs in practice, how the other large MMPs handle it, and why we think real-time event delivery should be included on every plan rather than sold as an upgrade.
Branch supports real-time webhooks, but custom webhook delivery is positioned within its Enterprise plan, which is custom-quoted and commonly lands in the five-to-six figure annual range. Linkrunner includes webhook delivery for every event on every plan, including the free tier, with no add-on.
What a webhook actually does for a growth team
A webhook is a real-time HTTP callback. The moment an event happens, an install, an onboarding step, a purchase, a re-engagement, your MMP posts the event payload to a URL you control. No polling, no nightly export, no waiting for a dashboard to refresh.
That matters because attribution data is only useful when it reaches the systems that act on it:
- Your warehouse, so finance and analytics see attributed installs next to revenue.
- Your CRM or lifecycle tool, so a new install triggers an onboarding sequence.
- Your internal services, so a fraud check or a reward payout fires the second a qualified install lands.
- Your alerting, so a Slack channel pings when a campaign spikes.
If that delivery is gated, every one of those workflows either waits for a slower export path or never gets built. For the difference between webhooks, postbacks, and server-to-server callbacks, see webhooks vs postbacks vs server-to-server.
How Branch packages webhooks
Branch does offer real-time webhooks and several data export paths. The constraint is which plan they live on. Custom webhooks and real-time data transfer to internal systems are documented as Enterprise plan capabilities, and Branch Enterprise pricing is fully custom. Public breakdowns put those contracts well into the five and six figures per year, scaling with MAU and the feature set you negotiate.
So the practical picture for a scaling app is this:
- Lower and free tiers give you the dashboard and core attribution.
- The real-time, customizable webhook delivery your data team wants is part of an Enterprise conversation.
- High-volume data export or real-time streaming can carry additional cost depending on contract terms.
None of this is hidden. It is just structured so the data pipe arrives with the enterprise contract, not on day one.
What Enterprise-only delivery costs you in practice
The line-item cost is one thing. The bigger cost is sequencing. When webhooks are tied to a custom contract, you cannot prototype the pipeline while you are still evaluating the MMP. You commit, then you build. That slows the exact teams, data and engineering, who tend to drive MMP migrations.
It also couples two unrelated decisions: how much attribution volume you need, and whether you can stream your own events. A 25-person app that wants install events in its warehouse should not need an enterprise procurement cycle to get them.
How the other large MMPs compare
Branch is not unique here, which is why the pattern is worth naming.
- AppsFlyer delivers raw and real-time data through its Push API and Data Locker. These are powerful, but real-time raw delivery skews toward higher tiers and paid data products, and Data Locker carries its own retention limits. More in the Linkrunner vs AppsFlyer comparison.
- Adjust offers real-time server callbacks that are relatively open, but advanced real-time data exports and raw data pipelines are often reserved for higher tiers or sold as add-ons. More in the Linkrunner vs Adjust comparison.
The takeaway is not that these tools cannot deliver events. They can. It is that the moment you want every event, in real time, to your own endpoint, you tend to move up a tier or into a custom contract.
Webhooks on every plan: the Linkrunner approach
We built Linkrunner as the MMP we wished we had, and that included refusing to paywall the data pipe. Webhook delivery is included on every plan, free included, for every event we track. You can point installs, onboarding events, purchases, and postbacks at any endpoint you control, with no separate data product to buy.
Concretely:
- Real-time webhooks for every event, not just installs.
- Available on the free tier, so you can wire the pipeline while you evaluate.
- No per-event export fee and no add-on SKU.
- The same openness extends to CSV and API exports.
You can see exactly which capabilities sit on which plan on the pricing page, where webhook delivery is a checked row across Free, Growth, and Enterprise.
Migrating from Branch without losing event delivery
The migration itself is lighter than most teams expect, because you are usually replacing a heavier setup with a lighter one:
- Stand up your endpoint and decide which events you need. The webhook setup guide walks through payloads and retries.
- Integrate the Linkrunner SDK. Most teams are sending attributed events the same afternoon.
- Run both pipelines in parallel for a few days and reconcile counts before you cut over.
- Turn off the Branch contract on its renewal date once your warehouse and lifecycle tools are reading from the new feed.
Deep links and deferred deep links come along in the same SDK, so a Branch link migration and a webhook migration are the same project, not two. See deep links for how that side maps over.
FAQ
Q: Does Branch charge extra for webhooks?
Branch includes real-time webhooks and custom data transfer within its Enterprise plan rather than its lower tiers. Enterprise pricing is custom-quoted, so there is no public per-webhook price. Confirm current packaging with Branch directly, since plans change.
Q: Can I get real-time install events on a free MMP plan?
With Linkrunner, yes. Webhook delivery is included on the free tier, so you can stream install and conversion events to your own endpoint without upgrading or signing a contract.
Q: Is a webhook the same as a postback?
They overlap but are not identical. A postback usually sends a conversion signal back to an ad network for optimization, while a webhook delivers the full event payload to any endpoint you choose. The webhooks vs postbacks vs S2S guide breaks down when to use each.
Q: Will migrating from Branch break my existing deep links?
No, if you plan the cutover. You run both setups in parallel, validate that links resolve and events match, then switch on the renewal date. Deep links and webhooks migrate together in one SDK swap.
Q: How many events can I send through webhooks?
On Linkrunner there is no separate webhook allowance to buy. You configure the events you care about and they are delivered as they happen.
Closing
Attribution and your data pipe are two different purchases that legacy MMPs have learned to bundle. Branch can absolutely deliver real-time webhooks, but the customizable, real-time version tends to arrive with an Enterprise contract. If your data team needs events flowing on day one, that sequencing is the friction.
We took the other path. If you want to stream every event to your own systems on a free plan, start measuring with Linkrunner for free or read the docs to see the webhook payloads before you commit.
