Prices and model names in this article were updated on 31 October 2026.

Apple's Foundation Models framework lets an app run a language model on the user's iPhone, iPad or Mac. There is no API key, no network call and no per-token charge. At WWDC on 8 June 2026 Apple introduced its third generation of models (AFM 3) and widened the offer. Apps can now also call Apple's Private Cloud Compute (PCC) model. Apple says PCC "is available with no cloud API costs to developers who have less than 2 million first time downloads."

For apps whose users are on Apple devices, that moves a share of LLM spend to zero. The rest of this article covers how large that share can be.

What runs where

Apple's 2026 line-up has two on-device language models and two server language models, plus ADM 3 Cloud for image generation. Sizes and stated uses below come from a developer write-up of Apple's WWDC material. The second table, on access and cost, comes from Apple's own WWDC session.

Model Runs on Size Apple's stated use
AFM 3 Core the device 3B dense Lightweight text, routing, fast language understanding
AFM 3 Core Advanced the device 20B sparse, 1–4B active per prompt New Siri, dictation, text-to-speech, image understanding
AFM 3 Cloud Private Cloud Compute undisclosed Main cloud text and image-understanding model
AFM 3 Cloud Pro NVIDIA GPUs in Google Cloud undisclosed Complex reasoning, agentic tool use

What a third-party app can call, per Apple's session "What's new in the Foundation Models framework":

Access point Context Cost to the developer
SystemLanguageModel (on-device) Apple's sample code prints 8,192 tokens none
PrivateCloudComputeLanguageModel 32,000 tokens; adds a reasoning option none below 2 million first-time downloads
Third-party models through the same Swift API depends on the model billed per token by that vendor

Apple describes the PCC model as "the very same one that powers many of the Apple Intelligence features". The session does not name it. Users get a daily PCC allowance, higher with an iCloud+ subscription. Apple gives no numbers for either. The session does not say what happens to PCC costs above 2 million downloads.

The same write-up lists the supported devices. They are the iPhone 16 family, iPhone 15 Pro and Pro Max, iPad mini with A17 Pro, M1-or-later iPads and Macs, and Apple Vision Pro. Mainland China has no Apple Intelligence pending regulatory approval. The new Siri is not available on iPhone or iPad in the EU at launch.

Three tiers for an Apple-platform app: on-device model, Private Cloud Compute, third-party cloud model 1. On-device SystemLanguageModel Context in sample: 8,192 tokens Works offline Eligible devices only $0 2. Private Cloud PrivateCloudCompute- LanguageModel 32,000-token context Reasoning option Daily per-user limit $0 below 2M first-time downloads 3. Vendor cloud Claude or Gemini via vendor Swift packages, or your own backend Any platform Frontier quality Per token $0.10–$10 per 1M input
The three tiers an Apple-platform app can call in 2026, from free on-device inference to per-token cloud models.

The Foundation Models API

The framework is a Swift API. Apple added a Python SDK (apple_fm_sdk) in 2026. Apple says it "gives you direct access to the very same on-device model." macOS 27 also brings the models to the command line through an fm tool.

A summarisation call, with the availability check you need before relying on the model:

import FoundationModels

func summarize(_ feedbackText: String) async throws -> String? {
    let model = SystemLanguageModel.default
    guard case .available = model.availability else {
        return nil  // not eligible, turned off or not ready: use your fallback
    }
    let session = LanguageModelSession()
    let response = try await session.respond(
        to: "Summarize the following customer feedback concisely:\n\n\(feedbackText)"
    )
    return response.content
}

For structured extraction, the @Generable macro turns a Swift type into a schema the model must fill. @Guide constrains a field. This is Apple's version of the JSON-schema structured output that OpenAI and Anthropic offer.

import FoundationModels

@Generable
struct CustomerIntent {
    @Guide(.anyOf(["billing", "technical", "general"]))
    var category: String
    var urgency: String
    var sentiment: String
}

let session = LanguageModelSession()
let response = try await session.respond(
    to: "Classify this support message: \(message)",
    generating: CustomerIntent.self
)
let intent: CustomerIntent = response.content
print(intent.category)  // "billing", "technical" or "general"

The 2026 framework also reports token usage per response. Log it, because it tells you what the same traffic would cost on a paid API:

print(response.usage.input.totalTokenCount)
print(response.usage.output.totalTokenCount)

Two more 2026 changes matter for cost. Anthropic and Google publish Swift packages for their models, and a LanguageModel protocol lets local and server models back the same LanguageModelSession. Escalating from the free tiers to a paid model can therefore reuse the same session code.

The cost math for developers

Take a document summarisation feature: 10,000 daily users, each summarising one document a day, about 2,000 input tokens and 300 output tokens per request. That fits inside the 8,192-token context in Apple's sample.

Model Cost per request Per month (300,000 requests)
GPT-6.1 Sol or Claude Sonnet 5.5 ($2 / $10) 2,000 × $2/1M + 300 × $10/1M = $0.0070 $2,100
Gemini 3.8 Flash ($0.75 / $3.75) $0.0015 + $0.001125 = $0.0026 $787.50
Gemini 3.1 Flash-Lite ($0.25 / $1.50) $0.0005 + $0.00045 = $0.00095 $285
GPT-6 Luna or Claude Haiku 5.5 ($0.10 / $0.50) $0.0002 + $0.00015 = $0.00035 $105
Apple on-device model $0 $0

Against a frontier model the saving is large. Against the cheapest API tier it is about $105 a month for this workload. Gemini 3.8 Flash's price doubles on 1 January 2027, to $1.50 / $7.50. The cheapest LLM APIs article covers the low end by task.

Quality is the open question. According to the dev.to write-up, Apple publishes only human-preference comparisons against its own 2025 models. For text, raters preferred AFM 3 Core in 45.6% of comparisons and the 2025 model in 23.3%. The write-up found no third-party benchmarks, so test the model on your own examples before you count the saving. The small language models guide has a 200-example test that fits this case.

Practical integration patterns for business apps

App On device Send elsewhere when
Email triage Classify and summarise incoming mail, offline, with no network round-trip A thread is too long for the on-device context
CRM and sales tools Summarise call notes, extract action items, suggest follow-ups The user asks for analysis across many accounts
Document review Flag sections, summarise, answer questions on short documents The document exceeds the context: chunk it, or use the PCC model's 32,000 tokens
Customer support clients Classify the ticket, draft a first reply as the agent types The reply needs policy reasoning or account data from your backend

Where it falls short

Complex reasoning. Multi-step analysis, comparing several documents and careful argument still belong to frontier models such as Claude Sonnet 5.5 or GPT-6.1 Sol. The PCC model now has a reasoning option, which narrows the gap for some tasks at no cost below the download threshold.

Non-Apple users. If your app also runs on Android, Windows or the web, those users need a cloud path anyway. Older iPhones without Apple Intelligence support do too. For enterprise fleets that are not Apple-first, this limits the saving a lot.

Regional availability. Mainland China has no Apple Intelligence pending approval, and the new Siri is not on iPhone or iPad in the EU at launch. Check availability before you plan a feature around it.

Model changes. Apple shipped "a new on-device model, rebuilt from the ground up" in 2026. Prompts and evals tuned on the previous model need a re-run after each major OS release.

Limits you cannot see. PCC has a per-user daily allowance with no published number. The on-device model can report itself unavailable. Design the cloud fallback first.

The hybrid strategy for Apple platform apps

  1. Default to the on-device model for summarisation, classification, extraction and short generation.
  2. Move to the PCC model when the input exceeds the on-device context or the task needs reasoning. It is free below 2 million first-time downloads.
  3. Escalate to a paid cloud model only when the user asks for depth or the task type requires it.
  4. Cache cloud results for repeated questions, so you pay once per answer rather than once per user.
  5. Track the escalation rate, because it sets your bill.

The arithmetic is simple. Monthly cloud cost = requests per month × share escalated × cost per request. Take the example above and let 10% of the 300,000 monthly requests escalate to GPT-6.1 Sol. The bill is 30,000 × $0.0070 = $210 a month instead of $2,100.

The case is strongest for apps with large Apple user bases doing routine language tasks. Take a CRM app with 50,000 daily users, each running one such summary a day. It would pay $10,500 a month on GPT-6.1 Sol and $525 on GPT-6 Luna. On the device it pays nothing. Against the frontier price that is real money. Against the cheap tier the stronger arguments are latency, offline use and data that never leaves the phone. The October 2026 pricing snapshot has the current prices behind these figures.

What to do next

List the LLM features in your iOS or macOS app and the token counts of a typical request. Mark the ones that fit in 8,192 tokens and need no reasoning. Those are candidates for the on-device model. Run your eval on device against your current cloud model, then price the escalation share with the formula above. If you want help with the test or the routing, we do this work at Divero.

Sources