Audio export preset lookup
Choosing audio export settings should begin with the destination, not with the longest list of encoder options.
Run — free
This lookup turns four common use cases—podcasts, music streaming, voice memos, and broadcast delivery—into a clear, practical preset. Each result names the recommended format, codec, bitrate, bitrate mode, sample rate, and channel layout. Use it when you need a dependable starting point for an export dialog, production checklist, media pipeline, or automated encoding job without comparing technical specifications from scratch.
Choose the preset from the listening destination
Audio settings make sense only in relation to where the file will go. A spoken podcast needs broad playback compatibility and manageable downloads, while a music streaming master needs better perceptual quality for complex stereo material. A voice memo prioritizes compact storage and intelligible speech. Broadcast delivery normally values an uncompressed production file, predictable headroom, and compatibility with professional video and audio workflows. Select the use case that describes the destination rather than the software used to record the source. The lookup then returns one opinionated baseline instead of a range that still leaves the decision unresolved. These presets are designed for finished exports, not archival preservation or an intermediate file that will undergo repeated editing. If a distributor, station, client, or publishing platform provides a delivery specification, follow that specification because it is the actual acceptance contract. Otherwise, this result is a sensible default that balances quality, file size, interoperability, and the expectations normally associated with the selected use case.
Understand format, bitrate, and sample rate together
The returned values describe different parts of the export. Format identifies the file family or container a recipient will recognize, while codec identifies how samples are represented or compressed inside it. Bitrate estimates the amount of encoded data used per second. A higher lossy bitrate usually preserves more detail but creates a larger file; an uncompressed PCM result has a bitrate determined directly by sample rate, bit depth, and channel count. Sample rate states how many samples represent each second of each channel. It should not be treated as a universal quality dial: converting a 44.1 kHz recording to 48 kHz does not restore information that was never captured. Channel layout matters too, especially for speech. Mono is efficient for a single voice, whereas stereo is appropriate for music, spatial ambience, and most broadcast masters. Read the preset as one coordinated recommendation. Substituting just one number can change file size, compatibility, or quality, so confirm that the encoder supports the named codec and bitrate mode before automating the export.
Apply the result without damaging the source
Begin with the best available source file and avoid exporting repeatedly from an already lossy copy. Each additional MP3 or AAC generation can introduce audible artifacts, even when the displayed bitrate looks generous. Set the project sample rate deliberately, perform required editing and loudness work, then encode the final deliverable once with the returned preset. The lookup does not normalize loudness, prevent clipping, remove noise, add metadata, or judge whether a mix satisfies a platform standard. Those are separate production decisions that should happen before or alongside export. For broadcast, the WAV recommendation is a technical delivery baseline, not a substitute for the receiving organization’s rules about loudness, peaks, channel order, timecode, or bit depth. For podcasts and streaming music, publishers may transcode uploads again, so supplying a clean export is more important than chasing extreme bitrates. For voice memos, mono saves space when the recording contains one centered speaker. Always audition the result and retain the original recording or lossless master so another preset can be created later without compounding compression loss.
What you can do with it
Configure a podcast publishing workflow
Turn a podcast destination into consistent MP3 settings for an editor preset, production checklist, or automated encoder.
Prepare music for online distribution
Get a practical high-quality AAC baseline before checking any distributor-specific delivery requirements.
Standardize recording app exports
Choose a compact mono voice preset or an uncompressed broadcast preset based on the recording's destination.
FAQ
What does the lookup cost?
Each API request costs $0.002. The browser version can use the same deterministic lookup logic locally.
Which use cases are recognized?
The supported values are podcast, music streaming, voice memo, and broadcast. An unrecognized value returns an invalid-input error.
Should I follow this preset or my platform's specification?
Follow the platform, station, distributor, or client's specification whenever one is provided. The lookup supplies a dependable default when no binding delivery specification exists.
Does a higher sample rate always improve quality?
No. Raising the export sample rate cannot recreate detail absent from the recording, and unnecessary resampling may add processing without a practical benefit.
Why is the voice memo preset mono?
A single centered voice does not normally need two channels. Mono reduces the data required while preserving speech intelligibility.
Does this tool convert my audio file?
No. It returns recommended settings only; it does not upload, inspect, process, normalize, or encode audio.
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/audio/audio-export-preset-lookup \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"use_case":"podcast"}'const res = await fetch("https://api.kit.forhosting.com/audio/audio-export-preset-lookup", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"use_case": "podcast"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/audio/audio-export-preset-lookup",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"use_case": "podcast"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/audio/audio-export-preset-lookup", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"use_case":"podcast"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"use_case":"podcast"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/audio/audio-export-preset-lookup", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"use_case": "podcast"
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "audio.audio_export_preset_lookup",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Limits
max_mb | 200 |
max_minutes | 180 |
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |