
The case for running a model on the user's device is three numbers and one trade.
Cost: effectively zero per query once the engineering is done, because you are spending the user's battery rather than your inference budget. Latency: reported on-device averages of 80 to 300 milliseconds against 400 to 1,200 milliseconds for a cloud API, with one source putting cloud network overhead alone at 200 to 800 milliseconds before the first token arrives. Privacy: the data does not leave, which for regulated work removes an entire category of conversation.
The trade is capability. Current flagship phones run models up to roughly 7 billion parameters. Cloud gives you effectively unlimited size, and for reasoning, long-context work and code the frontier models remain clearly better. That gap is real and it is not closing as fast as the enthusiasm suggests.
So the question is not which one wins. It is which parts of your product belong on each side, and almost every serious deployment ends up hybrid. The mistake is treating this as a platform decision made once, rather than a routing decision made per feature.
Be careful with the numbers in this space. The directional case is consistent across sources; the specific figures mostly come from vendor blogs and are not benchmarks. One widely repeated claim that 80% of inference will run locally has no traceable source and should not be used by anyone.
Three questions decide the split. Does the feature need reasoning or recall? Does it run constantly or occasionally? And would sending the data off-device require a conversation you would rather not have?
A current flagship phone runs models up to roughly 7 billion parameters, which at 4-bit quantisation occupies about 4GB of RAM. The constraint is memory on the devices you actually address, not the best handset you can buy. Quantisation buys size and speed and costs accuracy, gradually and then sharply.
Parameter counts are the headline and the practical constraint is memory.
A model has to fit in RAM alongside the operating system and your application. A 7-billion-parameter model quantised to 4 bits occupies roughly 4GB, which is viable on a current flagship and not on a mid-range device from three years ago. Your addressable hardware is the thing that determines what you can ship, not the best phone you can buy.
Quantisation is the lever and it costs accuracy. Reducing numerical precision shrinks the model and speeds it up, with quality degrading gradually and then sharply. Where the cliff sits varies by model and by task, which means testing on your own workload rather than trusting a general claim.
Download size is a product problem before it is a technical one. A multi-gigabyte model download is a meaningful barrier to installation, and shipping it inside the application binary is usually not an option. Downloading on first launch, over wifi, with a clear explanation, is the normal pattern and it costs you some users.
Thermal throttling is the constraint nobody models. Sustained inference heats a phone, and the device slows itself down to compensate. A benchmark measured on the first query does not predict performance on the twentieth, and features that run continuously hit this where occasional ones do not.
Battery is a user-visible cost. An application that noticeably drains battery gets uninstalled regardless of how good its AI feature is, and this is the practical ceiling on how much local inference a consumer product can do.
Platform frameworks are maturing and are not uniform. Each platform has its own on-device inference path with its own supported formats and its own constraints, which means device-side work does not transfer between them the way server-side work does.
Both are real, and for most products the latency one changes the design more.
Under 300 milliseconds feels instant. A suggestion that appears as you type, a classification that happens as you paste, a summary that is there when you open the panel. These are interactions that cannot exist at 800 milliseconds, because the user has already moved on.
Cloud latency is also variable in a way local is not. A model that averages 600 milliseconds and occasionally takes four seconds produces a worse experience than one that reliably takes 400, because people adapt to consistency rather than to averages. On-device inference has a narrower distribution.
Offline capability falls out for free. A feature that works on a plane, in a basement, or on a bad connection is more valuable than the same feature with an error message, and for field applications it is the whole requirement.
The cost argument matters at scale and not before. A feature used ten times a day per user is trivially cheap through an API. The same feature invoked on every keystroke, for every user, is not, and that is the shape where local inference changes the economics rather than merely improving them.
Zero marginal cost is not zero cost. You pay in engineering, in download size, in device support, in testing across a hardware matrix and in the model updates you now have to distribute yourself. That is a real budget, just not a per-query one.
The directional claim across sources is consistent: reasoning and coding still favour cloud frontier models. The useful version is more specific than that.
Small models are good at classification, extraction and transformation. Is this message urgent? Pull the dates out of this text. Rewrite this in a different tone. Summarise this paragraph. These are bounded tasks with local context and a small model does them well.
They are weaker at multi-step reasoning, where the task requires holding several constraints and working through them. They are weaker at recall of world knowledge, which is largely a function of size. And they degrade faster as context grows.
They hallucinate more confidently when out of depth, which is the dangerous property. A small model asked a question beyond its capability produces a fluent wrong answer rather than an admission, so the routing decision needs to be made before the question reaches it.
Fine-tuning closes more of the gap than people expect, for narrow tasks. A small model tuned on your specific classification problem frequently beats a much larger general model at that one task, and that is the strongest argument for the local path: you are not competing with the frontier model in general, only on one job.
Context window is the constraint people discover late. Small models ship with smaller windows, and a task that works on a short input fails on a long document not because the reasoning got harder but because the text no longer fits. Check the window against your real inputs, not your examples.
The honest test is task-specific. Take your actual feature, run it against a small model and a frontier model on a hundred real inputs, and measure. General capability comparisons will mislead you in both directions.

The products that work run most requests locally and escalate the hard ones, and the quality of that routing decides the experience.
Route on the task, not on the input. "Classification goes local, open-ended questions go to the cloud" is a rule you can reason about and test. Deciding per request based on a confidence score is harder to predict and harder to debug.
A confidence threshold is the second layer. Where the local model can report uncertainty, escalating the uncertain portion catches what task-based routing misses. Calibration matters here for the same reasons it matters in evaluation.
Design for the escalation being visible or invisible, deliberately. A pause while a request goes to the cloud is noticeable. Either make it fast enough not to matter, or show that something more thorough is happening, but do not let it be an unexplained delay.
The offline case needs an answer. When the device has no connection and the router wants to escalate, the options are to degrade to the local answer with a caveat, queue the request, or refuse. All three are acceptable; silently returning a worse answer as though it were the normal one is not.
Keep the two paths behaviourally consistent. If the local and cloud paths format differently, use different tone or disagree on edge cases, users notice an inconsistency they cannot explain. Shared post-processing helps.
Instrument the split. What fraction ran locally, what fraction escalated, and what the quality difference was. Without that you cannot tell whether the local path is earning its engineering cost.
A cloud model improves without you doing anything. A local model is a binary you shipped, and every improvement is a distribution exercise.
Users sit on old versions indefinitely. Some fraction of your install base will be running the model you shipped eighteen months ago, which means supporting several model versions simultaneously and accepting that their behaviour differs.
Prompts are coupled to model versions. A prompt tuned for one model may behave differently on the next, so prompt and model have to be versioned and shipped together rather than independently. Teams used to changing a prompt server-side find this constraint genuinely painful.
Rollback is slow. A bad cloud deployment is reverted in minutes. A bad model shipped to devices is reverted at the speed of application updates, which is days at best and never for some users. That alone argues for keeping the cloud path able to take over.
A remote switch is worth building early. The ability to turn the local path off and route everything to the cloud, without an application update, is the single most useful operational control in this architecture, and it costs almost nothing to add at the start.
Download sizes compound with updates. Shipping a new multi-gigabyte model repeatedly is a bandwidth cost for the user and a reason to uninstall. Delta updates where the format allows, and a deliberate decision about how often a model version is worth pushing.
Measure quality per model version in the field, not just in testing, because the distribution of inputs across your install base is not the distribution in your test set.
The enthusiasm around on-device inference leads teams into it for reasons that do not hold up, and it is worth naming them.
For a feature nobody uses often. If the per-query cloud cost is trivial because the volume is low, local inference is pure added complexity. The cost argument has to be real before it justifies the engineering.
For a web product. Browser-based inference is possible and the constraints are much tighter: download size matters more, hardware varies more, and there is no installation step to amortise it against. Most web products should stay on the cloud path.
When the task genuinely needs capability. Teams sometimes choose local for cost reasons and then spend months trying to make a small model do something it cannot. Measure first; if the small model fails your hundred real inputs, no amount of prompting fixes a capability gap.
When the team has no mobile engineering depth. This is a device project. A backend team adding on-device inference is taking on platform work, a hardware test matrix and an update distribution problem, and the model is the least of it.
When privacy is the stated reason but the data moves anyway. If the result goes to your server regardless, the privacy argument is cosmetic and should not be used to justify the cost.
The defensible reasons are narrow and strong: constant-use features where cloud metering does not work, interactions that need sub-300-millisecond response, genuine offline requirements, and data that truly cannot leave the device. If none of those applies, use the API.

The strongest argument for on-device inference is that the data never moves, and it is worth being precise about what that does and does not give you.
It removes the transfer, which removes the hardest questions: which jurisdiction the processing happens in, whether a provider retains inputs, whether they train on them, and what your contract with your own customers permits.
It does not make the application private by itself. If the result is sent to your server, or the input is logged locally and synced, or analytics capture the interaction, the data has moved anyway through a different door. Audit the whole path rather than the model.
Cloud providers can also offer strong terms. No-retention modes, regional processing and contractual commitments are available from serious providers, and for many products those are sufficient. On-device is the stronger position, not the only acceptable one.
The compliance argument is easier to make than to quantify. "The data never leaves the device" is a sentence that ends a review quickly, and for regulated buyers that speed has commercial value distinct from the technical merit.
Model updates are the subtle exposure. If you improve the local model using data gathered from devices, you have reintroduced a transfer and need to be straightforward about it.
On-device AI is a mobile engineering project with a model attached, and it is priced like the former more than the latter.
The model work is the smaller half. Selecting, quantising, converting to the platform format and validating quality is real but bounded work.
The device matrix is the larger half. Performance, memory and thermal behaviour vary across hardware, and the testing surface is wide. A feature that works on three test devices will behave differently on the long tail your users actually own.
Distribution and updates need designing. Shipping a new model version to installed applications, handling partial downloads, supporting users on old versions and deciding what happens when a device cannot run the current model.
Budget the fallback as part of the build, not as an afterthought, because the cloud path has to exist for unsupported devices regardless.
Our rate band is published: $40 to $100 an hour by role, blending to $60 to $70 for a mixed team, with the device-side inference work at the top of it. The decision rule we would offer is that if your feature is occasional, on-device is a cost increase, and if it is constant, it is the only way the economics work.
Measure the feature on both paths first, on a hundred real inputs, before any architectural commitment. This is a week and it prevents the common failure of building local inference for a task the small model cannot do.
Ship cloud-first if you can. Get the feature right, learn what users actually ask, then move the portion that is high-volume and bounded onto the device. Building local first optimises something before you know whether it is correct.
Pick the hardware floor deliberately and publish it internally. Which devices get the local path, which get cloud, and what the experience is on each.
Treat the hybrid as permanent. Teams that plan to migrate fully to on-device build worse routers than teams that accept both paths will exist indefinitely.
Revisit annually rather than continuously. Device capability and small-model quality both improve on a yearly rhythm, and a written threshold for when to move more work locally is more useful than watching releases.
It is a language model small enough to run on consumer hardware rather than in a data centre, typically up to around 7 billion parameters on current flagship phones. Size is constrained by device memory, since the model must fit in RAM alongside the operating system and your application; a 7-billion-parameter model quantised to 4 bits occupies roughly 4GB. Smaller models trade general capability for speed, cost and the ability to run without a network.
Per query, effectively yes, because you are spending the user's battery rather than your inference budget. In total, not necessarily. You pay in engineering, download size, device support, testing across a wide hardware matrix, and distributing model updates yourself. A feature used ten times a day per user is trivially cheap through an API; a feature invoked on every keystroke is where local inference changes the economics rather than merely improving them.
Reported on-device averages are 80 to 300 milliseconds against 400 to 1,200 milliseconds for cloud APIs, with network overhead alone cited at 200 to 800 milliseconds before the first token. These come from vendor and practitioner blogs rather than controlled benchmarks, so treat them as directional. Just as important, local latency is more consistent, and users adapt to consistency rather than to averages.
They handle classification, extraction, transformation and short summarisation well, since these are bounded tasks with local context. They are weaker at multi-step reasoning, at recall of world knowledge, and they degrade faster as context grows. The dangerous property is that they hallucinate confidently when out of depth, producing a fluent wrong answer rather than an admission, which is why routing must happen before the question reaches them.
Hybrid, in nearly every case. Route most requests locally and escalate the hard ones, routing on task type rather than per-request guessing because task-based rules are testable and predictable. Add a confidence threshold as a second layer where the local model can report uncertainty. Plan for the offline case explicitly: degrade with a caveat, queue, or refuse, but never silently return a worse answer as though it were normal.
It removes the data transfer, which removes the hardest questions about jurisdiction, retention and training. It does not by itself make the application private: if results are sent to your server, inputs are logged and synced, or analytics capture the interaction, the data has moved through a different door. Audit the whole path. Note also that serious cloud providers offer no-retention modes and regional processing, which are sufficient for many products.
Annually. Device capability and small-model quality both improve on roughly a yearly rhythm, and a written threshold — which features move local at what capability level — is more useful than tracking individual model releases. Be sceptical of headline claims in this space: the directional case is consistent across sources but most specific figures come from vendor material, and at least one widely repeated statistic about local inference share has no traceable origin.

Vikas has around fifteen years of experience building software and now builds generative AI systems at Zyneto. His work covers retrieval augmented generation, agentic AI, knowledge graphs, AI memory, and the evaluation and guardrails that decide whether any of it is safe to put in front of customers. He has shipped enterprise copilots, document AI, chatbots and predictive analytics for e-commerce, fintech and marketing teams, and works day to day in Python, JavaScript and SQL. He follows multimodal models, business process automation and enterprise AI security closely, and mentors engineers moving into AI. He writes about architecture, inference cost and the failure modes that only show up at production scale.
Share your details and we will talk soon.
Be the first to access expert strategies, actionable tips, and the trends actually shaping the digital world. No fluff - just practical insights delivered straight to your inbox.
Dive into our blog and stay ahead of the curve with expert perspectives, future-ready trends, and tech tips written for decision-makers and doers alike.