Back to Blog

From CRO to Purchase Journey Intelligence

Why most “conversion analytics” can’t explain conversion, and what we’re building instead (Part 1)

Conversion Rate Optimization (CRO) has a branding problem, but that’s not the real issue.

The real issue is that CRO is often treated as a UI tweaking discipline: change colors, rearrange blocks, A/B test micro-variants, ship “best practices,” and call it progress. Meanwhile, the biggest conversion killers in real commerce often sit elsewhere: offer competitiveness, availability, trust, constraints, and the competitive game.

Here’s the reframing:

Conversion is not an “optimization” problem.
It’s a purchase journey feasibility problem.

A purchase journey converts only if it’s (1) worth starting, (2) possible to complete, and (3) reliable under real-world constraints, not just on your best day.

That’s what we mean by Purchase Journey Intelligence (PJI): a system that measures and explains the full set of preconditions that make purchase journeys succeed or fail.


Why this matters (and where it goes)

Most teams discover “conversion problems” too late, because revenue is a lagging indicator. By the time a conversion rate dip shows up clearly in dashboards, the underlying journey may have been broken for days, across devices and contexts, silently burning paid traffic and brand trust.

The economics are brutally simple. If an online business does €50M/year in revenue and a journey failure causes a 2% absolute conversion drop for just a subset of traffic, the impact is easily seven figures annually. And this isn’t rare: availability constraints, delivery eligibility, payment failures, or a broken step in checkout can create precisely these “partial” failures that escape early detection.

So the endgame isn’t “better dashboards” or “more experiments.” It’s a capability:

  • detect journey failures earlier than revenue KPIs can,
  • localize what broke and where,
  • attach evidence engineers can reproduce,
  • track reliability over time, not just averages.

That is where CROspector is going. Part 1 explains why.


The status quo problem: we don’t measure what matters

Most analytics stacks are excellent at counting events and terrible at explaining outcomes.

They can tell you page views, click-through rates, bounce rates, funnels, heatmaps, session replays, rage clicks.

But they often fail at answering the only questions that matter:

What exactly blocked this purchase?
Was the journey impossible, or merely unattractive?
Did the user fail because of friction, or because of constraints?
How often does this break, across time, devices, and contexts?

This is not a tooling “feature gap.” It’s a measurement gap.

When you measure the wrong thing, you optimize proxies. When you optimize proxies, you ship activity, not results.


Why A/B testing often becomes a bingo machine

A/B testing isn’t the enemy. Weak causality is.

If your instrumentation can’t explain why users fail, you end up in a loop: generate hypotheses (often UI-only because it’s easiest), ship experiments, see negligible effects most of the time, explain the outcome as noise or lack of traffic, repeat.

This becomes a hypothesis factory that keeps every stakeholder busy without improving the underlying system.

Now add LLMs.

LLMs don’t fix the measurement gap, they amplify hypothesis generation. That’s dangerous: you can create infinite plausible stories from weak evidence. The system produces motion, not truth.


Two videos that illustrate the gap

To make this concrete, here are two ways to “instrument” the same journey.

Video 1: Clickstream telemetry (behavior exhaust).


Video 2: UI-grounded annotation (behavior bound to rendered UI geometry).

Clickstream telemetry (the common baseline)

A clickstream shows cursor movement and clicks as a path. It looks like data. But it’s mostly behavior exhaust.

It is not bound to the UI elements that were actually visible. It doesn’t encode state (“which step were we in?”). It doesn’t encode semantics (“what was the user trying to do?”). It doesn’t encode system responses (“what happened when they tried?”).

So two people can watch the same squiggle and tell two different stories.

That’s not intelligence. That’s narrative.

UI-grounded annotation (a real step forward)

The annotated view overlays the cursor trace on the actual rendered UI and identifies screen regions/elements. This is immediately better because behavior is now bound to UI geometry. You can isolate candidate targets (CTAs, controls, modals). It’s more falsifiable than a blank-canvas path.

But it still isn’t enough because it still doesn’t answer what was attempted (semantic intent), what the system responded, what constraint blocked the journey, or what invariant failed (e.g., “add-to-cart must increase cart count unless reason X”).

So this is still instrumented replay, not instrumented execution.


The purchase journey is not a UI problem (it includes UI, but it’s bigger)

A purchase journey is a sequence of states under constraints.

It includes friction but it also includes offer competitiveness, availability and eligibility constraints, trust and compliance signals, performance and reliability, and the competitive game around switching and comparison.

CRO often over-focuses on friction because it’s easiest to see and easiest to test. But the highest-leverage failures are frequently elsewhere, and they often show up as reliability problems: the same journey works today and breaks tomorrow; the same flow works on desktop and fails on mobile; the offer looks available and becomes impossible at checkout.

A conversion rate is just an average over these hidden states.


Where CROspector comes from: measurement before optimization

CROspector starts with a simple premise:

You can’t optimize what you can’t observe,
and you can’t observe what you don’t measure as states, constraints, and evidence.

So we built an agent that probes purchase journeys on public surfaces, repeatedly, across time and contexts like a human would, and it records evidence.

Evidence. Not events.

We probe journeys in a non-intrusive, rate-limited way on public pages, designed to respect site stability.

The goal isn’t to generate hypotheses. The goal is to produce verifiable facts about what makes a purchase journey succeed or fail.

That’s the beginning of a longitudinal reliability layer for commerce: what breaks, how often it breaks, under which conditions it breaks, what type of failure it is (friction vs constraint vs trust vs competitive position), and evidence that can be inspected and reproduced.


Analytics vs journey intelligence

Here’s the distinction:

Analytics answers: “What happened?”
Journey intelligence answers: “What happened, why, under what conditions, and how reliable is it over time?”

If you’re serious about conversion, you want the second because it changes what your organization can do. It shortens time-to-detect, reduces time-to-diagnose, and prevents teams from spending months optimizing proxies while core feasibility failures persist.


Where we’re heading (Part 2 teaser)

Part 1 is about the reframing and the measurement gap.

Part 2 will show how we move from replay to explainable diagnosis: what failed, why it failed, how often it fails, and what changes the counterfactual.