TLDR;
- Getting good ROAS on Meta App Ads in London is tough because the market is hyper-competitive. Stop blaming the algorithm; your strategy is likely the problem.
- Stop obsessing over cheap installs (Cost Per Install). It's a vanity metric. The only number that matters is your Customer Lifetime Value (LTV). You need to know how much you can afford to spend to get a profitable user.
- Your targeting is probably too broad or focused on the wrong signals. Prioritise audiences based on high-intent app events (like purchases or trials), not just installs. Create Lookalikes from your best customers, not just anyone who downloaded the app.
- Your ads are probably boring. Use frameworks like Problem-Agitate-Solve to talk about your user's pain, not just your app's features. Test relentlessly.
- This article includes an interactive LTV calculator to figure out your affordable acquisition cost and a flowchart to help you structure your audience testing.
So you're trying to optimise Meta app ads for ROAS in London and finding it a bit of a nightmare. No surprise there. The city is one of the most competitive advertising markets on the planet. Everyone from slick FinTech startups in Shoreditch to massive global brands with offices in Canary Wharf is bidding for the same eyeballs, driving costs through the roof. If your campaign isn't profitable, I can almost guarantee it's not because the Meta algorithm is broken. It's because your approach is wrong.
Too many people think they can just launch an Advantage+ campaign, chuck a budget at it, and watch the money roll in. That's a fantasy. You're not just competing on budget; you're competing on strategy, creative, and a deep understanding of what actually makes a user valuable. Let's be brutally honest: most app advertisers focus on the wrong things, measure the wrong metrics, and end up burning cash with nothing to show for it but a list of low-quality installs from users who churn after a day. It's time to fix that.
Why is getting a decent ROAS so bloody difficult in London?
First, let's get real about the environment you're playing in. London isn't just another city. It's a global hub for finance, tech, and creative industries. This means your app, whatever it does, is competing for attention against some of the most sophisticated and well-funded marketing teams in the world. They have bigger budgets, dedicated creative teams, and data analysts whose only job is to squeeze every last drop of performance out of their campaigns.
This competition has a direct impact on your costs. You're paying a premium for every impression and every click. A user in London simply costs more to reach than one in Manchester or Birmingham, let alone in less developed markets. If your strategy isn't razor sharp, that higher cost will kill your ROAS before you've even started.
The solution isn't to find a "cheaper" platform or a magic targeting hack. It's to build a system that can profitably acquire customers despite the high costs. And that starts with knowing your numbers inside and out.
Are you tracking installs or profit? Figuring out your LTV.
This is the single biggest mistake I see. People get obsessed with their Cost Per Install (CPI). They celebrate when they get it down to £1.50, without any idea if that £1.50 install will ever make them money. A cheap install is worthless if the user opens the app once and never returns. It's a vanity metric that makes you feel good while your business slowly bleeds out.
The only metric that truly matters for ROAS is the relationship between your Customer Lifetime Value (LTV) and your Customer Acquisition Cost (CAC). Your LTV tells you the total profit you can expect to make from an average user over their entire time using your app. Once you know this number, you know exactly how much you can afford to spend to acquire a user and still be profitable.
The calculation is simpler than you'd think:
LTV = (Average Revenue Per User (ARPU) * Gross Margin %) / Monthly Churn Rate %
If you don't know these numbers for your app, you need to stop all your advertising right now and figure them out. You're flying blind. To make it easier, here's a calculator. Play around with it and see how small changes in churn or revenue can massively impact the value of your users.
Your targeting is rubbish because you're telling Meta to find rubbish users.
Armed with your LTV, you can now start telling Meta's algorithm what a good user actually looks like. Most advertisers fail here. They set their campaign objective to "App Installs" and wonder why they get low-quality users. You literally told the algorithm: "Go find me the people who will install this app for the lowest possible price." The algorithm does exactly that, finding users who install everything but never engage or spend money.
You need to optimise for events that happen deeper in the funnel – events that correlate with high LTV. This is called App Event Optimisation (AEO).
First, you need the Meta SDK correctly installed in your app. Then you need to define standard or custom events that signal a valuable user. This could be:
- ->
fb_mobile_content_view(when they view a key screen) - ->
fb_mobile_add_to_cart(if you have e-commerce) - ->
fb_mobile_initiated_checkout - ->
fb_mobile_purchase(the holy grail) - -> Or a custom event like
Completed_Trial_SignuporSubscribed_To_Plan
Once you have enough of these events firing (usually 50-100 per week), you can change your campaign objective from 'App Installs' to 'App Events' and select one of these valuable actions. Now you're telling Meta: "Don't just find me installers. Find me people who are likely to actually purchase." This single change can completely transform your ROAS. I remember one SaaS client we worked with who reduced their Cost Per Acquisition from £100 to just £7 by shifting focus from broad acquisition to optimisng for high-quality signups and using a better funnel.
This same logic applies to your audience building. Stop creating Lookalike audiences from "All App Installers". You're just asking Meta to find more people like the low-quality ones you've already acquired. Instead, create custom audiences of your highest-value users – those who have made a purchase, have a high LTV, or have completed a trial. Then, create Lookalikes from *these* audiences. Now you're cloning your best customers, not just any random user.
Step 1: Low Value
Campaigns optimise for App Installs. Lookalikes are built from all installers. Result: Low CPI, terrible ROAS.
Step 2: Medium Value
Campaigns optimise for Registrations or Trials. Lookalikes built from trial users. Result: Higher CPA, better ROAS.
Step 3: High Value
Campaigns optimise for Purchases. Lookalikes are built from paying customers. Result: Highest CPA, best ROAS.
Does your creative look like every other boring ad?
In a crowded feed, especially in a visually sophisticated market like London, generic creative is a death sentence. If your ad just shows a screenshot of your app with a list of features, you've already lost. Nobody cares about your features; they care about their problems. Your ad's only job is to stop the scroll and make them feel understood.
Instead of listing features, use a proven copywriting framework like Problem-Agitate-Solve (PAS).
- Problem: Hit them with a pain point they feel right now. "Another Friday night spent wrestling with a spreadsheet to track your spending?"
- Agitate: Twist the knife. Make the problem feel worse. "You know you should be saving more for that deposit, but have no idea where the money actually goes. It's stressful, and feels like you're falling behind your mates."
- Solve: Introduce your app as the hero. "Our app connects to your bank in seconds and shows you exactly where every pound is going. Finally, a simple way to build a budget that works. Download for free and see your financial picture clearly in 5 minutes."
This approach works because it connects on an emotional level before it introduces the logical solution. I've seen B2B software clients get huge results this way, and the principle is identical for consumer apps. We recently helped one app get over 45,000 signups at under £2 each by ditching the feature-led ads and focusing purely on the user's pain points and the transformative outcome of using the app.
You also need to be testing different formats. Static images, carousel ads showing a before/after, and short-form video are all essential. User-Generated Content (UGC) style videos – clips that look like they were filmed by a real customer on their phone – can be incredibly powerful as they feel authentic and cut through the polish of professional ads. Testimonial videos, screen recordings with a voiceover, simple animations... you need a constant pipeline of new creative to test. What works today might be dead tomorrow. Relentless testing is the only way to stay ahead.
The final piece: A simple structure for winning
Okay, you know your LTV, you're optimising for high-value events, your targeting is sharp, and your creative is on point. How do you pull it all together? Don't overcomplicate it. A complex account structure is rarely the answer. For most app advertisers, a simple two-campaign setup works best:
- Prospecting Campaign: This is where you find new users. Use an Advantage+ App Campaign and set your performance goal to a high-value event (like Purchases or Trial Signups). Feed it your best creative and your highest-value Lookalike audiences. Let Meta's algorithm do the heavy lifting to find users similar to your best ones.
- Retargeting Campaign: This is for people who have already interacted with you. Create custom audiences of users who installed but didn't purchase, or abandoned a subscription flow. Hit them with different ads – maybe a special offer, a testimonial, or a reminder of the value they're missing out on. The goal here is to push them over the line.
This structure gives you clarity. You know exactly what each campaign is for, and you can allocate your budget accordingly. Most of your spend (80-90%) should go towards prospecting, with a smaller portion (10-20%) dedicated to retargeting.
This is the main advice I have for you:
| Component | Recommendation for Optimising App ROAS in London |
|---|---|
| Core Metric | Stop focusing on Cost Per Install (CPI). Calculate your Customer Lifetime Value (LTV) and your target Customer Acquisition Cost (CAC). This is your North Star. |
| Campaign Objective | Move away from "App Installs". As soon as you have enough data, switch to "App Events" and optimise for a high-value action like Purchases, Subscriptions, or Trial Starts. |
| Prospecting Audiences |
|
| Retargeting Audiences |
|
| Creative Strategy | Ditch boring feature lists. Use Problem-Agitate-Solve to connect emotionally. Test a mix of formats: high-impact video, UGC-style content, and strong static images with clear calls to action. |
| Budget Allocation | Start with an 80/20 split: 80% on your Prospecting campaign (to find new customers) and 20% on your Retargeting campaign (to convert warm leads). |
When you need more than just a blog post
As you can probably tell, this stuff gets complicated, fast. Getting it right isn't just about flicking a few switches; it's a continuous process of analysis, testing, and optimisation. It requires a deep understanding of the platform, the market, and the psychology of your users. It takes time and expertise that many app developers and founders simply don't have.
If you're realy serious about scaling your app profitably in a market as tough as London, it can be incredibly valuable to work with someone who has done it before. We've run campaigns that have generated tens of thousands of signups and trials for apps and SaaS businesses. We live and breathe this stuff every day.
If you've read through this and feel a bit overwhelmed, or if you'd just like a second pair of expert eyes on your campaigns to see what you might be missing, we offer a completely free, no-obligation strategy session. We'll get on a call, have a look at your ad account together, and give you some honest, actionable advice you can implement right away. It's a great way to get a taste of the expertise you need to win.
Hope that helps!