Most advertisers I talk to have never read Meta’s engineering blog. I get it. The headlines read like conference talks for people who say “GPU kernel” with a straight face. But if you spend real money on Facebook and Instagram, it’s one of the most useful things on the internet, because it’s where Meta explains how the machine actually works, in far more detail than you’ll get from a rep or a help center article.
Meta has published this kind of thing for years. What’s different lately is the volume. In the last three weeks, the engineering team put out three posts on how the ad system picks which ad each person sees: one on GEM (October 13), one on GenRecs Tokenization (October 19) and one on Andromeda (October 28). They came with slides, too, which is great news for those of us who learn better from a picture than from a paragraph about memory bandwidth. I’ve included one below.
I read all three. (Full disclosure: big chunks are about GPU kernels and memory bandwidth. I skimmed those. Aggressively.) Buried between the hardware diagrams is a surprisingly practical picture of what the system pays attention to, and it says a lot about where your creative effort should go.
Your feed already gave this away
Before getting into the models, open Instagram or Facebook and scroll for thirty seconds. Count how many posts come from people you actually know.
Mine is mostly road trips and NBA highlights, from accounts I’ve never heard of and definitely don’t follow. My friends show up when something big happens. Weddings, new babies, funerals. Those still float to the top. The rest of the time, the people I’m connected to are background noise in a feed built around what I watch and tap on. (While I was writing this section, I opened Instagram to check something. First thing in my feed: NBA highlights. Point made.)
That’s the biggest thing that has quietly shifted over the last couple of years. Meta’s feed works a lot more like TikTok now than like the social network it started as. Who you know matters less. What you care about matters more. Watch a few NBA highlights and you get more NBA highlights. Linger on any topic, really, and the system takes the hint, keeps feeding you more of it and gets a little sharper about you every time you stop scrolling.
The other tell is what gets passed around. On Reels, check the paper airplane icon on the side, which shows how many times a video has been sent in DMs. The ones with huge numbers usually make sense the second you watch them: the clip you’d send your brother, the bit your group chat would lose it over. What you send, and what people send to you, probably says more about what you care about than a passive like does. Not surprisingly, Meta picks up on that. My read is that it helps ad delivery when your ad lives in the same lane as the stuff people are already sending each other.
Ads run on the same logic. The system shows your ad to the people it predicts will care, based on what they’ve been watching and doing, and whether they follow your page matters a lot less than it used to. That’s exactly what those three engineering posts describe, in much more detail than I’d ever get from looking at my own feed.
The personal shopper
The easiest way to picture how the ad side of that works came from Jason Yim, who works in client solutions at Meta. He posted on X this week that the system works like a personal shopper, and Meta’s own slide (below) leans on the same analogy.
Picture a shopper working a store with millions of items. They don’t walk you down every aisle. They pull a short rack based on what they know about you, then pick from that rack. Meta’s system splits the job into three parts that map onto that pretty cleanly.

Meta’s slide uses the same analogy, and it adds a couple of numbers worth sitting with. The whole store is tens of millions of ads, and the narrowing-down happens hundreds of billions of times a day. It also names a model in the “what fits you” step, Meta Lattice, that none of these three posts gets into. (Homework for another day.)
Andromeda searches the store
Andromeda is retrieval, the first stage of the pipeline. Its job is to take the enormous pool of ads you’re eligible to see and narrow it to a short list of strong candidates in milliseconds. A slower, more expensive ranking stage then scores that short list in detail.
The new version is fast in a way that’s hard to picture. Meta says it now scores every eligible ad and clears a billion ads per second on a single GPU server, roughly 100 times the throughput of the 2024 version. Since 2025, Meta credits Andromeda with a 2.4% increase in conversions on Facebook.
Two details in that post matter for advertisers.
The first is how it models people. Andromeda no longer works from a single profile of each person. It runs a group of specialized “expert” models that each capture a different slice of someone’s interests, and those interests shift with time and context. When an ad comes through, a router decides which of those experts are most relevant to that particular ad. My read: an ad that speaks to a different interest gets matched against a different part of the person. That’s the mechanical reason creative diversity matters, and Meta just wrote it down.
The second is why they needed the upgrade in the first place. Meta says generative AI creative tools have helped advertisers produce hundreds of millions of new ads, and the candidate pool exploded. Translation: the store got a lot more crowded, and we’re the ones who crowded it. Your targeting settings still apply (Andromeda enforces them before it scores anything), but inside those settings, your ad is fighting for a spot on the rack against a mountain of ads that came out of the same AI tools yours did.
GEM sizes up the shopper
GEM, Meta’s Generative Ads Model, is the central foundation model for predicting what people will do. Facebook, Instagram, Reels and the rest used to have their own separate prediction systems. GEM learns from all of them at once and predicts clicks and conversions across surfaces and objectives.
What makes it good at sizing up the shopper is sequence. It reads a person’s engagement history in order, the way a language model reads a sentence, and predicts what comes next. Meta found that prediction quality improves predictably as that history gets longer, and it doubled the length of history GEM uses in production.
The numbers Meta attaches to GEM are the biggest in the three posts: an 18.9% improvement in conversions and a 12% improvement in click-through rate across its ad surfaces and objectives, plus conversion lifts of 5.8% on Facebook, 4.1% on Instagram and 1.6% for off-site conversions among targeted users over the past year. (Worth noting: these aren’t apples to apples with the Andromeda number. Different baselines, different measurement. Don’t add them up and promise your boss a 21% lift.)
Two smaller details stuck with me. Patterns GEM learns from clicks, where Meta has mountains of data, carry over into predicting conversions, where data is thinner. And when GEM doesn’t have a direct read on how a specific person will react to a specific ad, it falls back on that person’s recent behavior with similar ads, or borrows from people who behave like them.
Here’s the part advertisers control. Off-site conversion is one of the objectives GEM is trained on, and your pixel and Conversions API are where those conversions come from. If you’re sending patchy, duplicated or late events, you’re handing the most sophisticated model Meta has ever built a smudged receipt. (Yes, tracking cleanup is a big part of what I do for clients, so I’m biased. I’ve also seen what bad event data does to an account’s performance, and it isn’t pretty.)
GenRecs reads your ad
Under the old approach, every ad got its own ID, and the system learned about that ID from how people engaged with it. A new ad was a blank slate. That’s a big reason the learning phase has always felt like paying tuition.
GenRecs Tokenization changes the unit of understanding. Pre-trained multimodal models read each ad’s text and images and translate it into a short string of tokens from a stable vocabulary that describes what the thing actually is. Similar ads share tokens, the way related words share roots. Meta’s example: when a sportswear brand launches next season’s trail shoe, the new product and its ads build on what the system learned from last season’s shoe, before anyone has seen the new ad.
The measured lift is modest, +0.35% in conversions across surfaces as of February 2026, working alongside GEM and Meta’s Adaptive Ranking Model. Meta is clear that the biggest impact lands on tail ads, the new and low-impression stuff that used to struggle hardest.
Now the implication Meta didn’t spell out. If similar ads share tokens, then fifty near-identical variations of the same idea probably look to the system like roughly the same item. New background color, same tokens. That’s my inference, not something Meta claims, but it lines up with what I keep seeing in accounts: ten “different” ads all spending like one ad.
So what’s the edge?
Go back to that Andromeda stat. Hundreds of millions of new ads. When every brand can crank out fifty variations before lunch, volume stops being an advantage, because everybody has it.
Put the three systems side by side and a consistent picture shows up. Andromeda matches ads to the slice of a person’s interests they fit. GEM predicts behavior from what people actually did, in order. GenRecs groups ads by what they’re about. All three reward ads that are meaningfully different from each other, and all three seem to treat cosmetic tweaks as more of the same.
Which brings it right back to what good creative strategists have always done. Get clear on who you’re talking to (the persona), why they should care (the angle) and what you’re actually selling them (the offer). Then take big swings across those. A persona you’ve never spoken to. An angle you’ve never tested. An offer structured in a way your account has never tried. Those are the changes that give the system something genuinely new to match against a different slice of people.
Most of those swings won’t land. That’s fine, and it’s cheaper than it used to be, since a new ad no longer starts from absolute zero. When one does land, that’s when you bring in the fifty variations: new hooks, first frames, formats and lengths on the winning concept. Iterate on the winner until Meta has a whole rack of it to pick from, then let the shopper do its job.
I’m talking about how to assess your ad creative with AI at Digital Summit Raleigh on Monday, November 2. I’ve been building a tool that slices client accounts by persona, angle and offer, which makes it easy to see which ones an account has run into the ground and which it has never tried. If you can’t make it to Raleigh and want help doing this in your own account, get in touch.
