Earning as an app developer in Kenya
App development is one of the best-paid tech skills, locally and internationally. Here's how app developers earn, how to price work, and a roadmap from beginner to hired.
Ways app developers earn
| Path | How |
|---|---|
| Client projects | Build apps for businesses, schools, SACCOs, NGOs, startups (fixed price per project) |
| Maintenance retainers | Monthly fee to update, fix and host apps you built |
| Employment | Mobile developer roles at banks, fintechs, telcos, startups, agencies |
| Remote work | International companies via Upwork, Toptal, Andela, Turing, Arc |
| Your own apps | Ads, subscriptions, paid features (Google Play Billing for digital goods), or a SaaS for a niche (like CBET Planner for TVET trainers) |
| Teaching | Courses, bootcamps, mentoring |
What clients pay for (Kenya)
| Project | Typical range (KSh) |
|---|---|
| Simple web app / PWA | 40,000 to 100,000 |
| Business app with login, payments and admin dashboard | 100,000 to 300,000 |
| Marketplace or on-demand app (customers, providers, maps, payments) | 300,000 to 1,000,000+ |
| Monthly maintenance | 5,000 to 50,000+ |
These are typical market ranges, not fixed prices. Always quote from a written scope, take a deposit (40 to 50%), and charge for changes outside the scope. See how much an app costs in Kenya.
Protect yourself on client projects
- Written agreement: scope, timeline, payment stages, who owns the code and accounts, support period.
- Milestones: design → working prototype → beta → launch, with payment at each.
- Client owns their accounts: their Google Play account, their Daraja credentials, their hosting. You get access, they keep ownership. It builds trust and avoids disputes.
- Hand over properly: source code, credentials, a short guide, and training.
The portfolio that gets you hired
- Three real apps beat twenty tutorial clones: a business tool (like the Duka stock app in the Flutter course), an app with login and an API, and one that solves a problem for someone you know.
- Publish at least one on Google Play (or share an APK and a demo video).
- GitHub with clean code and READMEs.
- Case studies: problem, what you built, results, screenshots.
- LinkedIn posts showing your progress and projects.
Roadmap (about 6 to 9 months of steady work)
| Months | Learn |
|---|---|
| 1 | Programming basics (Python or JavaScript), Git |
| 2 | Dart (or JavaScript deeply for React Native) |
| 3 to 4 | Flutter (or React Native / Kotlin): this hub's courses |
| 5 | Backends: SQL, PHP or Node APIs, Firebase, M-Pesa basics |
| 6 | Testing, publishing, a polished portfolio app |
| 7+ | Apply for jobs, freelance, keep building and learning |
Where to find work
- Local businesses and institutions you can reach in person or through your network.
- Kenyan job boards (BrighterMonday, Fuzu, LinkedIn).
- Freelance platforms (Upwork, Fiverr) and vetted networks (Toptal, Andela, Turing).
- Developer communities: Google Developer Groups, Flutter and Android meetups, tech hubs.
Continue with the Flutter, Android with Kotlin, React Native and APIs & backends subjects.
The app developer career landscape
App developers work in startups, banks and fintechs, telecoms, agencies, NGOs and government digital services, or independently as freelancers for local and international clients. Demand comes from businesses wanting to sell online, accept M-Pesa, manage customers, digitise records and serve users on their phones. Skills compound: once you can build and publish an app with payments, you can serve many types of clients.
Career paths
| Path | What you do | How to prepare |
|---|---|---|
| Employed developer (startup, bank, agency) | Build features in a team, code reviews, sprints | Portfolio, Git skills, teamwork, interview practice |
| Freelancer (local clients) | Build apps/websites for businesses, schools, churches | Portfolio, communication, contracts, reliable delivery |
| Remote/international freelancing | Work through platforms or direct clients abroad | Strong portfolio, English communication, time-zone management |
| Product builder (your own app) | Solve a problem and earn from users | Market research, MVP, marketing, persistence |
| Specialist | Payments, security, performance, mobile DevOps | Deep knowledge in one area |
Writing a strong proposal for a client
Project: Online ordering app for Mama's Kitchen (Nakuru)
Understanding: Customers currently order by phone; orders get mixed up at lunch time.
Solution: A simple ordering app (Android + web) with menu, cart, M-Pesa payment and an
order dashboard for the kitchen.
Scope (version 1):
- Menu with photos and prices (owner can edit)
- Cart and M-Pesa STK checkout
- Order dashboard with status updates and SMS confirmation
Not included in v1: delivery tracking, loyalty points (can be added later)
Timeline: 6 weeks (design 1 week, build 4 weeks, testing and launch 1 week)
Investment: KSh ___ (40% deposit, 30% at beta, 30% at launch)
After launch: optional support plan at KSh ___/month (updates, backups, small changes)
Accounts: Google Play and payment accounts registered in the business's nameA clear proposal shows you understand the business, defines scope, and protects both sides.
Pricing your work
Consider:
- Hours needed (with buffer), your hourly/day rate, and project complexity.
- Third-party costs (store fees, hosting, SMS, design assets) charged separately and transparently.
- Ongoing maintenance as a separate monthly or yearly agreement.
- The value to the client (an app that processes thousands of orders is worth more than a simple brochure).
Avoid racing to the bottom on price; reliable delivery and good communication justify fair rates.
Contracts and protecting yourself
| Clause | Purpose |
|---|---|
| Scope and deliverables | What's included and excluded |
| Milestones and payments | Deposit and payments tied to deliverables |
| Change requests | Extra work is quoted and approved in writing |
| Ownership | Code and accounts transfer to the client after full payment |
| Timeline responsibilities | Client provides content and feedback on time |
| Support and warranty | Bug fixes for a period after launch; new features are separate |
| Confidentiality and data | How client and user data are handled |
Keep communication in writing (email or a project channel), and send summaries after calls.
Interview preparation for developer jobs
- Portfolio walkthrough: be ready to explain one project in depth: problem, architecture, challenges, what you'd improve.
- Fundamentals: your language, data structures, APIs and HTTP, Git, basic SQL.
- Practical tasks: small take-home or live coding exercises; practise building a screen that fetches and displays data.
- System design (junior level): how would you design a simple booking or ordering app (screens, API, database, payments)?
- Behavioural questions: teamwork, handling feedback, a bug you struggled with and how you solved it.
Ask questions too: how the team reviews code, how releases work, what you'd learn in the first months.
Building a reputation
- Publish projects on GitHub with good READMEs and screenshots.
- Write short posts on LinkedIn about what you're building and learning.
- Contribute to open source or community projects.
- Join developer communities (meetups, tech hubs, online groups) and help others.
- Ask satisfied clients for testimonials and referrals.
A learning plan for the next 12 months
| Months | Focus | Output |
|---|---|---|
| 1–3 | One stack deeply (e.g. Flutter or Kotlin), Git, APIs | 2 small apps on GitHub |
| 4–6 | Back end basics, databases, authentication, M-Pesa sandbox | A full app with login and payments (sandbox) |
| 7–9 | Testing, publishing, analytics, performance | A published app on Google Play (even a simple one) |
| 10–12 | Freelance or internship experience, specialisation | Real client project or job, strong portfolio |
Consistency (an hour or two daily) beats occasional long sessions.
Practice
- Write a proposal for an app for a local business using the template above.
- Draft a simple contract checklist for your freelance projects.
- Prepare a 3-minute walkthrough of your best project.
- Practise three behavioural interview answers using situation, task, action and result.
- Create a 12-month learning plan with monthly goals.
Think about it: A client asks you to publish their app under your personal Google Play developer account "to save time and money". What are the risks, and what should you advise?Show answer
The app would legally belong to your account: the client depends on you for every update, transferring it later is extra work, and any policy problem affects your whole account (and your other apps). Advise the client to create their own developer account (in the business name), invite you as a user with the right permissions, and keep payment and store accounts under their ownership.
Check yourself
What part of the project price is usually taken as a deposit? Give a percentage, like 40.
Show answer
40
Whose name should the Google Play and Daraja accounts be in: the developer's or the client's?
Show answer
the client's
How many strong portfolio apps are recommended?
Show answer
3
Payments tied to design, prototype, beta and launch are called ...?
Show answer
milestones
Where should your code be published for employers to see?
Show answer
GitHub
In whose name should the client's Google Play account be registered: the developer's or the business's?
Show answer
business
What document describes understanding, scope, timeline and price for a client?
Show answer
proposal
What should extra work outside the agreed scope be handled as? (two words)
Show answer
change request