Skip to content
Back to Insights
Perspectives

The user isn't new, just new to the app

A 20-year-old gap called the cold start problem. The single most decisive ingredient for filling it sits in ad touchpoints.

On this page

Spend to bring in 1,000 users through mobile app ads, and on D7 you'll typically have 50 to 100 of them left. You paid for all 1,000 but only about 10% stick, so when you divide the spend by the users still around on day 7, you've effectively paid 10x to 20x your CPI for each one. That's a huge loss, so why is it that in the very first few minutes a user opens the app, the app can't recognize them? Recommendation systems have had a name for this since the early 2000s: the cold start problem. More than 20 years later, it still isn't solved.

Of the 1,000 users ads bring in, 50 to 100 are still around on D7.

The cold start problem is, put simply, the state where a service doesn't know what to show someone who just walked in. This post tries to lay out that story in one place. How other platforms have handled it, and what the single most decisive ingredient an app bringing users in through ads holds, both together.

That loss from the top, where nine out of ten users you paid to bring in are gone within a week, is actually decided almost entirely in the few minutes right after a user first opens the app. That's why those few minutes sit at the center of this post.

Why the cold start problem hasn't gone away in 20 years

The cold start problem is usually split into two sides. New users (someone who just signed up), and new items (a product or piece of content that just went up). For mobile apps, the new user side is usually the most decisive and the hardest one to crack.

Recommendation, personalization, all of it eventually leans on the record piled up in the past. On the user side, "what did this user do before." On the item side, "what reactions have piled up for this item." Without that material, no recommendation. But every day a service gets new users, new items go up. Either way, the past-log just isn't there until it piles up. So the cold start problem isn't a condition one specific service catches, it's a gap that any data-driven service carries for its whole life.

How each platform has solved it

Over the last 20 years, five big platforms (Spotify, Pinterest, Netflix, TikTok, DoorDash) have filled this gap in five different ways.

Spotify handles new tracks like this. A new song obviously has no listening history. Even so, Spotify plays the track itself and pulls out features ahead of time: mood, tempo, brightness. It's a bit like a record store clerk listening to a new record first and tagging it as "mellow ballad" or "upbeat dance." That way, even a song nobody has heard yet can be pushed straight to "people who like this mood."

Pinterest classifies new pins the moment they go up. No impressions yet, but it looks at the image and description in the pin and places it somewhere, "this is recipes" or "this is interiors." The pin's own character is sorted before anyone sees it, so from the very first impression it drifts into the feed where it fits, not somewhere random.

Netflix just asks the new user. On signup, a short survey pops up: "pick a few titles you like." The handful the user picks is everything the service knows about them, but it uses that small signal as a stepping stone and jumps straight to "what did other people with similar picks watch."

TikTok seeds new videos a little at a time. A fresh upload doesn't go out to everyone at once. It shows up for a small group first (a few hundred to a few thousand, by most accounts) and the system watches the response. Strong completion rate and lots of shares, it fans out to the next group. Weak signal, it stops there. A bit like a radio DJ trying a new song in a late-night slot first and watching the call-ins.

DoorDash borrows hints from another category. DoorDash runs both restaurant delivery and grocery delivery. A user new to groceries might already be a regular on the restaurant side. What they ordered most on the restaurant side, which spots they liked, that gets used to shape the first grocery screen. One category's past fills in another category's "right now."

Five platforms, five ways of filling the cold start gap.

The common pattern: when the past is missing, pull from somewhere else

Line the five up and one thing stands out. When the user's own past is empty, the platforms reach for one of three moves, sometimes more than one.

First, the content's own character. Spotify analyzing the song itself, Pinterest reading the pin itself, both sit here. "What this song or image feels like" can be worked out ahead of time, with no user attached. Nothing on the user yet, but something on the content, and the recommendation still runs.

Second, pulling from the user themselves. Netflix's signup survey, where the user picks preferences directly, sits here. DoorDash dragging in a user's past from another category is the same shape. Both lean on signal that came from the user themselves as a stepping stone.

Third, borrowing from similar people. TikTok seeding a small group first and watching the response sits here. The move is "what did other people who look like this user do." Netflix, through what the user told it directly, also ends up here by finding similar people.

Mapped back onto the opening split, the first is a move for the new-item side, and the second and third are both new-user moves. And the harder side is usually the new-user one. The new-item side has had decades of active research by now, with fairly mature moves like analyzing the content itself or pre-sorting by metadata.

But the two new-user moves quietly share one assumption: you already know, at least roughly, who the user is. To find similar people, you need an identity to compare against. To ask the user something, or to pull their past from another category, the user has to be identified in some form, signed up or logged in.

Think about it for a second and this gets a little odd. The cold start problem, by definition, is the state of knowing almost nothing about the user. And yet these two moves quietly assume you do know, at least roughly, who the user is. So really, they only solve one slice of the cold start problem. The user has signed up, or logged in, or left something in another category, or answered a quick survey. At least one of these has to be in hand for either to work.

The truly hard case is when you barely know who the user is at all, no login, no past record, nothing on hand to anchor on.

And the few minutes right after an ad-driven user installs and first opens the app are exactly this state. The app knows almost nothing about the user, and the two earlier moves have nothing on hand to work with. The loss we flagged up top, nine out of ten gone by day 7, is decided right in those few minutes.

Airbnb recently published a case that solves exactly that, where the only clue in hand is something like an IP, still cracked open through "borrowing from similar people."

Even with nothing on the user, if one of the three is there, recommendation can still run.

Recently, a case that takes the average of similar people as it is

Airbnb recently published how they show personalized recommendations even to users who come in without logging in. Think of it as a fresh take on "borrowing from similar people." The piece "Personalization Without User Identity" went up on the Airbnb tech blog in September 2026.

A lot of the users Airbnb deals with come in without logging in, or they log in but have no past searches or bookings. People who stop by to browse and leave. Personalized recommendations lift conversion for this group too, but with no identity and no past, there's nothing to recommend from. So what Airbnb reached for is Proximity Features. They roughly figure out where the user is coming from by IP, then bundle people from the same region into anonymous groups of about 1,000 at a time. The regions those 1,000 searched most and the stays they booked most, that group-level average gets pulled in directly as recommendation material for this one user.

"Borrowing from similar people" has traditionally needed to know who the user is to work. To find similar people, you need something about the user, their past, something to compare against. Airbnb ran it even for a user who hasn't logged in. Granted, not from pitch dark. But with just an IP, that one easy-to-infer clue as the foothold, they built a group of "1,000 people who connected from the same area" and used that group's average as recommendation material, taking a shot at this hardest case. No user profile, just an IP, enough to form a group.

A 1,000-person regional average acts as if it were information about one user.

An app that brings users in through ads has the most decisive ingredient

Everything so far pulls material from inside the service. Pre-extracting the content's own character, asking the user directly, averaging similar people, all of it inside the walls.

An app bringing users in through ads has one ingredient that is, arguably, more decisive than any of the inside ones: the trail the user has already left outside the app. The user scrolls a media platform's feed, catches a sale ad, gets a few more impressions, taps through, lands in the store, installs, opens the app a few minutes later. Across that whole flow, the first three steps are already piled up as touchpoints on the media platform's side. Inside the app the user hasn't done anything yet, but on the media side there's quite a bit of their trail already there.

Think about it this way. An ad is itself the result of a media platform pre-filtering what that user might like. And the user then clicked only the ones they were actually interested in. So signals like "which ads they saw and how many times, which creatives they reacted to, how fast they went all the way to install" already carry a pretty dense picture of that user's interests and intent.

Two pairs will make it concrete. User A who tapped a short video ad on the third impression versus user B who tapped on the first impression, impression count alone splits D7 purchase rate by 4x. User C who installed 30 seconds after click versus user D who installed 3 minutes after, install delay alone splits D7 purchase rate by more than 3x.

A single media-side signal like impression count or install delay splits D7 purchase rate by multiples.

All of these signals happened on the media side before the user ever opened the app. Go down to media, campaign, ad group, creative level and signals like these pile up by the hundreds per user.

The problem is these touchpoints are scattered across different media platforms, each locked inside its own. Each media platform knows its own side, but the app doesn't get all of it, assembled around a single user, in real time. Pull it through a media API and you get something like yesterday's rollup report. "CPI went up on this channel yesterday." But how many times that specific user saw that ad, which creative they reacted to, how long they hesitated before installing, none of that lands in the app the moment that user opens it. The exact moment the trail is worth the most, and it isn't there.

The media side already has the user's own trail.

Filling this gap eventually means routing that user's own media-side trail into the app at the moment of first open.

What Airbridge CUE does

Here's where Airbridge CUE fits in that flow. CUE handles the exact moment an ad-driven user first opens the app.

The second that user opens the app, Airbridge CUE gathers the trail that had piled up on the media side for that user, in real time, and sends it to the app as four fields. Where they came from, how they're likely to move next. These four are the same four shown on the product landing page.

  • User id. The key that ties together the trail scattered across media platforms, ad servers, app servers, CRM, into one person.
  • Last ad. The ad they responded to right before opening the app. Media, campaign, ad group, creative, all levels. Someone who came in on a sale ad gets a sale curation on home. Someone who came in on a specific brand creative gets that brand up top.
  • Probability of paying within three days. The chance of paying in the next three days, bucketed into high, medium, low. High gets the premium offer up front, medium gets a coupon banner pinned to the top, low starts on a free trial or a low-price offer.
  • Probability of churning within three days. The chance of leaving the app in the next three days, also three buckets. High triggers an automatic reminder push the next morning. If both churn and payment probability are high, a payment-save campaign fires right away.

The four actually have slightly different characters. User id is the result of recognizing who the user is on the spot. Last ad is lifting the user's own trail that had already piled up on the media side. The three-day payment and churn probabilities are numbers made by stacking several machine learning techniques on top of "borrowing from similar people." Models trained on similar users' past payment and churn patterns, probabilities pulled out of that.

This four-field response can flow into any system you connect it to, app first-screen branching, CRM segments, analytics (GA4) session properties, retargeting audiences, and so on, all at the same time. One call, many systems moving together.

For a long time, on the attribution side, Airbridge has been collecting the trail of users responding to ads on the media platforms. Where those media-side trails pile up, how they get tied to a specific user, the groundwork is already laid. CUE sits on that groundwork and takes a media-side-data approach to the cold start problem. The user's trail already piled up on the media side flows into the app server in real time, and two probabilities from machine learning sit on top. Four fields, together.

Who the user is, the user's own media trail, and patterns from similar people, all arriving together as four fields.

To recap why the cold start problem has lasted more than 20 years: any data-driven service gets new users every day, and new users have no past. Platforms have filled the gap by dragging hints from somewhere else: the content's own character, signal the user gave directly, borrowing from similar people, and more recently, the average of about 1,000 similar people.

What our team found from watching ad-driven apps closely for years comes down to one thing. The user's own trail coming in from the media side is more decisive than any of the earlier materials. And that trail has to flow into the app at the moment of first open for those pitch-dark few minutes to clear up.

The four fields Airbridge CUE returns are exactly the pipe that lifts that material into the app at the first-open moment. The response spec and integration guide are at cue.airbridge.io. If you're already on the Airbridge SDK, hooking it up is simple.

Put your next idea into practice.

Explore how CUE works, or talk with us about applying it to your service.