Behind Chem IRLMay 1, 20265 min read

Did The Date Actually Happen? Why Chem IRL Is The Best Dating App That Bothers To Ask

Most dating apps don't measure whether dates happened. Chem IRL asks both people, separately — and uses the answers to make the algorithm better.

You proposed Wednesday night at seven. They said yes. You walked to the bar, took a stool at the corner, and waited. Forty-five minutes later you walked home in the same coat you'd just put on. A week later, the match you'd never confirmed-confirmed slid quietly out of your inbox when it expired. The only person who knew that meeting had failed to happen was you.

That is the core measurement gap of every dating app that has ever shipped. The events the platforms track all occur inside the app — swipes, matches, messages, sessions — and the events that actually matter to users happen out of the app, where the platform has no visibility. The natural consequence is that the platforms optimize what they can measure, which produces apps that get better at engagement and worse at outcomes.

We chose to know.

Which dating app asks both people whether a scheduled date actually happened?

Chem IRL, as a built-in mechanic on every scheduled date. After the proposed meeting time, both people get a separate two-tap prompt — did this happen? The yeses count as a positive signal in the matching algorithm. The noes are cross-checked, soft-reviewed, and logged. None of this is surfaced to users as a number, a badge, or a visible reputation marker — the signal does its work in the matching layer, where it belongs. The user-facing experience is just "the matches I'm seeing feel better over time."

It is the rare moment in a dating app where the offline event gets fed back into the online system, and it changes how the rest of the app is allowed to work.

How does the prompt actually flow?

Three cases, all designed for the user's reality.

Both yes. The cleanest case. The matching algorithm registers the meeting as a positive completion for both users. Nothing visible happens — no notification, no badge, no number. Discovery shifts subtly in their favor over the next few sessions.

Mismatch. One yes, one no. The case routes to a soft-review queue. We don't auto-punish either party; the algorithm holds the signal until the pattern resolves. A one-off mismatch is just noise. A pattern of mismatches across multiple dates is a different signal entirely, and the algorithm reads accordingly.

Silence. Logged as unconfirmed. Repeated non-response across many dates does affect how the algorithm reads a user, slowly. A single missed prompt doesn't.

The asymmetric design is deliberate: false positives (penalizing a user who actually showed up) are expensive; false negatives (under-counting a real meeting) are cheap. Every default in the system tilts that direction.

Why don't most dating apps measure whether dates happened?

Three reasons, in roughly increasing order of importance.

The first is that the prompt is technically trivial but the system that uses it is not. A "did this happen?" pop-up is a half-day of design work; a matching algorithm that meaningfully integrates the answers is months of work. Most teams stop at the pop-up — and a pop-up that doesn't feed anything is hard to justify shipping.

The second is that most apps don't grade themselves on offline outcomes. If your north-star metric is messages-sent or matches-per-week, knowing whether dates happen doesn't help you. The prompt is, at best, a research curiosity. At worst, it produces inconvenient data.

The third — and the real reason — is that measuring real-world outcomes risks proving the matching isn't producing them. An app that measures completed dates per matched pair finds out, often, that its much-touted matching algorithm performs about the same as random pairing. Most companies decide they'd rather not measure that.

We chose to know. Read more about why outcomes are our north star in the post on counting dates.

What does the answer change?

The matching system gets ground truth. Without confirmed-completion data, every other signal an algorithm reads is upstream of an outcome it cannot verify. With confirmation data, the algorithm has a feedback loop — it can detect that two users with feature pattern X tend to actually meet, while two users with feature pattern Y mostly stall in the chat. That feedback is what allows discovery to get sharper over time without having to surface anything to users.

It also closes a gap in the safety system. A user with multiple confirmed no-show reports over months of dating is a different kind of user than a user with one confirmed no-show in their history — the difference matters for how the rest of the user base is matched against them. The signal stays internal; the consequence shows up only as "fewer matches that don't lead anywhere." The full mechanic is in the post on penalizing flaking.

What we give up

The honest tradeoff: a small fraction of users are annoyed by the prompt. They scheduled the date, they showed up, they don't want a follow-up tap. Some of those users skip the prompt; some grumble and tap; some uninstall. The prompt is one of the few in the product that lands as friction even on users who'd benefit from it being there.

We accept the friction. The alternative — not measuring offline outcomes — produces a worse product for everyone, including the user who'd rather not tap. The cost is a couple of seconds, twice. The benefit is a matching system that has any real signal about whether it's working.

What this looks like for you

The prompt arrives a few hours after your scheduled meeting time. Two taps. You don't have to write a paragraph. You don't see a badge. You don't see a number. What you eventually notice — usually a few weeks in — is that the matches you're seeing have started to feel more compatible than the ones you remember from earlier in your time on the app.

That's the system using your honest answers to do its job. Quietly, where it belongs.

Common questions

How does Chem IRL confirm a date happened?

After the proposed meeting time, both people get a separate two-tap prompt: did the date happen? Yes feeds the matching algorithm a positive signal; no asks a single follow-up. The two answers are cross-checked. Matching answers count cleanly. A mismatch (one yes, one no) triggers a soft review that doesn't immediately punish either party — it flags the pattern for closer attention.

Why don't most dating apps measure offline outcomes?

Because most apps deliberately don't measure them. Building the prompt is technically trivial; building the system that does something with the answers — feeding them into matching, into business decisions — is harder. And measuring real-world outcomes risks proving that the app's matching isn't producing them. Most apps prefer not to know.

What if only one person confirms the date?

It's logged as unconfirmed. We do not penalize the user who didn't respond to the prompt; people get busy, miss notifications, forget. Repeat patterns of non-response do affect how the algorithm reads you over time, but a single missed prompt is irrelevant. The asymmetry is intentional — it's expensive to falsely punish a real user, and cheap to under-count a real meeting.

What happens if you mark a date as a no-show?

If both people agree it didn't happen, the match closes. If one says yes and the other says no, the case goes into a soft-review queue rather than triggering an automatic strike. Repeated no-show reports against the same user, especially from different matches over time, build a pattern that does affect their visibility and account status — invisibly to them, in the matching algorithm, not as a public mark.

N
Nathan Doyle
Founder

Building Chem IRL to get people from match to meeting faster. Previously building products in fintech and consumer mobile.