Audio · No upload

Make an MP3 ringtone from a song on your device

Pick an excerpt from a song, listen to how it loops and export it as an MP3 ringtone.

Waveform, with the selection bracketed

    

    
Statusidle Files— File— Duration— Source— Selection— Phone fit— Cut— Loop seam— Estimated size— Network since file read—

Silent selections are refused with “no ringtone made”; empty ones disable Make. Phone fit is advisory. Optional snapping searches within 10 ms of interior cuts; Cut reports both moves. Source endpoints are not checked for crossings. Source shows browser decode rate and dropped channels past two. Takes .mp3, .m4a, .aac, .wav, .wave, .ogg, .oga, .opus, .flac, .aif, .aiff and .weba.

Getting it onto your phone

This tool exports MP3. It does not make an AAC/M4R ringtone file, so how you install the ringtone depends on the phone and its software.

Android

On an Android phone that accepts MP3 ringtones, copy the file to the Ringtones folder, then choose it in the phone's sound or ringtone settings. Some file managers also offer a “set as ringtone” action. Menu names and import routes vary by device.

iPhone

Save this page's MP3 to Files, import it into a GarageBand audio project, then use Share → Ringtone and export it. GarageBand uses a 30-second ringtone limit and can offer to shorten a longer project. To sync from a computer instead, use a ringtone format and import route that software supports; dragging an MP3 into Finder does not convert it to AAC/M4R.

For another ringtone format, convert the MP3 in another app; changing a filename extension does not change the audio codec or container.

How this ringtone maker works

Your browser decodes the song into audio samples. The waveform keeps the lowest and highest sample in each slice, so short transients stay visible. The start and end times you enter are converted to sample positions, and the readout gives the selected length and the estimated MP3 size at your bitrate.

A cut at a non-zero sample can click. With snapping on, the tool searches the first channel for the nearest zero crossing within ten milliseconds of each interior cut, and the Cut row reports how far each edge moved. An edge with no crossing in range stays where you put it, and the Cut row says so. Snapping can reduce clicks without removing all of them, especially when the stereo channels differ. The Loop seam readout compares the jump from the last sample to the first (on the first channel, before fades) with the selection’s 95th-percentile step between adjacent samples, and reports the jump in dBFS. The seam preview plays that join with your fades applied. Fades use equal-power curves, and the trimmed, faded samples go to the same MP3 encoder the other audio tools use.

The MP3 export is lossy and cannot undo earlier compression loss. The browser decodes every file at its own rate, commonly 44,100 or 48,000 Hz, and the Source row shows that decoded rate, not the file’s original rate, so a 96 kHz source can be resampled with no note; the result row notes resampling only when the decoded rate cannot be used for MP3. Snapping, the seam readout and the silence check use the first channel. In the export, channels beyond two are dropped (they are not mixed into the first two), and the Source row shows how many were used. If you drop several files, only the first is used and the Files row says so. Preview works without the MP3 encoder, but export needs it. There is no length cap on the input, so a long file can need a lot of memory. The preview and the seam readout use the samples before encoding, so listen to the downloaded MP3 as well. Use audio you have the right to use; this tool does not check copyright.

Frequently asked questions

Is my music uploaded anywhere?
No. Your browser reads the song, and decoding, trimming, fades and MP3 encoding all run in this tab. The network meter counts resource-timing entries from the first file read and does not cover every network channel. The MP3 encoder downloads separately: if that download starts after you choose a file, or is retried, the meter counts it, though your audio is not sent anywhere. To use the tool offline, export one ringtone while you are online first; previewing alone does not load the encoder.
How do I put this on an iPhone?
Through GarageBand, because this page exports MP3 only. The steps are under “Getting it onto your phone” above: GarageBand turns the MP3 into a ringtone with its Share → Ringtone export. Renaming the file’s extension does not convert the audio.
Why does my ringtone click at the start or when it repeats?
A click comes from a sudden jump in the waveform, either at a cut or at the loop point, where the end runs back into the start. Keep “Snap cuts to zero crossings” on, check the Cut and Loop seam rows, and use “Play the loop seam” to hear the join. The Loop seam row measures the size of that jump; how audible it is depends on the sound and the speaker.
How long can a ringtone be?
Up to 30 seconds if you use GarageBand on an iPhone. The Phone fit row compares your selection with that 30-second iPhone guidance and with this tool's 40-second Android guidance, and marks selections under 3 seconds as unusually short. The row is advisory: it does not block the export or trim the selection. Device and import workflows vary.
Which audio formats work here?
You can open MP3, M4A/AAC, WAV, OGG/Opus, FLAC, AIFF or WebM audio, as long as your browser can decode it. Other extensions, and files the browser cannot decode, are refused. The output is MP3, encoded by lamejs, the JavaScript LAME encoder, once its library loads; it adds another generation of loss to input that was already compressed.

Related tools