Back to Blog

The Memo Stayed on This Phone

September 17, 2026
Share:
The Memo Stayed on This Phone

I had a Voice Memo I was not going to upload. A meeting. Something I would not drop on a page that asked for an email before it would give me an MP3 back.

The converter I opened wanted the file first, then an account. The memo was still on the phone, and I still could not play it in the car.

An iPhone Voice Memo is usually AAC inside an .m4a wrapper. Cars, and a lot of older players, still want MP3. That is a format change. It is not a reason to send the recording to a stranger's disk.

The new page is M4A / Voice Memo to MP3. You drop the file. You pick a bitrate. This tab writes an MP3. You see the duration and a size estimate first. You play the result here before you save it. The file stays in the tab.


The form in front of a server

Most converter pages are a form. You pick a file. The browser posts it. A machine you do not run keeps a copy long enough to encode it. Then the page asks you to sign in, or wait in a queue, and only then offers a download.

That is a fine design if the file is a ringtone. It is a bad design if the file is a meeting or a session you recorded because you did not want it in email.

I wanted the other job. Decode and encode here, then download here. If the tab cannot do it, say so, and do not send the bytes anywhere as a backup plan.

Re-encoding does not add detail.

That sentence sits under the radios on purpose. People come to a converter hoping the MP3 will sound "better." It will not. AAC already threw some of the original away. MP3 throws more, or about the same, depending on the bitrate you pick. The win is that it plays in the car. It does not sound nicer.


AAC is already on the phone

Voice Memos on iPhone write AAC into an MPEG-4 audio file. The extension is .m4a. Sometimes .m4b for a chaptered file. Sometimes a raw .aac stream. The browser in this tab can decode AAC. That is why this page exists as a tab and not as a server.

I did not put FFmpeg compiled to WebAssembly on this page. The Discord compressor already taught me that lesson: a GPL core in a public image is a license I will not ship. Decode uses the browser. Encode uses LAME, through Mediabunny's MP3 package, which is MPL-2.0. LAME asks for a shoutout. Here it is: lame.sourceforge.io.

The first Convert loads that encoder. I measured the bundle this sitting: 316,626 bytes on disk, 133,503 bytes gzipped. Call it about 130 KB gzipped. You will see that load. After that it stays in the tab. Unplug the cable if you want. The memo is still here.


MP3 is what the car wants

The stereo in a lot of cars will play an MP3 from a stick and will skip an .m4a. Older editors do the same. A folder of interviews that has to go to someone who still lives in MP3 is the same job.

This page accepts .m4a, .m4b, and .aac. It refuses a file that is already MP3, because that file is already the output. It refuses a clip with a picture track, because that clip belongs on Compress Video for Discord. A PDF in the same drop is skipped.

The input is classified from the file, not from a dropdown you have to get right. If the name says .m4a, it is audio. If the type is audio/mp4, it is audio even when the name has no extension. That is how a Voice Memo looks when you share it from Files.


Bitrate is a size knob

The radios are 64, 96, 128, 192, and 320 kbps. 128 is the default. Those numbers are constant bitrate. The estimate this tab prints is bitrate times 125 bytes per second times duration. I checked that against the code in this sitting. Ten seconds at 128 kbps is 160,000 bytes.

A higher number makes a larger file. It does not restore hiss the AAC already dropped. 320 kbps of a Voice Memo is a bigger MP3 of the same speech. If you want small, pick 64. If you want a common size for speech, leave 128.

The file you download is measured after encode. The estimate can miss. Encoders add a header. Duration from metadata can be a little off. Believe the byte count next to the result, the same way the image compressor prints 98,412 bytes instead of "about 96 KB."


Voice Memo mode

Tick the box and the encode is mono at 64 kbps and 22,050 Hz. That is a size choice for speech. A Voice Memo is usually one mouth, close to the phone. Stereo at 320 is wasted on that.

The box does not clean the recording. It does not remove a fan. It does not make a bad mic good. It downmixes and downsamples and encodes smaller. If you untick it, the bitrate you picked is the one that runs.

Settings live in this browser under softery.m4a-to-mp3.settings. Bitrate and the Voice Memo tick. The recording is not stored. Copy settings link puts br and voice on the URL. You see that URL before it is copied. The file never goes in it.


Duration first, then the file

Before anything encodes, you see how long the memo is. mm:ss. You see the original size in exact bytes. You see an estimated MP3 size at the bitrate you picked. Then you hit Convert.

A two-second sample named sample-voice-memo.m4a is built in the tab, a 440 Hz tone, so you can read that line without using a real recording. Replace it. Play the MP3 in the same card before you save it. A file you cannot play here is not a gift.

Stop cancels the run. Nothing is written to disk until you download. On a phone the work shares RAM with the rest of the page. A long memo can hitch the tab or run out of memory. The caps are 80 MB per file and 50 files per run. Those numbers are this page's own limits, not a host quota.


Names, folders, a ZIP

Each result is named from the original stem and the bitrate: Interview-128kbps.mp3. Two files with the same stem get -2 and -3. One file downloads as that MP3. Two or more become converted-N-files.zip.

Choose folder, or drop a directory. Interviews often arrive as a pile. The ZIP is so you do not save them one at a time on a phone.

Tags on the original are not copied. The MP3 does not carry the phone's title field or location fields. That is on purpose. A memo you would not upload should not leak a street name in the metadata of the file you later put on a stick for the car.


What this tab will not do

It will not transcribe the file. Live dictation is Speech to Text, and that page listens to the microphone. Some browsers send that audio to the vendor. The dictation page says which. This page is a different job.

It will not pull sound out of a video. It will not claim the MP3 is better than the memo you dropped.

A lossless Apple memo may fail to decode. AAC is what this tab is built for. If the codec is one the browser cannot read, you get a plain error and the file is not sent anywhere.

Safari can decode AAC. The encoder is WASM, not the browser's own MP3 encoder, because browsers usually have none. If this tab cannot encode, it says so. I am not printing a browser matrix I did not sit and measure on a phone this sitting. The honest line is the error on the page.


Mixpanel sees the open, not the sound

Softery.io loads Mixpanel and Google Analytics. They see that someone opened M4A / Voice Memo to MP3, which bitrate moved, and whether a download happened. Sizes and duration go out as buckets. So does the bitrate you picked. They do not get the file name. They do not get the bytes.

If you came here because a privacy page promised zero third-party scripts, that is not this site. I will not write that sentence on a page that loads analytics with the rest of Softery.io.

After the page has loaded, convert runs in JavaScript here. The encoder load is the one extra fetch. It is a script, not your memo.


Ten minutes of speech, on paper

CBR size is a line. Ten minutes is 600 seconds. Bitrate times 125 bytes per second times 600:

BitrateEstimated size for 10:00
64 kbps4,800,000 bytes
96 kbps7,200,000 bytes
128 kbps9,600,000 bytes
192 kbps14,400,000 bytes
320 kbps24,000,000 bytes

Those are estimates from the same formula the page prints. The real file can be a little over or under. Voice Memo mode uses the 64 kbps row and also drops to mono at 22,050 Hz, which the table does not try to guess beyond the CBR line.

A one-hour interview at 128 kbps is six times the 10:00 row: 57,600,000 bytes, about 58 MB. That still fits the 80 MB cap. Two hours at 320 may not. Split the file, or pick a lower bitrate.

Why 125? One kilobit is 1,000 bits. Eight bits make a byte, so 1 kbps is 125 bytes per second. 128 kbps is 16,000 bytes per second. Ten seconds is 160,000 bytes. The page uses that line for the estimate you see before Convert. It is CBR arithmetic, not a reading of the encoder's private padding. If you want the true size, wait for the result line.

I put the table here because people ask "will a one-hour memo fit?" before they drop the file. The 80 MB cap is this page's own limit, not a host quota. A 90 MB Voice Memo will be refused up front, with a sentence that names 80 MB. Split it in Voice Memos first, then drop the parts.


What I checked, and what I did not

ClaimSource, 17 September 2026
Encoder bundle 316,626 bytes, 133,503 gzippedwc -c and gzip -c on @mediabunny/mp3-encoder@1.56.3
About 130 KB gzippedSame measurement, matching the package README
LAME 3.100 in that package@mediabunny/mp3-encoder README
MPL-2.0package.json of that package and of mediabunny 1.56.3
64, 96, 128, 192, 320 kbps; default 128BITRATES in this repo
Voice Memo 64 kbps, 22,050 HzVOICE_MEMO_BITRATE and VOICE_MEMO_SAMPLE_RATE
Estimate = kbps × 125 × secondsestimateMp3Bytes, checked: 10 s at 128 = 160,000
80 MB, 50 filesacceptLimits
Sample is 2 secondsbuildSampleMemo

I did not quote a Reddit thread. I did not invent a search volume. I did not open a paid converter checkout, so there is no dollar figure here. I did not sit with a lossless memo on a phone and time the hitch. The memory warning on the page is the product, not a benchmark.


Try the tab

  1. Open M4A / Voice Memo to MP3.
  2. Drop an .m4a, or use the sample.
  3. Leave 128 kbps, or tick Voice Memo mode.
  4. Hit Convert. Play the MP3 in the card. Download it if it is the file you wanted.

Nearby tools

Words from talking, live, belong on Speech to Text. A clip that is too big for Discord belongs on Compress Video for Discord. An iPhone photo that will not open on Windows belongs on HEIC to JPG.

M4A / Voice Memo to MP3 is the thirty-eighth free tool on the hub. It runs after the JavaScript has loaded. Unplug the cable if you want. The memo is still in the tab.


Last updated: September 17, 2026 | Reading time: 10 minutes

Written by Softery.io, after a converter asked for an account before it would give the MP3 back.