How it works.
Audible Downloader saves the books in your Audible library as ordinary M4B audiobook files. Everything that matters happens in your own browser.
In four steps
- You sign in on Amazon. A pop-up opens Amazon's own sign-in page, exactly like the Audible app uses. Your password goes to Amazon and nowhere else.
- Your browser becomes an Audible device. Amazon registers it the way it registers a phone with the Audible app, and gives it a private key that stays in your browser.
- You pick a book. Audible gives your browser the book (still locked) and that book's key, just as it would for the app.
- It's unlocked as it downloads. Each piece is unlocked the moment it arrives and written straight into the file you chose. When the download finishes, the book is ready, with chapters, cover art and details intact.
The result is a standard M4B file. It plays in Apple Books, BookPlayer, Smart AudioBook Player, Plex, VLC and most other audiobook players, and it's yours to keep, back up and copy between your own devices.
Privacy
- Your password never reaches this site. You type it on Amazon's page.
- Your device key stays in your browser. It signs each request to Audible on your device; the small server that passes requests along can't create or reuse those signatures.
- Books are unlocked only on your device. Nothing is ever decrypted or stored on a server.
- No accounts, no database, no analytics, no ads, no tracking. The site keeps nothing about you between visits.
- Signing out removes the device from your Amazon account. You can also remove it any time under Manage Your Content and Devices on Amazon, where it shows as "Audible for Android".
Frequently asked questions
Which books can I download?
Books in your own Audible library that Audible lets you download, the same ones you can download in the Audible app. Titles you've returned, or Audible Plus titles that have left the catalogue, can't be downloaded, and the app tells you when Audible refuses one.
Is this allowed?
It only works with books your account already has, using the same licence Audible gives its own app. It's meant for keeping personal copies of books you've bought. Rules on copying for personal use differ between countries, so check what applies where you live. This project isn't affiliated with Audible or Amazon.
Which browsers and devices work?
It works best in Chrome, Edge, Brave, Arc or Opera on a computer: you choose exactly where each file goes, and you can pick a folder once to download many books in a row. Other browsers, including Safari, Firefox and phones, save each book to your Downloads folder instead.
Why do I have to copy a web address when signing in?
Amazon only hands its sign-in result to Audible's own apps, by sending them to a page on audible.com (or your country's Audible site). That page shows an error in a normal browser, but its web address carries the one-time code this site needs. Copying it across is the only step Amazon doesn't let a website do automatically. You only need to do it once.
Where do the files go?
Wherever you choose. Clicking Download asks where to save, or you can pick an output folder once in Output settings. In browsers without that option, books arrive in your Downloads folder.
Can I split a book into chapters?
Yes. Turn on Split by chapter in Output settings to get one file per chapter, each with its title, number and the cover. Most audiobook apps handle chapters inside a single M4B perfectly well, so only use this if your player doesn't.
Do I need to keep the tab open?
Yes, until the book says Saved. You can switch to other tabs: progress shows in the tab title, and you'll get a notification when a book finishes if you allow it. If the connection drops, the download picks up where it left off.
It stopped working. What now?
Audible sometimes changes how its apps sign in or license books, which breaks downloads until the site is updated. Signing out and back in fixes many problems. If not, please report it on GitHub with the message shown on the book.
Under the hood
For the curious. Everything here is in the source on GitHub.
- The browser builds Amazon's mobile-device OpenID request (with a PKCE challenge) itself. One small Function exchanges the returned code at
api.amazon.<tld>/auth/register, because that call must present the Audible Android app's identity, which a browser can't; it hands the device key straight back and stores nothing. - The device's RSA private key lives in
localStorageand signs every Audible API request with WebCrypto. Sign-out deregisters the device directly with Amazon.
- The licence's voucher is decrypted in the browser (AES-128-CBC, key and IV from
SHA-256(deviceType ‖ serial ‖ accountId ‖ asin)) to get the book's own key and IV. The server only ever sees the encrypted voucher. - An AAXC file is an ordinary MP4 whose audio frames are each AES-128-CBC encrypted. The app reads the file's index first, then decrypts every frame in place as the bytes stream in, thousands of frames per WebCrypto call. Nothing changes size, so the M4B is written byte for byte as it downloads: no conversion step, no temporary copy, no re-encoding, no WebAssembly.
- The first decrypted frames must be valid AAC before anything is kept, so a wrong key fails loudly instead of saving noise. Chapter files are written in the same pass from the book's index.
- Audible's API refuses requests from web pages, so Cloudflare Pages Functions pass the browser's signed library and licence requests along. The library is streamed through untouched, 1,000 titles per request, and later visits only ask for books bought since.
- Audible's download servers don't let web pages fetch from them directly, so the audio is relayed through Cloudflare on its way to you. It stays encrypted the whole way: the relay can't decrypt it, doesn't store it, and only fetches URLs the licence Function signed. It's unlocked only once it reaches your browser. Interrupted downloads resume where they stopped.
- No database, KV or storage buckets. Nothing is logged about you.