Skip to content

Guide

How to track and analyze your M-Pesa spending in Kenya

Most Kenyans have no idea where their M-Pesa money goes. The transactions are small and frequent — KES 50 here, KES 200 there — until the month-end balance tells a story nobody planned. Here's how to get the data and what to do with it.

Open the M-Pesa Statement Analyzer →

The M-Pesa CSV statement contains every transaction for up to 12 months: date, time, recipient or sender, amount, and running balance. It is more granular than any bank statement because it captures every Buy Goods payment, every Paybill, every person-to-person transfer, and every airtime top-up. Most people have never seen it — they interact with M-Pesa by feel, not by data.

To export your statement: open the Safaricom app, tap More → M-Pesa → Statement, set your date range (up to 12 months at a time), select CSV format, and tap Request. Safaricom emails the file to your registered address within minutes. If you want a longer history, request overlapping date ranges. You can also download from the MySafaricom portal at safaricom.co.ke under My Account → Statements.

When you categorize the transactions, several patterns consistently surprise people. Airtime and bundles: the average Safaricom user spends KES 800–1,500/month without noticing, because top-ups are small and frequent. Person-to-person transfers: a category that looks like "helping family" often adds up to KES 3,000–8,000/month — not inherently wrong, but worth knowing. Food delivery and restaurant payments via Buy Goods have grown sharply since 2020 and are often the single largest discretionary category for urban professionals.

Once you know the numbers, the most effective change is structural rather than willpower-based. Move money off the M-Pesa float immediately after salary: to M-Shwari, a SACCO, or a fixed-term account. What isn't on the float can't be spent impulsively. For recurring costs (streaming, Zuku/Faiba, KPLC tokens), use the Budget Tracker to set category limits. The Savings Goal Tracker pairs well with this — once you know your actual spending, setting a realistic savings target becomes straightforward.

Frequently asked questions

How do I download my M-Pesa statement as a CSV?

Open the Safaricom app on your phone. Tap More (bottom right) → M-Pesa → Statement. Set your date range (up to 12 months per request). Select CSV as the file format and tap Request Statement. Safaricom sends the CSV to your registered email address within 5–10 minutes. Alternatively, log into the MySafaricom portal (safaricom.co.ke), go to My Account → Statements, and download directly. For longer history, make overlapping requests — e.g., one request for January–June, another for July–December.

What columns are in the M-Pesa CSV statement?

The Safaricom M-Pesa CSV export contains: Receipt No. (the transaction reference, beginning with a letter followed by alphanumerics), Completion Time (date and time of the transaction), Details (a text description — merchant name for Buy Goods, phone number or name for person-to-person transfers, service name for Paybill), Transaction Status (Completed or Failed), Paid In (amounts received), Withdrawn (amounts sent or paid out), and Balance (running balance after each transaction). Only Completed transactions affect your balance.

Is it safe to upload my M-Pesa CSV to an online tool?

The LeadAfrik M-Pesa Statement Analyzer processes your CSV entirely within your browser — the JavaScript runs locally on your device and the file is never transmitted to any server. You can verify this by disconnecting from the internet after the page loads and running the analysis — it works completely offline. Your financial data remains on your device. As a general rule, never upload M-Pesa or bank statements to tools that cannot explain exactly where your data goes — look for 'processed locally' or 'nothing uploaded' explicitly stated.

How much do Kenyans typically spend on airtime and data per month?

Based on Safaricom's publicly disclosed ARPU (Average Revenue Per User) data, the average M-Pesa user spends KES 500–1,500 per month on airtime and data bundles. Urban professionals and frequent mobile data users typically spend KES 1,500–3,500. Those using mobile data as their primary internet connection (replacing home fibre) can spend KES 3,000–5,000 on data bundles alone. Running the statement analyzer consistently surfaces airtime as one of the top 3 spending categories for most users who had not previously tracked it.

What is the most effective way to reduce M-Pesa overspending?

Structural changes work better than willpower. The most effective: immediately move a fixed amount to M-Shwari Lock Savings or a SACCO after each salary arrives — the float you can't see, you can't spend. For person-to-person transfers, set a monthly informal budget for family support and track it against your statement. For impulsive Buy Goods purchases (food delivery, quick shopping), keep a lower float in M-Pesa and use a separate till for larger intended purchases. Review subscriptions charged to M-Pesa annually — services accumulate and are easy to forget because each transaction is small.

Free tool

Ready to use the M-Pesa Statement Analyzer?

Open M-Pesa Statement Analyzer — free →

Private · runs in your browser · no account required