From using both the front and rear-facing cameras at once to 200 million music tracks, endless filters and editing tools… building Zooni from scratch kept our team busy.
Today, we’d like to accentuate data science and share how our custom recommendation engine and on-device content moderation solution affected Zooni’s immediate success.
Just weeks after Zooni’s release, the average user was spending 9+ minutes on the app, the conversion rate hit 50% and Zooni broke into the Top 200 Apps in the App Store.
One reason? The Zooni team viewed AI/ML as core features, a mindset that resulted in a product fully equipped to take on leaders like TikTok and BeReal from the get-go. This is a major competitive advantage — because it’s not the case with most companies (for now).
When it comes to fitting within a budget, advanced solutions tend to get cut first since “it can be done later.” To explain why it’s not that simple and exactly what we were able to do for Zooni, we spoke to our Machine Learning Engineers, Niek Mereu and Lukas Koucky.
Niek is the mind behind Zooni’s recommendation engine, while Lukas is responsible for the on-device content moderation. We’ll let them take it from here.
Cross-team Collaboration: Working Together From the Start
Why did we launch data science work right from the start of the project, rather than leaving it for the end?
Although Zooni wasn’t a very technical client, they quickly understood that reaching their business goals required an advanced recommendation engine. It’s the only way to capture users’ attention right away, engage them and make sure they keep coming back.
And to be accepted to the App Store, you have to have content moderation in place as per the store’s guidelines, so that was an obvious choice.
While building from scratch can be difficult because you don't have the data, working in parallel with app development still makes things so much easier and less dangerous for the product. When adding the solution afterward, you have to check with all the other teams when updating even the slightest detail of the app. Every change can cause bugs or issues that can break an already functioning product and it can be quite painful.
What are the benefits of “working in parallel” with other engineers under one roof?
STRV’s biggest advantage is that we have huge departments of mobile engineers, and we can cooperate with them throughout the project. When we were working with our iOS engineer to integrate the content moderation model, it was so easy. It only took one or two conversations and we had it running because, as colleagues, we've learned about each other’s platforms.
When you have a company that's focusing solely on ML or data science in general, it’s much more difficult for them to test the solution and integrate it. At STRV, we’ve figured out a way to export our model in a format that’s very accessible for iOS or for any engineer.
Recommendation Engine: No Data, Tight Deadline, Let’s Go!
How do you build a recommendation engine with zero available data?
Within recommendation, you have the user paradigm and the content paradigm.
The user paradigm utilizes user data. You’re comparing users to each other and finding people with similar characteristics. So, if user A likes something, B will like it as well. There’s no need to analyze the actual content. This approach requires sufficient data.
With the content paradigm, you look at a user’s history. What are the characteristics of content he/she has watched? You make recommendations based purely on what the user has seen, which can be one or two videos. You don't need much data, so this is what we used for Zooni.
Later on, as data comes in, our Zooni solution is ready to combine both paradigms, enriching the recommendation quality. And of course, because users want to explore and discover new things, we also include a healthy amount of novelty content, a.k.a. randomness.
How would you say you pushed the boundaries on this project?
It's important to understand the huge time constraints we had. What would normally take a few months needed to be done in a few weeks. It’s a huge challenge but STRV’s been in a similar situation before, when we built two custom AI solutions in a few months for Cinnamon.
We had to be very smart, very creative in finding the right tech solution in context of what Zooni was trying to achieve. All while also working with their data stack.
The reason we managed it in record time is our expertise in these niche cases, and because we’re constantly running experiments, doing research, preparing for challenges like this… even when we’re not on a project. We’re very well-equipped for a fast-paced environment.
Content Moderation: Newest Tech & Keeping Kids Safe
Zooni is targeted primarily at children and young adults. What did this mean for you?
For any app with user-generated content, moderation is a must. Apple and Google require it.
With dating apps, photos can be a little spicy or suggestive. But with Zooni, we had to take extra steps to make it a safe space for kids. The bar was much higher. So when training the content moderation model, we used a very wide-ranging set of examples for what to filter out.
How do the App and Google Play Stores approach safety/privacy requirements? What can happen if there’s an issue with unsafe content getting through the filter?
Both stores have very broad rules you should follow. They don’t tell you exactly what is and isn’t appropriate, nor do they tell you what sort of filtering system to use. It’s up to you — you can have hundreds of people filtering it out by hand, or a solution, or both.
Apple’s rules are a bit more strict; someone manually checks the app, and the code, before it goes into the App Store.
Google is not as strict in the beginning; it relies on an automated system. But your app will undergo random checks and if it’s in breach of regulations, it will be removed from the Store. If you’re lucky, you’ll get a second chance. If you’re unlucky, they won’t even talk to you.
The technology we used has typically only been accessible to giants like Apple. What does this mean, and how were we able to do this?
We know that technological advancements happen every year, but ML and AI improve every single month thanks to the openness of the data science community.
There are millions of people sharing articles, code, ideas… all of which you can test out, build on top of, improve, iterate. Our field is very lucky to have this at our disposal — but not many engineers have the time, resources or enthusiasm needed to keep up. Luckily, we do.
The speed and performance of our model for Zooni were possible thanks to a combination of tech advancements and STRV’s environment of constant learning, exploring, testing. We know what’s ready to be integrated, while others are still finding it out.
Client Side: Understanding & Tracking the Results
Data science was a new world for the Zooni team. How did you keep them updated on your progress, and can they monitor the post-release results without us present?
Although the technology behind our work is very complex, we always visualize what we’re doing while explaining it — showing video examples, how we extract objects from videos, demos, etc. So it’s actually pretty easy to explain.
We also make monitoring the performance as easy as possible. Our team defines certain KPIs and the results are sent to the client every week via an email we’ve set up. If anything seems off (which has not happened to us yet), we’re one call away.
And tech-savvy or not, we’re grateful to the Zooni team for coming in ready to push boundaries and giving us the opportunity to do our part.