Because in a consumer app there is no per-seat licence covering your inference bill, and unit economics decide whether the product lives. We build the cost model in the first sprint, alongside the app.
A B2B web tool charges per seat and can absorb a few dollars of tokens a month. A consumer mobile app cannot. If a free user costs you 40 rupees a month in inference and converts at two percent, the arithmetic fails and no amount of growth fixes it. So we instrument cost per active user from the first build, then engineer it down: on-device inference for anything that does not need a frontier model, aggressive prompt caching on stable system context, small-model routing for classification and extraction, semantic caching on repeated queries, and hard per-user ceilings with a real UI path when a limit is hit.
The number goes on a dashboard next to retention, in rupees or dollars, because that is the pair that decides pricing. The rest is engineering discipline we did not learn from AI. Exchange and wallet systems taught us idempotency, replay protection, offline-tolerant state reconciliation and auditability under people actively trying to break things — the exact properties an AI app needs once it has paying users on bad networks. We build in React Native when one team and one codebase is the right trade, and go native Swift or Kotlin when the app lives or dies on NPU access, background processing or camera pipeline performance.
We will tell you which in the first call. We also say no: if a feature is a regex, a lookup table or a well-tuned search index, we will build that instead and it will be faster, cheaper and more reliable than a model. Code, prompts, model weights and evals are yours from day one.
- Cost per active user tracked from the first build and engineered down, not discovered in month three
- On-device inference used as a cost lever, not just a privacy feature
- React Native or native chosen on engineering grounds, with the reasoning shown before you commit
- Idempotency, replay protection and offline reconciliation carried over from wallet and exchange work
- Honest scoping — features that should not use a model get built without one