When the algorithm is wrong about what travellers actually want
Kiwi.com · Behavioural Analytics · 1M+ search sessions
The decision on the table
Kiwi.com's search algorithm ranked results primarily on price. The hypothesis worth testing: was that weighting actually matching what travellers chose or were there segments where the algorithm was systematically misfiring, sending high-value customers further down the results list?
What the research revealed
I analysed over a million completed booking sessions across 30 behavioural segments covering trip type, travel party, booking window, route distance, device, and more. Three methods in combination: probability density analysis to establish what "good" and "bad" search performance looked like across the distribution, a differential index to measure how much each segment characteristic shifted outcomes, and a random forest model to rank which variables actually predicted performance.
The finding that mattered most: long-haul routes were consistently associated with poor algorithm performance. The reason wasn't price. Travellers on long-haul routes care significantly more about duration and number of stops than the algorithm was accounting for. When the top result was a multi-stop itinerary, travellers scrolled past it and chose something further down the list, overriding the price-optimised ranking.
Additional conjoint data made the mechanism precise: a 3-hour duration increase reduced willingness to pay by €42. A 5-hour increase, by €87.90. Duration wasn't a secondary preference but it was a near-equal weight factor to price in booking decisions, and the algorithm wasn't treating it that way.
What changed
The search algorithm was updated to increase the weighting of duration and stops as a function of route distance.
What this looks like as a Decision Sprint
You have behavioural data but no clear picture of which segments are underperforming and why. A structured analytics engagement identifies where your product is misaligned with actual traveller behaviour and what to change.