You listen to Lana Del Rey, Fairouz, Mashrou’ Leila, and Mariah Carey. And it’s Sunday morning. How can our music app tailor itself?
Delivering a personal app experience requires understanding each and every user. Not only do users have different preferences, but they’re also performing diverse activities, feel a specific mood, open the app at particular times throughout the day from various locales. To provide a contextual user experience that is relevant, an app has to adapt to every user’s preference and situation.
For the past year, we’ve been working on tailoring the user experience for our mobile app Anghami, which is used for discovering, listening to and collecting music. This is how we did it:
Get intimate with users
Each of our 11 million users has different tastes in music, which is essentially the genres they listen to and their favorite artists. An example is a user who listens to Pop and Lebanese Indie, and whose favorite artists are Lana Del Rey, Fairouz, Mashrou’ Leila, and Mariah Carey . In addition to genres and artists, we consider mainstreamness, which signifies whether the user is into mainstream hits or uncommon songs. As part of a user’s preference, we also measure freshness to determine if a user prefers recent or or older music. Some users are only interested in the newest hits while others go further back in time. The combination of genres, artists, mainstreamness and freshness form a user’s musical DNA.
An app that learns and adapts to a user’s taste is likely to get the user’s loyalty.
Daily contexts vary per user, and we perceive it as real-time cues, which is any information we have about the user at a specific instance. This also plays a big role in personalization. The music a user listens to changes at different times and days. Morning music is different than in the evening. Users listen to different styles on a weekday night versus a weekend night. Music styles change as users switch between home, gym and office. It’s also different if they’re meditating, running, driving, or cooking. If a user is feeling sad, romantic, or melancholic, the music style varies in each case. It also changes between summer and winter. Special occasions like Christmas, Valentine and Halloween also affect the needed kind of music.
Anghami has a huge library containing millions of songs spanning every country and culture. In tailoring music suggestions for users, we consider all the possible contexts in which they use our app and choose the best set of songs following a specific sequence so that listeners find pleasure from our music. The app’s homepage, which is what users see as soon as they open Anghami, is by far the most important place for displaying great music.
Traditional way of doing things
Since Anghami’s inception, the homepage was tailored by our talented content team, who is capable of keeping up with trending music and find up-and-coming music they knew people will love. They applied their wizardry to each country in the Middle East, since a hit in Egypt doesn’t necessarily mean it’s highly regarded in Lebanon. This one-size-fits-each-country model worked quite well. The homepage highlighted new songs selected by the content team first and foremost. The second section was playlists curated by the content team themselves. They’ve spent great amounts of energy creating thousands of coherent playlists that span every genre, activity, and mood. While creating playlists, songs are selected and ordered with a specific story in mind and playlist titles are carefully named to reflect the content inside. The homepage excelled in many ways, but failed at adapting for each user’s context. This was reflected in the percentage of users playing music when they open the app and in the duration for which they played music. To fix this, we knew we had to personalize the homepage for each user.
Personalizing the homepage
In the second week of March, we started rolling out a new homepage that’s been in the works for one whole year. At first glance, the only obvious difference in the new homepage is that the section of playlists now shows first, followed by a section containing new songs. The bulk of the work, however, is harnessing the power of user data to recommend the most suitable playlists and new songs, and to finally deliver an experience that is personal and relevant.
Anghami’s brilliant engineering team saw the app grow to more than 10 million users in just 2 years, all within the confines of Lebanon’s weak internet connection. Technical skill, efficiency and scale comes naturally to them by now. I worked closely with the engineering team to build a homepage that is tailored from top to bottom for every user but scalable to millions of users. This had to happen with a homepage that still loads very fast, something our users have come to expect even on subpar connections. Showing users personalized playlists seems like one big action, but it’s really a multi-step process.
The engineering team used data science to create prediction algorithms based on user behavior. This allowed us to automatically notice that users who enjoy listening to the playlist “Every day is a winding road” also enjoy the playlist “First thing in the morning”. By making connections between playlists, Anghami was able to suggest relevant playlists based on each user’s listening pattern. In cases where playlists do not have enough play data to make a user-based connection, we find similar playlists based on the songs in each. In that way, 2 playlists containing similar artists can be connected.
While this allowed us to display relevant content, we still weren’t considering many factors that would give users a wow moment every time they open Anghami. Think about it: It’s 8pm on an April night when you open Anghami, and we offer you a playlist titled “First thing in the morning”. Or “Best New Year’s Eve Party”. These playlists might be very relevant to your taste, but definitely don’t fit your situation. That’s why the content team went through all our curated playlists and tagged each appropriately, so our system knows if a playlist can show at a specific time. If it’s 6.30pm on a Thursday in March, and you’re in Beirut, then you’ll probably get “The Thursday Sunset”. Open the app on a Sunday morning, and you’ll be greeted with a selection of relevant playlists that span from hangovers to Sunday brunches.
Tagging playlists not only helps with time, but also location. Our audience is mostly in the Middle East, where local cultural dynamics vary significantly between countries. A playlist that is welcome for users in Beirut might be seen as offensive for users in Jeddah. By considering these demographic nuances, Anghami guarantees the user a contextual experience that is enjoyable for every listening session.
Anghami tries really hard to suggest relevant content. If a user is new and we don’t know anything about their musical taste, the homepage will suggest playlists that are trending in that user’s country and that go well with their time and day.
Very soon, Anghami will consider a very interesting real-time cue: the gyroscope in your phone, which tracks how you’re moving. With that information, Anghami can know if you’re driving, running, or walking, and suggest playlists that are perfect for your activity. Note: I’m talking about the codriver, not the driver.
Humans meet code
Playlists are human-curated, but the process of selecting which playlists to display is automated. However, at Anghami we also believe that our content team consists of music connoisseurs who know which playlists are too good to miss out on and that should be highlighted. So we made it possible for them to feature playlists, and Anghami transparently promotes these playlists, but only to the relevant audience. This means that even if a Khaleeji (from the Arab Gulf) playlist is a must-listen, it will not show for a user who only listens to Lebanese Pop. This multi-level fusion of human and code took a lot of effort, and we are really proud of it.
Gratifying user input
We strive for implicit interaction, where Anghami interacts with users without having them explicitly input information. But when when the user does input something, Anghami takes it very seriously. For example, users can follow an artist or a playlist on Anghami. In this way, they would input their interest in getting updated about this artist or playlist. Upon following, Anghami immediately fetches playlists that are relevant to this artist or playlist, and displays them prominently in the homepage. Anghami cares about every action the user does, and is capable to adapt the homepage as an instant gratification to the user’s input.
A totally customized page
The second section in the homepage shows new songs. These songs are also now code-picked per user. Anghami will highlight new songs based on a user’s favorite artists, as well as artists similar to those. So Celine Dion releases a new hit, Whitney Houston fans will also be the first to know. The way Anghami is tailoring itself for every user makes it really easy to fall in love with music, and with Anghami.
The last section in our new homepage is the Personal DJ, which presents a variety of genres, moods and activities the user can choose from. The options presented are also tailored per user. A listener who prefers Pop and Rock music will see those listed first. Time is also a factor, so if it’s night time, the user will see music for Evenings, Chilling, and Partying.
By considering a user’s musical taste, the time and day, where they are, and their movement, we can provide the users with music we know they want. We now deliver a tailored experience so that users do not have to wade through a heavy list of music options they don’t want. And the subtle integration of playlists chosen by the content team adds a human touch to the playlist selection process.
Where we are
We iterated countless times to get to a homepage that anticipates what the user wants. With each iteration, members of Anghami’s team used the homepage in casual settings and came back the next day with a flood of feedback. How often should playlists change? What’s considered irrelevant evening music? Should heavy users be treated differently? How much can we sway from the user’s musical DNA?
On the second week of March we started rolling out the new homepage. Users opening the app are greeted with a flyer telling them about the new personalized home so that they’re not surprised by the changes. The improvement in user behavior is unbelievable: 20% more users played music upon opening the app, 50% more users followed playlists, and the retention rate went up by 30%. Also, positive app reviews have increased significantly.
We’ve been gaining intimate knowledge of users since Anghami’s inception, and now we are using this knowledge to predict what will satisfy our users the most. I’m very proud of the scalable, tailored work the team has done, and that we were able to make more people happy through great music.
Soon, every personalized playlist will have a description showing which of their favorite artists are in this playlist. Going so far as personalizing the description text means that users can have a solid expectation from each playlist at a glance, making it easier to find the best playlist for the moment. Personalizing an app is a challenging and amazing project that never ends. There’s much more planned work on making the process of playing music as seamless as possible.