Case Study — Reaching New Users Sooner — Straight Up AI
Case Study · Consumer Marketplace

Bringing new sellers and buyers into recommendations weeks sooner

The client's recommender only learned from users with an established interaction history, leaving a large cohort of newer users on generic, non-personalised results. We halved the interaction threshold to pull them into the model — without diluting recommendations for everyone already in it.

Client
Consumer marketplace · Recommendations
Engagement
ML Engineer · Recommendations
Focus
Cold-start coverage & candidate generation
Stack
PyTorch · TorchRec · Databricks · Airflow · SageMaker
4 → 2
Minimum unique interactions to enter the model — halved, so newer users qualify far sooner.
~50k / wk
New users brought into offline recommendations each week as the eligible cohort widened.
No regression
No degradation in recommendation performance for the users already covered by the model.
The Challenge

The users who needed help most got the least

The client's candidate-generation model trained only on users with at least four unique interactions. That threshold keeps training signal clean — but it also excludes everyone below it. On a marketplace with a constant influx of new buyers and sellers, that's a large, high-value cohort getting generic, non-personalised results at exactly the moment a good first experience matters most.

The obvious move — just lower the threshold — carries a real risk. Bringing in users with sparser histories can shift the training distribution and add noise, potentially degrading recommendations for the established users who already work well. The change had to be proven not to rob Peter to pay Paul.

The Approach

Widen the funnel, guard the baseline

01

Lower the threshold to 2

Created a new model variant that admits users with as few as two unique interactions, expanding the eligible population to include far more newcomers.

02

Retrain on the wider cohort

Retrained the Two-Tower candidate-generation model on the broadened dataset through the existing Databricks + Airflow pipeline, versioned end to end for reproducibility.

03

Check for collateral damage

Evaluated offline that newly-eligible users gained genuine coverage while metrics for the established cohort held steady — the non-negotiable safety check.

04

Stage the online A/B test

Packaged the variant behind a dedicated SageMaker endpoint and prepared an Optimizely experiment to validate the offline result against live engagement.

Status & provenance. The threshold change (4 → 2 unique interactions) and the full training/deployment pipeline are documented in the project. The weekly new-user reach and the "no degradation" guarantee are reported here from headline results; confirm the live A/B outcome and rollout state before publishing externally.
What We Built

The engineering underneath the numbers

A lowered-threshold model variantNew training, eval and recommend configs admitting 2+ interaction users.
End-to-end pipeline integrationVersioned DABs bundle and Airflow DAG steps from train through ANN indexing to deploy.
A dedicated serving endpointA SageMaker variant wired up via GitOps for clean, isolated online evaluation.
An A/B test harnessOptimizely experiment scaffolding to route traffic between champion and the new variant.

Leaving new users on generic results?

See if we're a fit →
Next
Next

Performance Caching