Cover image
Cover image

Overview

In Kenya, most payments are made through M-Pesa, a mobile money service that works with SMS messages. All you need to pay and get paid is a basic phone. No cards. No terminals. Paying is as simple as sending an SMS. With Overview Kenyans were able to visualize M-Pesa transactions on Android smartphones.

Why did we build Overview?

First, a quick introduction about mobile money. Every M-Pesa transaction is confirmed by an SMS message. A sample SMS reads as follows:

LKH48MSZ38 Confirmed. Ksh500.00 sent to SAMUEL THUMBI 0710123456 on 17/11/17 at 3:04 PM. New M-PESA balance is Ksh736.00. Transaction cost, Ksh11.00.

The confirmation code, the transaction amount, the recipient, the transaction date, the current balance and the transaction fee are all included in the message. This is what makes M-Pesa universal, as every phone can receive SMS messages. I wrote an in-depth article about M-Pesa if you want to learn more.

SMS messages are the only way Kenyans had to track their finances.

How much did I spend this month?
Which shop do I spend most money at?
How much did I earn today?
Did I repay my loan?

Difficult questions to answer when all you have is an endless stream of SMS messages like the one we just analyzed.

In the age of smartphones, we believed that those SMS messages could use an interface. So I built an Android app that would extract the important data from the text messages sent by M-Pesa, and visualize them.

Inspired by emerging neobanks like N26 and Monzo, we aspired to bring similar streamlined interfaces to users in Kenya.

User research as the foundation

We didn't want to simply jump in and build an app that only looked good. We wanted to build an app that also was useful for our users. The best way to do that is to talk to people.

Interviews

Before opening a code editor, we made sure we met as many Kenyans as possible. Over the course of 3 weeks, we interviewed over 100 people from all over Nairobi.

Facebook Ad

The people we interviewed needed to fit one criteria: use an Android phone. The way we found those people was through Facebook Ads. We created ads inviting people to come talk to us for 30 minutes, and targeted anyone using an Android phone in several locations around Nairobi.

We would then meet up at cafés and remunerate them for their time. From students to parents to hustlers, we got invaluable feedback that we implemented in building Overview.

Launching Overview

Overview grew quite quickly following the launch on the Google Play store. Often in the top downloaded apps in the Finance category, our user base grew to over 10,000 users.

Overview promo image
Overview promo image
Overview promo image
Overview promo image

User research interviews paid off. Our users loved the application, and gave it a 4.52 star rating. 30-day retention rates were at 50%, and our DAU/MAU stood at 15%, which for a financial app is really good.

⭐️⭐️⭐️⭐️⭐️ this app is just awesome... well done to the developers.. make some more of these innovative solutions

⭐️⭐️⭐️⭐️ Great app!! A security feature like a password would be a plus

⭐️⭐️⭐️⭐️⭐️ Amazing. Nice UI and UX! I realized I spend a lot unnecessarily. Thanks for the great app. Hope you don't put lousy ads.

Learning from our data

As Overview works by analyzing SMS messages, we could build a retroactive transactional history immediately after install as long as the SMS messages were still on the device. This led to our database quickly containing over 1 million unique transactions, tracking over 35.7 million USD in value.

We then proceeded to analyze this massive amount of information. From our analysis, we learned two important things about money in Kenya.

1. Airtime

The biggest category for transactions outside of peer-to-peer payments is for airtime purchases. Over 25% of mobile money transactions are to top-up a phone number.

A Safaricom user buying airtime
A Safaricom user buying airtime

The reason behind this huge amount of transactions is that most Kenyans buy airtime on a daily basis. Daily purchases are popular for a simple reason: they match the income patterns of the country. 83% of the active population makes a living in the so-called informal economy by trading, providing services, and earning money on a daily basis.

This discovery was so important for us that we even made an airtime comparison site called Boost, and I wrote in detail about it here.

2. Micro-loans

With income coming in on a daily basis, a large population of the informal economy relies on micro-lending to finance expenses.

Loan disbursal and repayments over 1 year
Data visualisation of a user borrowing money and repaying their loans

In this example, our user took out loans with Branch on a near-monthly basis (positive values), repaying their debt (negative values) monthly or weekly. You can also see their credit limit increasing over time. In June 2017 our user also started borrowing money with Tala. The two most recent loans remain open.

Tala and Branch were the two main app-based loan providers active in Kenya when Overview launched. Their loan terms are simple: borrow 100 and repay 115 after 4 weeks. If the money is not repaid on time, a late payment fee (15) is added on top. Note that interest did not accrue over time, so the maximum you would have to repay is 130, but you are at risk of being reported to the Kenyan credit bureau.

While the terms for these loans seem steep, they did find an audience with Kenyans, for better or worse.

Monetizing Overview

We launched Overview as a free app to learn first before committing to a monetization stategy. We just knew we wanted to earn money in a way that didn't harm our users.

Our first attempt at generating revenue was to white-label the technology and sell it to banks in Kenya. Unfortunately, while we managed to get in touch with leading banks, all deals fell through.

By then we had a much better insight of the lending market, so we decided to start building Overview Credit, our airtime lending platform.

Our thinking was simple: monthly telecommunications plans are more cost-effective than daily ones. By taking out a loan with Overview, even including the loan fee, people could save money. A win-win for everyone. And because we bought airtime in bulk at a discount, we could offer lower fees, even lower than Tala or Branch.

The death stab

In March 2018, the Cambridge Analytics scandal broke. This company harvested data from the Facebook Graph API to create profiles for over 87 million users.

Companies all over the world scrambled to shut down APIs that could be weaponized in similar ways. One of those companies was Google. In October 2018 they announced the removal of all Android Apps that use the SMS Read permissions.

Overview applied for but did not get an exemption, and hence was delisted from the Play Store. Unable to access the SMS messages and perform its most basic task, Overview was no more.

We also had to stop the development of Overview Credit, our airtime lending app that was close to launch, as it relied on SMS access to build a credit score.

That means we we were left with only one product that could move forward: Boost, our phone subscription comparison service.

Tech stack

These are the technologies I chose as CTO to build and launch Overview.

Overview was built in Java, with the credit app built in Kotlin. Data analysis was done in Tableau and in Jupyter Python notebooks. The backend was powered by Firebase. Africa's Talking was the API provider that allowed us to integrate with mobile networks and mobile money providers.

Profile picture

Java

Profile picture

Kotlin

Profile picture

Firebase

Profile picture

Realtime Database

Profile picture

Cloud Functions

Profile picture

Javascript

Profile picture

Node.js

Profile picture

Tableau

Profile picture

Jupyter

Profile picture

Python

Profile picture

XGBoost

Profile picture

Keen

Profile picture

Africa's Talking

Credits

A shout out to the 6 team members who helped Overview grow in Kenya!

Profile picture

Hans Pauwels

Founder & CEO

Profile picture

Charles-Axel Pauwels

Founder & CTO

Profile picture

Henri-Jérôme Pauwels

Founder & CMO

Profile picture

Angelo Astilean

Data analyst

Profile picture

Carlo Didonè

Business development

Profile picture

Victor Carakehian

Data analyst