# SpeechAnalyzer

Canonical page: https://flit.fyi/glossary/speechanalyzer

[Glossary](https://flit.fyi/glossary) / [On your Mac](https://flit.fyi/glossary#mac)

Also: SpeechTranscriber, Speech framework

Published October 4, 2026

Definition

SpeechAnalyzer is a class in Apple’s Speech framework, introduced with macOS 26 and iOS 26, that apps use to turn spoken audio into text. It runs an analysis session with modules such as SpeechTranscriber, using speech models that are downloaded from Apple and managed by the system.

You will not find SpeechAnalyzer in System Settings. It is a developer API, the plumbing an app calls when it wants speech-to-text without shipping its own model. Apple says the same technology already powers features in Notes, Voice Memos and Journal.

It matters to Mac users for two reasons. Apps built on it transcribe on the device, and they share one set of system-managed models instead of each app adding its own model to your disk.

## What does SpeechAnalyzer do?

Apple’s documentation describes SpeechAnalyzer as the object that analyzes spoken audio and manages the analysis session. The analyzer itself does not transcribe. It holds modules, and each module does one kind of analysis. Apple says many use cases only need the SpeechTranscriber module, which performs speech-to-text.

The API is written for Swift concurrency. An app feeds audio in as an asynchronous sequence and reads results from another asynchronous sequence, so input, output and session control are decoupled. An analyzer can only analyze one input sequence at a time.

- SpeechAnalyzer: holds the modules, accepts audio input and controls the overall analysis.
- SpeechTranscriber: a transcription module that Apple describes as appropriate for normal conversation and general purposes.
- DictationTranscriber: a transcription module similar to system dictation features and compatible with older devices.
- SpeechDetector: a voice activity detection module that can gate transcription on the presence of speech to save power.
- AssetInventory: installs and tracks the model assets the modules need.

## SpeechAnalyzer vs SFSpeechRecognizer

SFSpeechRecognizer is the older speech API, available since iOS 10 and macOS 10.15. In its WWDC25 session Apple said that class gave access to the speech-to-text model powering Siri, worked well for short-form dictation and could use Apple servers on resource-constrained devices. Apple’s documentation for it still describes speech recognition as a network-based service with usage limits.

Apple says the new model behind SpeechTranscriber is both faster and more flexible than the one available through SFSpeechRecognizer, and good for long-form and distant audio such as lectures, meetings and conversations. Apple’s reference page does not mark SFSpeechRecognizer as deprecated, so existing apps keep working.

- Where it runs: Apple says transcription with the new API is entirely on device. SFSpeechRecognizer may require an internet connection for some languages.
- Audio length: Apple tells developers to plan for a one-minute limit on audio duration with SFSpeechRecognizer. The new model is built for long-form audio.
- Keeping audio local: with SFSpeechRecognizer a developer must set requiresOnDeviceRecognition, and Apple notes on-device requests will not be as accurate.
- Languages: Apple says the old class relied on the user to add languages. The new API lets the app request the model for a language itself.
- Results: the new API can deliver quick volatile results that are later replaced by finalized ones.

## SpeechTranscriber vs DictationTranscriber

SpeechTranscriber uses Apple’s new speech-to-text model. Apple says it is available for all platforms but watchOS, with certain hardware requirements, and supports a set of languages with more to come. An app is expected to check whether the current device supports it before using it.

DictationTranscriber is the fallback for an unsupported language or device. Apple’s documentation says it uses the same speech-to-text models as system dictation features, or as SFSpeechRecognizer when configured for on-device operation. It does not support languages that SFSpeechRecognizer only supports through network access. Apple adds that, unlike the old class, the user does not have to go into Settings and turn on Siri or keyboard dictation for a language.

## How to transcribe audio with SpeechAnalyzer

Apple’s reference page gives a general sequence for analyzing audio files and streams. The steps below follow that sequence for a developer building a Mac app in Swift on macOS 26 or later.

1. Create and configure the modules you need, for example a SpeechTranscriber for a locale.
2. Make sure the relevant assets are installed or already present, using AssetInventory.
3. Create an input sequence that will carry the spoken audio, from a file or from a capture device such as a microphone.
4. Create the analyzer with the modules and the input sequence.
5. Supply audio and start the analysis.
6. Read results from the module as they arrive and act on them.
7. Finish the analysis when you are done, so the result streams end.

## How to install the speech models with AssetInventory

The models are not bundled with the app. Apple describes the assets as machine-learning models downloaded from Apple’s servers and managed by the system. In the WWDC25 session Apple says the model is retained in system storage, does not increase the download or storage size of the app, and runs outside the app’s memory space.

Once an asset is downloaded, the system retains and updates it automatically and shares it with other apps. Each app gets a limited number of locale reservations.

1. Create the analyzer modules in the configurations you plan to use.
2. Assign your app’s asset reservations to those locales. AssetInventory does this automatically if needed, or you can reserve a locale manually.
3. Request an asset installation for those modules and call its download and install method.
4. Wait for the download to finish. It may finish immediately if the assets were preinstalled or another app already downloaded them.
5. When your app no longer needs a locale, release the reservation so the system can remove the assets later.

## Is SpeechAnalyzer private? Which platforms support it?

Apple’s WWDC25 session states that transcription is entirely on device but the models need to be fetched. The download comes from Apple’s servers, and after that the audio an app transcribes with SpeechTranscriber is processed on the device. What an app then does with the resulting text is up to that app, so its own privacy policy still applies.

Apple’s documentation lists SpeechAnalyzer and SpeechTranscriber for iOS 26, iPadOS 26, Mac Catalyst 26, macOS 26, tvOS 26 and visionOS 26. DictationTranscriber is listed for the same platforms except tvOS. On a Mac, apps that have asked for speech recognition access appear at System Settings, Privacy & Security, Speech Recognition.

SpeechAnalyzer is one way for a Mac app to transcribe locally. Open models such as Whisper and Parakeet are another, and they are bundled or downloaded by the app instead of being managed by the system.

In Flit

On macOS 26 or later, Apple Speech is one of the voice models you can choose in Flit, with nothing to download.

[Choosing a voice model](https://flit.fyi/setup#engine)

## Questions people ask.

### What is SpeechAnalyzer?

SpeechAnalyzer is a class in Apple’s Speech framework that analyzes spoken audio and manages the analysis session. With the SpeechTranscriber module it performs speech-to-text in apps on macOS 26, iOS 26 and later.

### Does SpeechAnalyzer work offline?

Apple says transcription is entirely on device, but the models need to be fetched first. Once the assets are installed, the system retains them and shares them with other apps.

### Which macOS version does SpeechAnalyzer need?

Apple’s documentation lists SpeechAnalyzer as available from macOS 26.0. It is also available on iOS 26, iPadOS 26, Mac Catalyst 26, tvOS 26 and visionOS 26.

### Is SFSpeechRecognizer deprecated?

Apple’s reference page for SFSpeechRecognizer does not mark it as deprecated. Apple introduced SpeechAnalyzer as a new API that supports more use cases, and says its model is faster and more flexible.

### What is the difference between SpeechTranscriber and DictationTranscriber?

SpeechTranscriber uses Apple’s new model for general and long-form transcription on supported devices. DictationTranscriber uses the same models as system dictation features and is the fallback for older devices and other languages.

### Do SpeechAnalyzer models take up space in my app?

No. Apple says the model is retained in system storage and does not increase the download or storage size of the app, and it runs outside the app’s memory space.

## Related terms

- [Speech-to-text](https://flit.fyi/glossary/speech-to-text)
- [Automatic speech recognition](https://flit.fyi/glossary/automatic-speech-recognition)
- [On-device processing](https://flit.fyi/glossary/on-device-processing)
- [Voice activity detection](https://flit.fyi/glossary/voice-activity-detection)

## Your voice was always faster.

7 days free, then $19 USD once. No account, no subscription, nothing uploaded.

[Download for Mac](https://flit.fyi/download) [Buy now · $19 USD](https://flit.fyi/pricing#personal)

macOS 14 or later · Apple silicon
