A data-driven investigation into mobile money payment failures for a Ghana-based SaaS platform — covering data cleaning, root cause diagnosis, and business recommendations
# Mobile-Money-Payment-Failure-Analysis-PayFlow-GH
A data-driven investigation into mobile money payment failures for a Ghana-based SaaS platform — covering data cleaning, root cause diagnosis, and business recommendations
## 📊 PayFlow GH — Mobile Money Payment Failure Analysis
> **Tools:** PostgreSQL | **Market:** Ghana Fintech | **Role:** Data Analyst | **Records:** 2,111 Transactions
---
### Project Background
PayFlow GH is a Ghanaian SaaS company founded in 2021, operating in the business management software industry. The company sells subscription-based software to small and medium enterprises (SMEs) across Ghana — helping them manage invoicing, payments, and customer records. PayFlow GH operates on a monthly recurring revenue (MRR) model, with customers paying subscription fees entirely via mobile money — MTN MoMo, Vodafone Cash, and AirtelTigo Money.
As a data analyst working at PayFlow GH, I was tasked with investigating a growing concern: payment failures were silently eroding revenue in two ways — causing existing customers to drop off and blocking new customers from completing their first payment. With a Series A fundraise approaching, leadership needed a clear picture of the scale of the problem, its root causes, and actionable fixes — before the next investor call.
Key business metrics monitored in this analysis:
- **Monthly Revenue Loss:** Average GHS lost per month to unrecovered payment failures
- **Failure Rate by Network:** Percentage of transactions failing per mobile money network
- **Failure Rate by Transaction Type:** How failure rates differ across new subscriptions, renewals, upgrades, and reactivations
- **Retry Behaviour:** Percentage of failed customers who attempt to retry payment
- **Revenue at Risk:** Total GHS lost to failures that were never recovered
The SQL queries used to inspect and clean the data can be found here → `sql/01_data_review.sql` and `sql/02_cleaning.sql`)
The targe …