🎧 Listen to this article
On This Page
0%- What does ACX actually measure?
- Step 1 — Generate the narration in chapter-length blocks
- Step 2 — Add room tone at the head and tail
- Step 3 — Normalize to the RMS window
- Step 4 — Check the noise floor
- Step 5 — Encode to the final MP3
- Which tools handle the mastering automatically?
- FAQ
- Get the narration right first
You finished the narration. Then ACX bounced the upload with "Your files do not meet our audio requirements" and no line-by-line explanation. This is the most common reason a first audiobook stalls — not the writing, not the voice, but the audio spec. ACX runs an automated QA check on every file, and it fails the whole submission if a single chapter is out of range.
This tutorial walks through mastering an AI-narrated audiobook so it passes that check on the first upload. The specs are the same whether a human or an AI voice recorded the narration — ACX cares about the numbers, not the source.
TL;DR — the five checks every ACX file must pass:
- RMS loudness between −23 dB and −18 dB (the measured average level).
- Peak no higher than −3 dB (true peak headroom).
- Noise floor below −60 dB RMS (the silence between words must be quiet).
- Format: 192 kbps CBR MP3, 44.1 kHz, mono or stereo.
- Structure: one file per chapter, 0.5–1 s of room tone at head and tail, under 120 minutes each.
Get those five right and the automated gate passes. Everything below is how to hit them.
What does ACX actually measure?
ACX's technical requirements are published and enforced by an automated analyzer, so there's no ambiguity — you either land inside the window or you don't. The three that trip up AI-narrated files most often are RMS, peak, and noise floor.
| Spec | Required range | What it means | Common failure |
|---|---|---|---|
| RMS loudness | −23 to −18 dB | Average perceived volume | Raw AI output often sits at −26 to −24 dB (too quiet) |
| Peak level | −3 dB max | Loudest instantaneous sample | Hard consonants clip above −3 dB after normalizing |
| Noise floor | ≤ −60 dB RMS | Level of the "silence" | Synthetic breaths or room tone hiss above −60 dB |
| Bit rate | 192 kbps CBR | Encoding quality | VBR export or 128 kbps rejected |
| Sample rate | 44.1 kHz | Samples per second | 48 kHz or 22.05 kHz rejected |
AI narration has one advantage here: the source is already clean. There's no mic hiss, no HVAC rumble, no plosive from a real breath. Your noise floor starts near-silent, which means most of the work is loudness and peak — not denoising. But you still have to normalize correctly, and that's where files break.
Step 1 — Generate the narration in chapter-length blocks
Export your manuscript into one text block per chapter. ACX requires a separate audio file per chapter (plus opening credits, retail sample, and closing credits as their own files), so it's cleanest to narrate that way from the start rather than splitting a monolithic file later.
Generate each chapter with AudioPod's text-to-speech or the purpose-built Audiobook Studio, which handles long-form chapter chunking and keeps the voice consistent across a whole book. Pick one voice and one set of settings for the entire title — switching voices mid-book is a rejection reason for consistency, and it's jarring for listeners.
Expected output: one WAV per chapter, e.g. 01-prologue.wav, 02-chapter-one.wav. Export as WAV, not MP3, so you're mastering from a lossless source and only encoding to MP3 once at the end.
Step 2 — Add room tone at the head and tail
ACX wants 0.5–1 second of silence at the start and 1–5 seconds at the end of each file. "Silence" here means genuine digital silence or very quiet room tone — with AI narration you can use true silence because there's no room to match.
If your narration tool trims aggressively, the file can start on the first phoneme with zero lead-in, which reads as abrupt and can fail the head/tail check. Pad it:
12345
# Using ffmpeg to add 0.7s lead and 2s tail of silence
ffmpeg -i 02-chapter-one.wav \
-af "adelay=700|700,apad=pad_dur=2" \
02-chapter-one-padded.wav
Expected output: the waveform now opens with a flat line before the first word and closes with a clean tail. No word touches the very first or last sample.
Step 3 — Normalize to the RMS window
This is the step that fails the most. You need the average level (RMS) inside −23 to −18 dB, with peaks under −3 dB. Peak-normalizing alone won't do it — a file can peak at −3 dB and still average −26 dB (too quiet) if the narration is dynamic.
Aim for the middle of the window, around −20 dB RMS, so natural variation between chapters doesn't push any single file out of range.
12345678
# Measure current loudness first
ffmpeg -i 02-chapter-one-padded.wav -af "astats=metadata=1" -f null -
# Apply loudness normalization targeting the ACX window
ffmpeg -i 02-chapter-one-padded.wav \
-af "loudnorm=I=-20:TP=-3:LRA=7" \
02-chapter-one-normalized.wav
Expected output: RMS reads between −21 and −19 dB, true peak at or below −3 dB. Re-run the astats measurement to confirm before moving on. If a file still reads quiet, nudge the target I value up by 1 dB and re-run — don't crank a limiter, which flattens the read.
Step 4 — Check the noise floor
With AI narration this is usually a formality, but verify it. The RMS level during the padded silence must be below −60 dB.
1234
# Isolate the first 0.5s and measure its RMS
ffmpeg -i 02-chapter-one-normalized.wav -t 0.5 \
-af "astats=metadata=1:reset=1" -f null -
Expected output: the silence RMS reports below −60 dB (often −80 dB or lower for synthetic sources). If it's higher, you likely padded with room tone that carried hiss — replace it with true silence using apad instead of copied ambience.
Step 5 — Encode to the final MP3
Encode once, at the end, to ACX's required format: 192 kbps CBR, 44.1 kHz.
1234
ffmpeg -i 02-chapter-one-normalized.wav \
-codec:a libmp3lame -b:a 192k -ar 44100 \
02-chapter-one-FINAL.mp3
Expected output: a 192 kbps constant-bit-rate MP3 at 44.1 kHz. Repeat for every chapter plus the opening credits, closing credits, and the retail sample (a 1–5 minute excerpt from the middle of the book, not the intro).
Which tools handle the mastering automatically?
If command-line audio isn't your workflow, several tools apply ACX mastering as a preset. Here's how the common paths compare.
| Approach | ACX mastering | Learning curve | Best for |
|---|---|---|---|
| ffmpeg (above) | Manual, exact | Steep | Batch-processing a whole catalog |
| Audacity + ACX Check plugin | Manual, guided | Moderate | One book, hands-on |
| AudioPod Audiobook Studio | Built into export | Low | AI narration end-to-end |
| Descript | Partial, manual export | Low | Editing over generating |
AudioPod's noise-reduction tools also help if you're mastering a mixed project that includes any human-recorded segments — those do carry a real noise floor that needs cleaning before the −60 dB check.
FAQ
Does ACX accept AI-narrated audiobooks? Yes. As of late 2026 ACX and Audible accept AI-narrated titles provided the audio meets their technical specs and you disclose AI narration during submission. The QA analyzer checks the audio numbers regardless of how the narration was produced.
Why did my file pass ACX Check in Audacity but fail on upload? The most common cause is re-encoding after the check — if you run ACX Check on a WAV and then export to MP3 with different settings, the exported file can drift out of spec. Always run your final measurement on the exact MP3 you upload.
Can I batch-master a whole book at once? Yes — loop the ffmpeg commands over every chapter file, or use a tool that applies the same mastering preset across all exports. Keeping identical settings per chapter is what keeps loudness consistent, which ACX checks across the full title.
What RMS should I target? Around −20 dB, the middle of the −23 to −18 window. Targeting the edge risks a chapter tipping over from normal variation.
Do I need to master the retail sample separately? No — cut it from an already-mastered chapter so it matches the book. Just make sure it's a 1–5 minute excerpt and encoded to the same 192 kbps / 44.1 kHz spec.
Get the narration right first
Mastering only matters once the read is good. Clean, consistent narration with no artifacts gives you a file that's already close to spec before you touch a single setting — which is most of the battle. You can generate and export a full chapter free on the Basic plan (1,000 credits/month, no card) and run it through the checks above to see exactly where your output lands.
Start with AudioPod's Audiobook Studio or compare plans on the pricing page when you're ready to produce a full title.

