How to make a ringtone from any song on iPhone and Android

A ringtone is fifteen seconds of editing and two minutes of file shuffling. The editing part is easy; the awkward parts are a length limit on iPhone, a file extension iOS insists on, and the fact that a phone speaker will not reproduce the bass you chose the section for. This guide walks through choosing the right few seconds, cutting them cleanly, and getting the result onto either kind of phone — and ends with the copyright paragraph that most guides skip.
Choose a section that survives a pocket speaker
A phone’s loudspeaker is a few millimetres across and produces almost nothing below roughly 500 Hz. The bass drop that fills a pair of headphones becomes a thin tick coming out of a jacket pocket, and the sub-bass that carries the whole feel of a track is simply absent. Pick a section that carries its identity in the midrange: a vocal hook, a lead line, a clear rhythmic figure with some percussion in it.
A ringtone has three to five seconds to be recognisable before you reach for the phone, so start on the hook rather than on the two bars of build-up before it. Landing the in-point on a downbeat makes the tone feel deliberate instead of clipped; zoom in on the waveform and you can usually see the beat as a taller transient.
Length: Apple’s own tools cap a ringtone at 30 seconds. Longer .m4r files produced by other routes are usually still accepted, up to about 40 seconds, but you will rarely hear past the first fifteen. Android imposes no limit at all, which is not a reason to use one — the tone restarts on every call, so twenty to twenty-five seconds is plenty.
Cut it, then fade it
Open the song in the editor, drag a selection across the waveform, and fine-tune it with the In and Out fields, which accept times down to the millisecond. I and O snap the in and out points to the playhead, L loops the selection so you can listen to it on repeat the way a caller would, and Trim to selection commits it once it sounds right.
Fades matter more here than anywhere else. A cut in the middle of a waveform is an instantaneous jump in the signal, and an instantaneous jump is a click — which on a ringtone arrives at full volume, repeatedly. Ten to twenty milliseconds of fade in removes it completely; a fade out of 300 to 800 milliseconds makes the tone stop rather than break off. The [ and ] keys apply both with the length from the operations panel.
Finish with peak normalization to −1 dBFS so the tone is as loud as the phone can play it without distorting. Loudness normalization is the wrong tool here: a ringtone is not competing with other clips, it is competing with a bus, and you want its peaks using the full range.
Android: copy an MP3 and you are done
Android accepts MP3, WAV and OGG as ringtones with no conversion at all. Export MP3 at 192 kbps — a twenty-second tone comes to around 500 KB — and you have the finished file.
There are two ways in. The simplest is to do the whole edit on the phone itself: this editor works in mobile Chrome, the download lands in Downloads, and then Settings → Sound & vibration → Phone ringtone offers an add button (labelled + , “Add ringtone” or “My Sounds” depending on the manufacturer) that opens the file picker. The alternative is to connect the phone over USB and copy the file into the Ringtones folder on internal storage, where it appears in the list after the media scanner notices it — a reboot forces that if it does not.
The same file can be an alarm or a notification sound by putting a copy in the Alarms or Notifications folder instead. For a per-contact tone, open the contact, choose Edit or the overflow menu, and set the ringtone there — it overrides the default for that caller only.
iPhone: the file has to become an .m4r
iOS only accepts ringtones as .m4r files, which are AAC audio in an MP4 container with a different extension. No browser can write AAC, so export WAV from the editor — it is exact, and it is the format both conversion routes expect — and convert from there.
Without a computer, use GarageBand for iOS. Save the WAV to the Files app, open GarageBand, start any project, open the loop browser and pull the file in from Files, then go back to My Songs, press and hold the project, and choose Share → Ringtone → name it → Export. GarageBand enforces the 30-second limit itself and will offer to trim anything longer.
With a Mac: import the WAV into the Music app, select it, and use File → Convert → Create AAC Version. Drag the resulting .m4a to the Desktop, rename its extension to .m4r, connect the iPhone, open it in the Finder sidebar and drag the .m4r onto the device. On Windows, iTunes does the same conversion and sync. Either way the tone then appears at the top of Settings → Sounds & Haptics → Ringtone.
When the tone does not show up
On iOS the usual cause is length: a file over 30 seconds is often dropped without a message. The second is the extension — an .m4a that was never renamed will sync as music instead of as a tone. The third is that the file was copied into the wrong place; a .m4r has to be dragged onto the device itself, not into a music playlist.
On Android it is nearly always the media scanner not having indexed the new file yet. Rebooting fixes it; so does picking the file through the ringtone screen’s add button rather than expecting it to appear on its own.
And one thing no tool can fix: songs downloaded for offline listening inside Apple Music, Spotify or YouTube Music are encrypted. A browser cannot decode them, the editor will say so rather than guess, and that is by design. Start from a file you actually hold — a purchased download, a CD rip, your own recording.
The copyright part, briefly
Making a ringtone from a track you own, for your own phone, is the kind of private copying that most jurisdictions treat as unremarkable. In much of the European Union it is covered by an explicit private-copying exception, funded by levies on blank media and storage devices; other countries reach a similar result through fair dealing or fair use doctrines.
What is not covered is distribution: uploading the file to a ringtone site, selling it, sending it around as a product, or using it in a video, a game or anything commercial. Businesses are a separate case — a shop or a call centre playing a recording to customers needs a public performance licence, whatever the file came from.
Finally, the copy you start from has to be one you are allowed to have. Circumventing DRM is separately illegal in many countries regardless of what you do afterwards — which is one more reason this editor decodes only what the browser will decode, and never tries to work around a protected file.
The takeaway
Pick a hook that lives in the midrange, cut fifteen to twenty-five seconds of it, add a short fade in and a longer fade out, and peak-normalize to −1 dBFS. For Android, export a 192 kbps MP3 and choose it in the sound settings. For iPhone, export a WAV, convert it to .m4r with GarageBand or the Music app, and keep it under 30 seconds. Use music you own, keep it on your own phone, and the whole job takes less time than reading this page.
Open a file and cut, fade or normalize it right in the browser
More guides
06:00Lossless vs lossy audio trimming: what happens to your MP3 when you cut it
Editing an MP3 means decoding it, changing numbers and encoding it again. Here is what that second encode costs, why frame-accurate cutting is a different trade-off, and when a WAV master is worth the disk space.
07:00Peak vs loudness normalization: making clips sound equally loud
dBFS, peak, RMS and LUFS explained without the maths, the targets that broadcasters and streaming services actually use, and why an editor will sometimes refuse to reach the loudness you asked for.