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.
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.
Widen the funnel, guard the baseline
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.
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.
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.
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.