To make ringtones for iPhone, iPhone 3G, iPhone 3GS, iPhone 4, iPhone 4S using only iTunes:
1. Right click on the song you are going to make into a ringer and select "Get Info".
2. Go to the "Options" tab and go down to the "Start Time" and "Stop Time" check boxes. Check both boxes and input the time you want your ringer to start/stop. The ringer has to be 30 seconds or less. Click "OK" when you're done.
3. Right click on your newly "clipped" song and select "Create AAC Version". The song will be re-encoded using the start and stop times determined (If your menu item does not read "Create AAC Version" and reads "Create MP3 Version"(or some other format) please go to "iTunes -> Edit -> Preferences -> General" and change the "Import Using" drop down menu to "AAC Encoder").
make free ringtones for iPhone
4. After the song is done encoding navigate to your iTunes Music folder, locate your song, and drag it to your desktop. After the song is on your desktop go back to iTunes and delete the clipped version from you iTunes library (It won't delete it from your desktop, it will only remove it from iTunes).
5. Go back the song on your desktop and right click on your song and chose "Properties". Go to the name and extension section and change the extension from .m4a to .m4r (or you can just change the extension right from your desktop).
6. After the extension is changed simply double click on the file to add it to your iTunes library under the ringtones section. Sync your phone with iTunes and you're done!
Note: Remember to go back into iTunes and uncheck your custom start and stop times for the original version of your song.