SayCopy identifies the spoken language for you.
Auto-detect uses Whisper Large V3 Turbo as a dedicated engine. It is designed to return the transcript in the language you spoke instead of translating it into English.
Help & FAQ
Learn which model handles your recording, how Auto-detect works, what Light cleanup changes, and what to check when a result is not what you expected.
Start here
Auto-detect uses Whisper Large V3 Turbo as a dedicated engine. It is designed to return the transcript in the language you spoke instead of translating it into English.
Choose a language when you want SayCopy to send a language hint to your preferred model, such as Deepgram Nova-3, Whisper, Chirp, or another compatible model.
Your source recording language is saved and restored the next time you open SayCopy. Selecting Auto-detect does not erase or replace your preferred model. In Settings you may see both Preferred: deepgram/nova-3 and Auto engine: openai/whisper-large-v3-turbo. That is expected.
The model map
After transcription
A text model improves punctuation, capitalization, spacing, obvious filler, and small transcription artifacts. It must preserve the original language and script. SayCopy limits this polishing step so it cannot become an open-ended rewrite.
SayCopy shows the raw speech-to-text result and skips the second model call. This is useful when comparing the original transcript with a cleaned result.
The Transcribe tab keeps the language you spoke. To change languages, use the Translate tab.
Learn and translate
Tap Saved at the top of Translate to open your saved translations in a bottom sheet. Tap a tag to filter them, tap an entry to reopen it, or tap 🔊 to hear it again. Close the sheet to focus on your current translation. Saved translations are stored only on this device and also appear in History.
Common questions
Deepgram remains your preferred model and is used when you select a specific language. Auto-detect uses a dedicated engine because providers expose different language-detection controls, and omitting a language does not behave consistently across all of them.
Yes. Any available model can remain your preferred transcription model while Auto-detect uses its dedicated engine. When you choose a specific language, SayCopy uses the preferred model if it supports that language.
After you choose a preset, select a model from the browser, or tap a custom-model save button, SayCopy shows a green confirmation above the bottom navigation. The active model label also updates to the saved choice.
Provider controls are not standardized. Some require a separate detection flag, some accept a special language value, and some do not support every SayCopy language. A dedicated Auto engine gives users one consistent behavior.
No. Those presets choose the text-processing model used for translation and Light cleanup. Your preferred transcription model and the Auto engine are separate.
No. It skips cleanup only on the Transcribe tab. The Translate tab still uses the active text-processing model because translation is the requested result.
English, Spanish, Arabic, French, German, Italian, Portuguese, Chinese, Japanese, Korean, and Hindi, plus Auto-detect. In Settings, each transcription model shows how many of these languages it supports, for example All 11 app languages or 6 of 11 app languages · no Arabic, Chinese, Japanese, Korean, Hindi. Models with the widest coverage are listed first. If your preferred model does not support the recording language you choose, Settings offers a one-tap Switch to button for a model that does.
Up to 3 minutes. SayCopy stops recording automatically at the limit and processes what you recorded. Audio is captured in a compact speech format so uploads finish quickly.
SayCopy automatically retries brief network drops, OpenRouter rate limits, and temporary server errors up to two more times. It does not retry an invalid key, missing credits, or a request that timed out, so you see those errors right away.
Version 1 stores history on the current device. It does not sync between devices, and deleting the app may remove that local history. Temporary recordings are sent for processing and are not kept in SayCopy history.
Quick checks
Confirm you have the latest SayCopy build and that Recording language says Auto-detect. Try a clear five-to-ten-second recording. To compare results, turn Light cleanup off once, then retry with the explicit language selected.
SayCopy keeps, saves, and displays the original transcription. You can use it immediately, retry after a moment, or turn Light cleanup off. Cleanup uses the text-processing model, so it can fail even when the speech-to-text step succeeded.
Follow the OpenRouter setup guide, paste your key into SayCopy Settings, and tap Save token.
Confirm your OpenRouter key is active, your account has available credit, and its spending limit has not been reached. Model availability and account restrictions can also affect routing.
The model may be unavailable or incompatible with zero-data-retention routing. Select another model in Settings. For Auto-detect, first choose a specific recording language so your preferred model is used. Auto-detect uses Whisper Large V3 Turbo with zero-data-retention routing; older app versions use GPT-4o Transcribe, which may have no eligible endpoint. Update the app when a new version is available, or select a specific language as a workaround.
HTTP 400 or 422 means the request was rejected. Some providers reject an audio format even when a recording is short. October 5 previews used MAI-Transcribe 1.5 for Auto-detect; that route rejects SayCopy’s M4A recordings. Updated previews use Whisper Large V3 Turbo, verified with M4A and zero-data-retention routing. While waiting for the update, select a specific recording language and choose the Recommended transcription model in Settings. Saved MAI preferences are preserved, but an explicit MAI request explains how to choose a compatible model. HTTP 403 means access was denied: check API key permissions and account restrictions. HTTP 413 means the recording is too large: try a shorter one. Include the HTTP status when contacting support; never include your API key.
Updated builds report errors to Sentry, including failures where Light cleanup recovers by saving the original transcript. Reports include fixed operation labels, error categories, HTTP status when available, app version, and crash stack locations. Audio, API keys, transcript text, translation text, clipboard contents, and raw provider responses are excluded from application error reports. Screenshots and session replay are disabled. IP addresses and inferred location metadata are removed before new error events are stored. See the privacy policy.
On iPhone, open Settings → Privacy & Security → Microphone. On Android, open Settings → Apps → SayCopy → Permissions → Microphone. Make sure SayCopy is allowed, then reopen the app and try again.
Check your internet connection and try a shorter recording. Model providers can also be temporarily busy, so retrying after a moment may help.
Use the SayCopy contact form. Include your device model, operating system version, recording language setting, preferred transcription model, whether Light cleanup was on, and the exact error message if one appeared.
Never include your OpenRouter API key in a support message or screenshot.