GPT-4o Transcribe API
OpenAI most accurate speech-to-text, for noisy audio, accents and mixed languages.
GPT-4o Transcribe is a speech-to-text model from OpenAI, available on OttoPort's OpenAI-compatible API as the model ID gpt-4o-transcribe at $0.000121 / second as of 2026-10-14.
Provider
OpenAI
Price
$0.000121 / second
Model ID
gpt-4o-transcribe
Type
speech-to-text model
GPT-4o Transcribe API pricing
What OttoPort bills for GPT-4o Transcribe, and what that works out to per unit. Rates are read from the same catalog the gateway meters against, and were current on 2026-10-14.
| Per second | $0.000121 | |
|---|---|---|
| 5-second clip | $0.000605 | |
| 8-second clip | $0.000968 | |
| Seconds per $10 | 82,644 | of generated video |
No subscription and no minimum — OttoPort bills prepaid credits against usage. See the full rate card.
Call GPT-4o Transcribe in three lines
Send "model": "gpt-4o-transcribe" to POST https://ottoport.ai/api/v1/audio/transcriptions with an OttoPort key. No OpenAI account, no waitlist, no separate SDK.
curl https://ottoport.ai/api/v1/audio/transcriptions \
-H "Authorization: Bearer $OTTOPORT_API_KEY" \
-H "Content-Type: application/json" \
-d "{
\"model\": \"gpt-4o-transcribe\",
\"audio\": \"$(base64 < note.m4a | tr -d '\n')\",
\"format\": \"m4a\",
\"duration\": 12
}"import base64, requests
audio = base64.b64encode(open("note.m4a", "rb").read()).decode()
result = requests.post(
"https://ottoport.ai/api/v1/audio/transcriptions",
headers={"Authorization": "Bearer " + API_KEY},
# duration is the recording's length in seconds: the billed unit.
json={"model": "gpt-4o-transcribe", "audio": audio, "format": "m4a", "duration": 12},
).json()
print(result["text"])const audio = (await fs.promises.readFile("note.m4a")).toString("base64");
const res = await fetch("https://ottoport.ai/api/v1/audio/transcriptions", {
method: "POST",
headers: {
Authorization: `Bearer ${API_KEY}`,
"Content-Type": "application/json",
},
// duration is the recording's length in seconds: the billed unit.
body: JSON.stringify({ model: "gpt-4o-transcribe", audio, format: "m4a", duration: 12 }),
});
const { text } = await res.json();Before you start
- 1. Create a key at /api-keys.
- 2. Top up credits — the smallest pack is $25.
- 3. Paste the request. It returns on the same request.
Full reference at /docs, or drive it from an agent with the MCP server and CLI.
Request parameters
The body POST https://ottoport.ai/api/v1/audio/transcriptions accepts for GPT-4o Transcribe.
| Field | Type | Required | Notes |
|---|---|---|---|
| model | string | Yes | Always gpt-4o-transcribe for GPT-4o Transcribe. |
| audio | string | Yes | The recording, base64 or a base64 `data:` URL. Up to 25 MB decoded. |
| format | string | Yes | webm, m4a, mp4, mp3, wav or ogg. Read from a `data:` URL's type when omitted. |
| duration | number | Yes | The recording's length in seconds, up to 600. Rounded up to a whole second, it is the billed unit. |
| language | string | No | ISO 639-1 code of the spoken language, e.g. `en` or `zh`. |
| prompt | string | No | Names, jargon or preceding text, to steer spelling and style. |
GPT-4o Transcribe direct vs through OttoPort
GPT-4o Transcribe is the same model either way — what changes is how many accounts, keys, and integrations you carry to reach it.
| OpenAI direct | Via OttoPort | |
|---|---|---|
| Accounts and keys | An OpenAI account, plus one more for every other model you add | One OttoPort account and one key for the whole catalog |
| Request shape | OpenAI's own SDK and response format | OpenAI-compatible — point baseURL at OttoPort and change the model string |
| Switching models | A new integration per provider | Replace gpt-4o-transcribe with any other model ID in the catalog |
| Billing | A separate invoice and contract per provider | Prepaid credits, no subscription, one usage ledger |
| Provider outages | Your call fails | Configured backup routes are tried in order on provider failure |
Send the recording's length as `duration`.
Name the language when you know it.
Put names and jargon in `prompt`.
GPT-4o Transcribe API questions
Cost, keys, and model IDs for GPT-4o Transcribe on OttoPort.
How much does the GPT-4o Transcribe API cost?
On OttoPort, GPT-4o Transcribe costs $0.000121 / second as of 2026-10-14. For scale, 5-second clip: $0.000605. Billing is prepaid usage with no subscription and no minimum, and the current rate is always published at ottoport.ai/pricing.
How do I get a GPT-4o Transcribe API key?
You do not need an OpenAI key. Create an OttoPort account, generate a key at ottoport.ai/api-keys, and send it as "Authorization: Bearer <key>" to POST https://ottoport.ai/api/v1/audio/transcriptions with "model": "gpt-4o-transcribe". The same key reaches every other model in the catalog.
What is the model ID for GPT-4o Transcribe?
The OttoPort model ID for GPT-4o Transcribe is gpt-4o-transcribe. Pass it as the model field on POST https://ottoport.ai/api/v1/audio/transcriptions, or list it programmatically from GET https://ottoport.ai/api/v1/models.
Do I need an OpenAI account to use GPT-4o Transcribe?
No. OttoPort connects to OpenAI on your behalf, so one OttoPort account covers GPT-4o Transcribe and every other model in the catalog — no per-provider contracts, keys, or invoices.
Other speech-to-text models on the same API
Same endpoint, same key — swapping model is a one-string change from gpt-4o-transcribe.
Browse the full catalog — every model with its provider and per-unit price.