I don't know how many people know this, but I've been doing this since 2.0 because iTunes is kinda messed up the way it restores your iPhone. Say you restore your iPhone with a full wipe and restore. Then you choose a previous backup to restore all of your settings and applications. When your iPhone is done restoring to your backup, all your icons are mixed up on the SpringBoard.... what the heck? You want to get them back don't you? Well, I know a trick and I don't think it's documented anywhere. Here it goes. **Important: Before starting these instructions, backup your iPhone. Then go into iTunes preferences and turn on "Disable automatic syncing for iPhones and iPods" This way your backup won't get overwritten after your iPhone gets restored. 1. Restore your iPhone to a firmware (2.0, 2.1, or 2.2) and let it restart and activate. 2. Then iTunes will happily ask you if you want to restore from a previous backup (with all of your settings and Applications). Click the backup you want to restore to and let it restore and reboot. (Here's where things get messed up. Your iPhone backup actually restored the correct icon positions except none of your apps were installed before the restore was complete, so iTunes has to copy all of your apps back to your iPhone. When it does this, it copys them in alphabetical order, thus messing up the location of all your 3rd party icons). Here's how to fix this without memorizing where all your icons went. 3. Right click (or Control-click) on the iPhone icon in iTunes and choose "Restore from Backup" and choose the backup you chose in step 2 again. 4. Let your iPhone restore for a second time and when it reboots, all of your icons will be in their original places. (This is because iTunes didn't have to install the Apps because they were already there, thus keeping them in their original locations according to the backup). 5. Return your iTunes preferences and uncheck "Disable automatic syncing for iPhone and iPod" I hope these instructions were educational for all of you. Like I said, I don't know how well known this workaround is, but it works every time for me and I wanted to share it with the community. Please do not flame me for no reason.