Designing a Dating App Algorithm

Sam Adekunle
Startup Archives
Published in
4 min readNov 26, 2024
Photo by Flure Bunny on Unsplash

Sudo was one of the initial product requests we received at Grone Studio, but the founder had a unique idea — to create a dating app that addresses loneliness by connecting neighbours and neighbourhoods. The app would allow users to organise events like summer grills and find others with similar interests, such as attending concerts. This concept seemed more aligned with a friendship app rather than a traditional dating app.

Initially, we focused on connecting locals based on their interests and hobbies. We developed a sorting card system to match people based on the data provided about their interests. Personalisation was a crucial aspect, but we needed to prioritise it without compromising user data, especially for a new app.

Once we agreed on the objectives, we began building the app from there.

Photo by Good Faces on Unsplash

Objective one - “Authentic Connections” We want people who use the app to have tools to build genuine relationships. We want to achieve this through shared interests and similar quirks.

Objective two - ”Robust Profile Analysis” We want to broaden the spectrum of people’s preferences and matchability by including their hobbies, interests, lifestyle choices, values, and professional backgrounds.

Objective three - ”Dynamic Adaptability” We want the algorithm to evolve and adapt to user preferences by learning from user interactions and feedback to enhance the matching accuracy.

By using a backward development process from the objectives, we can effectively focus on the specific data points required to achieve success in meeting the objective. What key features do you need to solve loneliness?

Setup a multifactor analysis

We designed some multifactor variables into the onboarding flow to be able to feed the algorithm some important variables to function optimally. Some of the factors/variables are —

  • Hobbies and Interests
  • Lifestyle Preferences
  • Professional Background
  • Values and Beliefs
  • Location Proximity

Weighted Preferences

All variables are not weighted equally. We assign weightage to different preferences based on the user interaction history. This ensures that more critical factors have a higher impact on the matching process.

Reinforcement Learning

We built a machine learning framework to understand user behaviour over time. Reinforcement learning helps the algorithm continually refine its understanding of user preferences, adapting to changing interests and updating the weighted averages without any engineering input.

Privacy and Security

User privacy and security have been our guiding lights since day one. We ensured that sensitive information was anonymised and encrypted. The algorithm adheres to stringent security standards to protect user data.

Feedback Loop

We incorporated subtle feedback loop mechanisms, encouraging users to provide feedback at different touchpoints. This input is utilised to fine-tune the algorithm and address any discrepancies or inaccuracies with the matchability.

How do we know that we made a good algorithm?

Satisfaction score of Beta testers

We planned to achieve an average user satisfaction rating of at least 4.2 out of 5 in post-matching surveys for our first 100 beta testers. If user satisfaction falls below the threshold, we analyse feedback and make necessary adjustments to improve the overall experience.

Is the algorithm scalable?

After QA, we tested the algorithm with a team of five to confirm it maintains optimal performance and created a simulated user base 1.5 times larger with dummy accounts before sharing it with beta testers to confirm scalability.

Feedback Loop Efficiency

We set a response rate of at least 70% from users providing feedback on suggested matches. If the response rate is below the threshold, we will implement strategies to encourage more users to provide feedback.

Personalised Experience

This was tough to track because it was subjective. We aimed for at least 90% of users to find the personalised matching preferences effective in aligning with their unique personalities. We used both feedback loops and CSAT surveys to measure this, but it might suffer a survivorship bias at scale.

Matching Accuracy

We set a minimum of 85% accuracy in matching users based on shared interests and preferences. If the accuracy falls below the threshold, we refine the algorithm parameters and conduct further testing. The major challenge to this was incomplete profiles and missing data points.

In conclusion, building Sudo algorithm was a challenge to all of the team, we had an opportunity to learn, research and deliver on something really good. Sudo is not yet out for public beta at the time of writing this article, but feel free to join the Sudo waiting list with this link.

Subscribe to our newsletter: https://bit.ly/Gronestudio

--

--

Sam Adekunle
Sam Adekunle

Written by Sam Adekunle

I am a dreamer and a builder too.

No responses yet