Audio Conversion API — Free Tier + Pay-As-You-Go
Programmatic audio conversion for MP3, WAV, FLAC, AAC, OGG, M4A and 19 more codecs. Bitrate, sample-rate, and channel control.
What it does
The Audio Conversion API handles 21 source codecs and outputs MP3, WAV, FLAC, AAC, OGG Vorbis, OGG Opus, M4A, AIFF, ALAC, AMR, and WMA. Each request supports per-job bitrate (CBR or VBR), sample rate (8 kHz to 192 kHz), channel count, fade in/out, normalisation, gain adjustment, reverse playback, and metadata tag preservation across ID3v1, ID3v2, Vorbis Comments, and APE. Voice-grade compression presets generate sub-32 kbps mono outputs for transcription pipelines, while lossless presets emit 24-bit FLAC and ALAC for archival workflows.
The pipeline is FFmpeg-backed with chained filters validated server-side so user input never reaches the shell. Output URLs are signed, expire after the retention window (1h on Free, 24h on Pro, 7d on Business), and can be flushed immediately via the DELETE endpoint. Webhooks include the output's duration, bitrate, codec, and file size so downstream services can act on the result without re-downloading.
The endpoint is identical to `/v1/convert` — only the accepted formats and codec parameters change — and shares the same idempotency, rate-limiting, and authentication model as the Video and Image APIs.
Supported formats
Source formats (21)
- mp3
- wav
- flac
- aac
- ogg
- m4a
- aiff
- alac
- amr
- wma
- opus
- wv
- ac3
- ape
- dts
- mka
- tta
- voc
- aif
- au
- ra
Target formats (10)
- mp3
- wav
- flac
- aac
- ogg
- m4a
- opus
- aiff
- alac
- amr
Quick start
All three SDK languages show the same conversion: a single POST to /v1/convert with your API key in the X-Api-Key header.
curl -X POST https://api.convertintomp4.com/v1/convert \
-H "X-Api-Key: ck_your_api_key" \
-F "file=@input.wav" \
-F "target=mp3"
-F "audioBitrate=192k" \
-F "sampleRate=44100"import { ConvertIntoMP4 } from "@convertintomp4/sdk";
import fs from "node:fs";
const client = new ConvertIntoMP4({ apiKey: process.env.CIM4_API_KEY });
const job = await client.convert({
file: fs.createReadStream("input.wav"),
target: "mp3",
});
const result = await client.waitForJob(job.id);
console.log("Output URL:", result.outputUrl);from convertintomp4 import Client
client = Client(api_key="ck_your_api_key")
with open("input.wav", "rb") as f:
job = client.convert(file=f, target="mp3")
result = client.wait_for_job(job.id)
print("Output URL:", result.output_url)Features
- 21 source codecs, 10 target codecs
- Per-job bitrate, sample rate, channels
- Lossless (FLAC, ALAC, WAV) and lossy (MP3, AAC, Opus) outputs
- Metadata preservation across ID3v2 / Vorbis / APE
- Audio normalisation, fade, reverse, gain control
- Voice-grade compression presets for transcription
- Same idempotency + webhook model as Video API
Pricing
From $9.99/mo (Pro) or $24.99/mo (Business) — or pay-as-you-go on the API plan.
Free tier: 5 conversions/day, 100 MB file size, no API key required (IP-gated). Pro $9.99/mo: 100/day (2,000/month), 2 GB files. Business $24.99/mo: 1,000/day (20,000/month), 10 GB files, GPU encoding, dedicated support.
See full pricing breakdown →Built for production
99.9% uptime SLA
Multi-region failover, transparent status page, 60-second response-time guarantee on Business.
Encryption + auto-delete
TLS 1.2+ in transit, AES-256 at rest. Files deleted after 1h / 24h / 7d depending on plan, or instantly via DELETE endpoint. See the security page.
~7s median latency
Most sub-100 MB jobs complete in 6-9 seconds. Webhook-driven async for heavier workloads; waitForJob for synchronous flows.
Frequently Asked Questions
What's the difference between MP3 CBR and VBR via the API?
Pass `bitrateMode=cbr` for constant bitrate (predictable file size) or `bitrateMode=vbr` with a quality level 0-9 for variable bitrate (better quality at lower average bitrate). Default is VBR -V2 (~190 kbps).
Can I extract audio from a video file?
Yes — POST a video file with `target` set to an audio format (mp3, wav, flac, etc.) and the API will demux and re-encode the audio stream. No need to call a separate endpoint.
Is metadata preserved during conversion?
By default yes — ID3v1, ID3v2.3/2.4, Vorbis Comments, and APE tags carry across when the target format supports them. Set `stripMetadata=true` to strip all tags for privacy-sensitive pipelines.
What sample rates are supported?
Any rate from 8 kHz (telephony) to 192 kHz (studio). FFmpeg's swresample handles the conversion with high-quality sinc interpolation by default; pass `resampler=soxr` for SoX-grade resampling on the Business plan.
How do I detect clipping on a lossy → lossless conversion?
Set `detectClipping=true` and the job response includes a `clippingDetected` boolean plus the count of clipped samples. Useful for audiobook ingestion pipelines that need to reject damaged sources.
Related APIs
- File Conversion APIOne unified file conversion API for video, audio, image, document, ebook, archive, and font formats — 255 formats, 2,290+ conversion pairs.
- Convert APIProduction-grade file conversion API with 9 language SDKs, async webhooks, and cloud-to-cloud workflows. Free tier available.
- Media Conversion APIVideo and audio conversion API in one endpoint. 27 video + 21 audio formats, FFmpeg-backed, GPU-accelerated.
Or browse the full catalogue of 23 API products →
Get an API key
Start integrating the Audio Conversion API in five minutes. Read the docs, grab a key, and ship your first conversion before the trial coffee cools.