Trading apps are one of the hardest categories in mobile user acquisition. The payout per user is high enough to attract every bad actor in the ecosystem, the compliance bar rules out most aggressive creative, and the gap between an install and a funded account is wide enough that install-level metrics can look healthy for weeks while the campaign quietly loses money.
When we took on OctaFX's acquisition in a set of high-competition Asian and Latin American geos, the brief was direct: bring cost per install down without trading away the quality of the accounts behind it. Over sixty days, blended CPI came down 28%. Here is how, and more usefully, why.
Starting point: a good campaign with a measurement problem
The existing setup was not broken. Volume was there, attribution was running through a tier-one MMP, and the creative was competent. The problem was that performance was being read at the campaign level, where a handful of strong sub-publishers were masking a long tail of sources producing installs that never became accounts.
Blended numbers hide this by design. A campaign averaging an acceptable CPI can easily be one source at half that rate carrying four sources at triple. Until the reporting is broken out to the sub-publisher level, every optimisation is a guess — and the guesses tend to cut the sources with the least volume rather than the worst economics.
So the first two weeks produced no cost saving at all. They produced visibility: every source broken out, every install matched against downstream registration and funding events, and a hard rule that no source would be judged on installs alone.
Step one: fraud filtering before optimisation
There is no point optimising a mix that contains invalid traffic, because fraud does not respond to optimisation — it responds to elimination. We ran the inbound traffic against layered checks rather than a single filter:
- Device and emulator fingerprinting, to catch installs originating from farms rather than handsets.
- Click-to-install time distribution analysis — organic behaviour has a characteristic curve, and click injection does not.
- IP and carrier consistency checks against the claimed geo, which removes a surprising share of proxied traffic.
- Behavioural checks on the first session, where genuinely interested users and scripted ones diverge immediately.
Sources failing these checks were cut rather than renegotiated. That is a deliberate choice: a publisher sending invalid traffic at scale is not a partner with a quality problem, and time spent managing them is time not spent scaling the sources that work.
The immediate effect of the cut was that CPI went up, not down, because the cheapest installs were the fraudulent ones. This is the part of the process that requires a client with nerve, and it is why the sixty-day window mattered.
Step two: rebuild the traffic mix around downstream events
With a clean baseline, we rebuilt the source mix using registration and funding rate as the ranking signal instead of install cost. Sources were grouped into three tiers and treated differently:
- Proven sources with strong downstream conversion had budget increased and were given first access to new creative.
- Mid-tier sources were kept on capped spend while we tested whether their conversion gap was a traffic problem or a creative-fit problem.
- Everything below a defined registration threshold was paused, regardless of how attractive its install cost looked.
The reallocation is where most of the gain came from. Concentrating spend on sources that convert lowers effective acquisition cost twice over: you pay less per useful user directly, and you stop funding the installs that were never going to register at all.
Step three: geo-level creative rather than translated creative
Trading is a category where trust does most of the persuasion, and trust does not translate. Running one creative set with localised copy across several markets consistently underperformed running distinct creative built around what each market actually responds to — regulatory reassurance in some, platform mechanics in others, payment-method familiarity almost everywhere.
Rebuilding creative per geo rather than per language lifted click-to-install conversion enough to lower CPI on the same inventory at the same bids. It is the least technical lever in this entire case study and one of the most effective.
Step four: tighten the feedback loop
The final change was operational. Optimisation moved from a monthly review to a weekly cycle with sub-publisher reporting shared openly with the publishers themselves. Partners who can see exactly which of their placements are converting will fix their own mix, because their earnings depend on it.
Transparency is not a courtesy in performance marketing. A publisher who can see what is working optimises toward it without being asked.
The result
By the end of the sixty days, blended CPI was down 28% against the starting baseline. More importantly, the registration rate on acquired installs improved over the same period rather than degrading — which is the test of whether a CPI reduction is real or simply the result of buying cheaper, worse users.
The pattern generalises. Almost every campaign that appears to have a cost problem turns out to have a visibility problem underneath it. Break performance out to the source level, remove invalid traffic before optimising anything, rank sources on the event that actually predicts revenue, and let creative be genuinely local. The cost curve follows.
None of this is proprietary. What is hard is the discipline to spend the first two weeks measuring instead of cutting, and the willingness to let CPI rise before it falls.