How to Build Better Lookalike Audiences (When Meta's Modelling Stalls)
A three-step playbook for improving lookalike performance: seed from real UK household attributes, enrich Klaviyo first, then activate on Meta.
The short version
- A lookalike is only as good as its seed. Most seeds are "all purchasers, all time" plus whatever the pixel caught, which is exactly the audience the algorithm was already going to find.
- Three fixes, in order: seed from real household attributes, enrich your Klaviyo profiles before you build the seed, then activate on Meta either as a custom seeded lookalike or as a ready-made household audience.
- Household attributes are the part Meta can't see. Move stage, tenure, property size, purchasing power, family stage. They come from property and address-level records, not from clicks.
Why your lookalikes stopped working
You've tested creative, rebuilt the funnel, tightened the copy. CPA still drifts up and ROAS is flat. Before blaming the creative again, look at the seed.
Meta builds a lookalike by modelling who resembles the people you uploaded, using signals it holds. Those signals are digital: logged-in behaviour, on-platform engagement, whatever your pixel still manages to pass through consent and ATT. It's a decent model of digital similarity. It is not a statement about who is about to buy a sofa.
Two things then compound. First, Meta has spent four years retiring the detailed levers that used to let you shape delivery yourself (the full timeline is in Meta removed detailed targeting). Second, every brand in your category is uploading a similarly-shaped seed and getting a similarly-shaped modelled pool. Same inventory, same auction, more bidders.
Intent doesn't start with a click. Someone who has just moved, is about to renovate, or has a new baby changes what they buy and how much they'll spend. That event exists in the world before it exists in the ad platform, and it exists at an address, not at a cookie.
Step 1: Seed from household attributes, not just pixel behaviour
The point isn't to fight the algorithm. It's to hand it a sharper starting point. Outra maps household attributes across 30M+ UK homes, built from property records, address-level data and modelled signals rather than browsing behaviour:
| Attribute group | Examples | What it tells you a click can't |
|---|---|---|
| Move stage | Predicted move, move intent, moving, just moved, sale anniversary | Whether the household is inside a buying window right now |
| Property | Type, bedrooms, size, value band, garden, garage, tenure | Whether your product physically fits the home |
| Purchasing power | Purchasing power band, household income band, credit band | Whether the AOV is realistic before you discount |
| Life stage | Family stage, age band, employment stage | Whether the need exists at all |
A seed defined this way survives being read aloud in a planning meeting: "owner-occupiers in 3+ bed homes, £75k+ purchasing power, moved in the last six months." Compare that to "lookalike 3% of purchasers, 2024 export." One of those is a hypothesis you can test and iterate. The other is a shrug.
Step 2: Enrich Klaviyo before you build the seed
Most D2C brands build the Meta seed by exporting a Klaviyo segment. That means the seed inherits whatever Klaviyo knows, which is behaviour: opens, clicks, orders, RFM. Useful, but it describes what people did, not who they are.
Enrich first and the same export carries household context with it. Match your list to UK households, append the attributes as Klaviyo profile properties, and your segments can be defined on life event rather than engagement recency. The mechanics take about ten minutes and no engineering ticket: how to add household intelligence to Klaviyo.
Worked example: a seed worth modelling from
Instead of "Placed Order at least once over all time", build the seed segment as:
- Placed Order at least 2 times in the last 12 months
- AND Purchasing power band is one of the top two bands
- AND Property type is not Flat (if your product needs floor space)
- AND NOT in your suppression segment (active customers, recent purchasers)
Same list, a fraction of the size, and a far more coherent shape for the algorithm to extrapolate from. Then hold your old lookalike live as the control so you can actually read the difference.
The same enrichment pays for itself twice: those attributes also drive flows and personalisation, which is a separate post (five Klaviyo flows you can't build without household data).
Step 3: Activate on Meta
Two routes, and they're not mutually exclusive.
Option A: a custom lookalike from an enriched seed
Upload the enriched segment as a Customer File Custom Audience and build the lookalike from it. Everything that normally determines match rate still applies: field completeness, list recency, and a naming convention that doesn't imply health or financial status. Details in Facebook Custom Audiences.
Option B: a household audience, no seed required
Skip the modelling step and push the households themselves as the Custom Audience: likely movers, renovators, growing families, high purchasing power. Refreshed on an ongoing cadence, and useful before you have the ~1,000 buyers a reliable lookalike needs. You can see who's in it, suppress from it, and compare tests like for like. That's the whole argument in household audiences vs lookalikes, and the activation steps across channels are in activating household audiences in Meta, Google and programmatic.
In practice, most brands run A and B side by side against their incumbent lookalike, and let three weeks of spend settle the argument.
What this has looked like in practice
Two client results, both under real platform constraints rather than in a clean test environment.
Worth being precise about these: they're campaign results reported by those clients in their categories, not a guaranteed range. What travels between accounts is the mechanism, a seed built on real household attributes instead of digital behaviour, not the specific percentages.
How to test it without fooling yourself
- Change one variable. Same creative, same budget, same objective. Audience only.
- Keep the incumbent live. Your existing lookalike is the control, not a memory of last quarter's CPA.
- Suppress existing customers in both cells. Otherwise the cell that happens to contain more past buyers will look like it won, simply because previous customers re-buy faster — not because the audience is actually better.
- Give it a full purchase cycle. Anything under two weeks on a considered purchase is noise.
- Judge on incremental CPA and contribution, not ROAS in platform. More on this in where household-level targeting actually lifts conversion.
The bottom line
Lookalikes aren't broken. Their seeds are thin and everyone's are thin in the same way. Real signal beats modelled signal, so the highest-leverage change is upstream of Ads Manager: enrich the profiles, define the seed on household attributes, and give the algorithm something specific to extrapolate from. Or skip the extrapolation and target the households directly.
Read next
Build transparent prospect audiences, not black-box lookalikes
Pick from ready-made segments, Just moved, Established Professionals, High Purchasing Power, Bigger Families, and push them straight to Meta, Google or TikTok.
What Outra knows about every UK household
All attributes and segments are tied to a single identifier: the household, not an email, not a cookie.
- Employment stage
- Move stage
- Age band
- Family stage
- Occupancy status
- Property type
- Bedrooms
- Property size
- Property value band (£)
- Garden
- Garage
- Parking / Driveway
- Area type
- Region
- Purchasing power band
- Household income band
- Credit score band
- UHW (ultra-high wealth)



