MVP development

Your MVP, scoped tightly and put in front of real users

We help you decide what to cut, agree a fixed written plan with milestones, price and dates, and send you a build to try every week until real people are using it.

Zoftaa is a small MVP development company in Lahore, Pakistan. We build first versions of apps and web products for founders in the US, the UK, Europe, the Gulf and Pakistan. A first version here means the smallest product that shows you, through real users, whether the idea works.

What we build

Working software that people can install or open. Usually one or more of these:

  • A mobile app for Android and iOS, written once in Flutter and released through Google Play and the App Store.
  • A web app in Next.js, when your users sit at a desk or you want to test demand before asking anyone to install something.
  • The backend: sign-in, a database, file storage, and an admin panel where you can see users and fix data yourself.
  • An AI feature at the core, built on the OpenAI or Claude APIs.

Every MVP we build also gets crash reporting, plus analytics on the one action that proves the idea, so the first weeks of real use give you numbers to decide with.

These examples show the shape of the work. They are not past projects:

  • Example: a pickup ordering app for a restaurant group. Customers order and pick a collection time; staff see orders on a tablet. Left out: delivery tracking and loyalty points.
  • Example: an AI quiz app for school students. A student pastes notes and gets 10 practice questions, with a free daily limit and a paid subscription. Left out: classrooms and leaderboards.
  • Example: a proof of delivery tool for a small courier. Drivers capture a photo and signature; the office sees each parcel's status on a web page. Left out: route planning.

Scoping: what to cut, and what you can't

A good MVP does one job for one kind of user, well enough that they come back. On the scope call we work backwards from that job and question everything else. These are the cuts we look at first:

  • A second type of user. If you have buyers and sellers, one side can often start as an admin panel you run yourself.
  • Automation you can do by hand. Approvals and refunds can be a person with an admin screen for the first few hundred users, and you learn more that way.
  • Extra sign-in methods. In apps we've shipped, every user starts as a guest and links an email or Google account later, so nobody hits a sign-up wall first.
  • Settings, themes, extra languages, offline mode and custom animations, unless your first users can't do without them.
  • A full web app next to the phone app. Flutter covers Android and iOS from one codebase; a complete web version on top usually isn't worth it yet.

Some things look cuttable and aren't, because the stores check them (rules checked 1 November 2026):

  • Account deletion. If users can create an account, Apple's App Review Guidelines (5.1.1(v)) say "you must also offer account deletion within the app", and Google Play wants an in-app path plus a web link for deletion requests (Play Console Help).
  • Enough app to count as an app. Apple's guideline 4.2 says an app "should include features, content, and UI that elevate it beyond a repackaged website". Cut too far and a thin iOS app can be rejected.
  • A demo account for the reviewer, a privacy policy linked inside the app and a build that doesn't crash. Guideline 2.1 asks for "demo account info (and turn on your back-end service!) if your app includes a login", and Apple says "over 40% of unresolved issues are related to guideline 2.1: App Completeness" (App Review).

Scoping ends with two short lists, what is in version one and what is not, and both go into the plan.

How an MVP project runs

  1. Scope call. One call to understand the problem, the users and any deadline, and to check that we are the right team.
  2. Fixed written plan. Before any code, a written scope: what is in, what is out, the milestones, the price and the dates. You can compare it line by line with any other quote.
  3. Weekly builds. Every week you get a version to try on your own phone (an Android build or a TestFlight invite) or a preview link for a web app, with a short call or written notes. A problem found in week 3 is cheap to fix.
  4. Real users. Before the public release, the app goes to a closed group of testers through Google Play testing and TestFlight.
  5. Release and handover. We submit to the stores, then hand over the code and keys with documentation: how to release, where each key lives and which services bill you monthly.

New ideas come up once people use the builds. We write each one down, and you decide, with the effect on price and dates in front of you, whether it goes into this version or the next.

Getting it in front of real users and onto the stores

Put the stores into the schedule from week 1, because some of the waiting is set by Apple and Google. The published rules (checked 1 November 2026):

Step What the store says What it means for your plan
Google Play, new personal account Personal accounts created after 13 November 2023 must run a closed test with at least 12 testers "opted in continuously for at least 14 days", then apply for production. That review "usually takes seven days or less" (Play Console Help). 14 days of testing plus up to 7 days of review is about 3 weeks from the first closed test to a public listing, so the closed test starts while the build is still going.
Google Play, organisation account "To create a developer account for an organization, you must provide a D-U-N-S number" (Play Console Help). Request the D-U-N-S number in week 1.
Apple TestFlight Up to 10,000 external testers, but only once your first build is "approved by App Review for TestFlight" (TestFlight). Leave time for one review before the first invites.
Apple App Store "typically reviewing at least 50% of submissions in less than 24 hours and 90% in less than 48 hours" (App Review). Usually quick, but each rejection costs a fix and another review, so we check the guidelines before submitting.

The closed test is also your first real feedback. We set up Firebase Analytics before it starts, so you can see whether testers reach the core action and come back the next day.

A web MVP has no store review. It runs on a preview link during the build and moves to your domain at release.

AI MVP development

An AI feature brings its own risks: answers in the wrong shape, costs that grow with every user, and providers that retire models. In the AI apps we've shipped, these rules held up:

  • The app never calls the AI provider directly. It calls your backend, which holds the keys and picks the model, so you can change provider or model without an app update.
  • We ask the model for structured JSON, check every field, and retry or fall back when the answer is incomplete. Users see a plain message, never a raw error.
  • Free users get a usage limit, and a generation counts against it only once the result is delivered, so a dropped connection costs nobody their allowance.

For a chatbot that answers from your own documents, see our AI chatbot development work.

What you own

Everything, and most of it is in your name from day one:

  • The code, in a repository you control, with a README on how to run, build and release it.
  • The developer accounts, opened with you in your name or your company's, with us as invited members. The Apple Developer Program is "99 USD per membership year" (Apple) and Google Play charges "a US$25 one-time registration fee" (Play Console Help), both checked 1 November 2026. A company account at Apple needs a legal entity and a D-U-N-S number (trade names are not accepted), so start early.
  • The cloud accounts: Firebase or Supabase, AWS or Cloudflare, the domain, analytics and the AI provider keys.
  • The documentation: every account, what each costs per month and the steps to release a new version.

Because it all sits in your accounts and uses common tools, another team can pick the product up later without starting again.

Stack and tools

  • Phone apps: Flutter, with Kotlin or Swift where a feature needs the platform directly. In our own apps that was video editing, which we wrote in Kotlin on Android's Media3 library. More on our Flutter app development.
  • Web apps and landing pages: React and Next.js on Cloudflare. See web development.
  • Backend: Node.js, or Python with FastAPI for AI-heavy work, in Docker on AWS or a similar host.
  • Sign-in and data: Firebase or Supabase for speed, PostgreSQL when the data is relational and will grow.
  • Subscriptions: RevenueCat on top of App Store and Google Play billing.
  • AI: the OpenAI and Claude APIs, called from your backend.
  • Back office: n8n, for jobs like sending each new sign-up to your CRM. See workflow automation.

Timelines

These are the ranges we plan around. They are estimates, and your written plan gives your real dates.

What you are building Typical build time
A clickable prototype to test with users before any code 1 to 2 weeks
A web MVP with one core flow, sign-in and an admin panel 4 to 8 weeks
A Flutter app for Android and iOS with a backend and an admin panel 6 to 10 weeks
The same app with an AI feature at its core, subscriptions or a second type of user 8 to 12 weeks
Store release for a new personal Google Play account About 3 weeks (14 days of closed testing, then up to 7 days of review), mostly overlapped with the end of the build

What moves a project within those ranges, or past them:

  • User types and screens. Each extra role adds its own flows, permissions and tests.
  • Outside systems such as payment providers, maps, or an API you already run.
  • AI features. Testing prompts on real inputs takes time, and a model that is usually right still needs a plan for when it isn't.
  • Things only you can supply: copy, prices, legal pages and decisions. The plan lists each one with the week we need it.
  • Feedback on the weekly builds. A build nobody tries is a week of guessing.

Working with us from abroad

Pakistan Standard Time is UTC+5 all year, with no daylight saving since 2009 (Wikipedia, checked 1 November 2026), so the gap only changes when your own clocks do. Our hours are Monday to Friday, 10am to 7pm PKT:

Where you are Our hours in your time Overlap with your 9am to 5pm
London, winter (GMT) 5am to 2pm 5 hours
London, summer (BST) 6am to 3pm 6 hours
Berlin or Paris, winter (CET) 6am to 3pm 6 hours
Berlin or Paris, summer (CEST) 7am to 4pm 7 hours
Dubai (UTC+4) 9am to 6pm Your whole day
Riyadh (UTC+3) 8am to 5pm Your whole day
New York, winter (EST) Midnight to 9am None
New York, summer (EDT) 1am to 10am 1 hour

For US clients we also take calls from 6pm to 10pm PKT, Monday to Friday. In New York that's 8am to 12pm in winter (EST) and 9am to 1pm in summer (EDT).

With the Gulf we share the whole day. With the UK and Europe there is a shared morning and early afternoon, which is when the weekly call happens. With the US, live calls and urgent replies happen in your morning, through that 6pm to 10pm PKT window. Notes you leave later in your day are waiting for us when we start. If you need live calls outside that window, say so on the scope call and we'll tell you whether the hours work.

Email, WhatsApp and the contact form all reach the engineers who write the code, and we usually reply within one business day.

When we're not the right fit

  • You need a large team quickly. We stay small on purpose, so the people on your call write your code. If you need ten engineers next month, a bigger firm fits better.
  • You haven't tested demand and the budget is tight. A landing page with a sign-up form can tell you a lot for much less, and we'll say so.
  • Nobody on your side has time to try the weekly builds. Without that feedback, a fixed plan turns into guesswork.
  • You are building a 3D game or an AR-heavy product. That needs a games studio.
  • The product must pass a formal security or compliance certification from day one, for example because it stores card numbers itself. Pick a team that has been through that certification.

Frequently asked questions

How long does it take to build an MVP?

Usually 4 to 8 weeks of building for a web MVP and 6 to 12 weeks for a Flutter app. A new personal Google Play account adds about 3 weeks of store time, most of it overlapped with the build. The written plan gives your dates before any code is written.

How much does an MVP cost?

We don't publish prices. You get a fixed price in the written plan, before any code, with exactly what it covers. The same things that move the timeline move the price.

Should my MVP be a mobile app or a web app?

An app, if users will open it on their phones several times a week or it needs the camera, location or notifications. The web, if they use it at a desk or rarely, or you mainly want to see whether anyone signs up. More on our mobile app development page.

Can you take over a prototype built with an AI app builder or by a freelancer?

Yes. Send the code or a link before the scope call. Sometimes building on it is quicker; sometimes sign-in, data and the store release are easier to do properly from scratch. The plan says which, and why.

Do I need my own Apple and Google developer accounts?

Yes, in your name or your company's from the start, so your app is never stuck in someone else's account.

What happens after launch?

You have the code, accounts, keys and documentation. If you want us to keep building, a monthly product retainer keeps the same engineers on it. If you'd rather hire your own team, the handover documents are written for them.

Can I see MVPs you've built?

We have no public case studies yet. On the scope call you talk to the engineers who would write your code, and the first weekly builds show you how we work early in the project. To start, send us a few lines about your idea.

Guides on this topic

Contact

Have something that needs building?

Tell us about the problem in a few lines. An engineer will reply, usually within one business day.

Studio
Lahore, Pakistan
Hours
Monday to Friday, 10am to 7pm PKT
US calls
6pm to 10pm PKT, your morning on the East Coast
New work
Open for Q4 2026