Newly created iPhone contacts not syncing to iCloud is an issue to which I recently came across and it was driving me mad.
Note: Before finding the solution, I looked for ways go around this and to keep a backup copy of my iPhone contacts directly on my computer in case iCloud continues to fail. As a result, I found a neat alternative way to export iPhone contacts instead.
If you google “iCloud contacts not syncing” or “iphone contact sync” there are numerous posts, including Apple Support Community ones which all talk about rebuilding your address book.
My problem however, was different – simply, newly created iPhone contacts will not sync to iCloud despite having enabled iCloud sync. The solution to this rather simple, but few people know about it and Apple is not very helpful in clarifying the way out.
UPDATE for iOS 7 users: there is a detailed article for causes of iPhone contacts not syncing and disappearing which you may find useful:
How to solve iCloud-contacts-not-syncing problem in 3 easy steps:
1. On your iPhone, navigate to Settings > Mail, Contacts, Calendar
2. Under Contacts, make sure you set the Default Account to iCloud
3. Now your new iPhone contacts will sync normally with your iCloud account
What causes iCloud contacts not syncing?
If you have enabled iPhone contact sync via both the iCloud and a third-party account such as your Gmail/Yahoo/etc. (via Exchange), your iPhone will have to decide to which of the two accounts newly created iPhone contacts are added.
It is your email account that your new iPhone contacts were synced with and not your iCloud account. Changing the Default-account option as the steps above indicate, will set iPhone contacts created outside of a specific account to be synced with your iCloud instead.
It is always recommended to keep a backup of your iPhone contacts at a safe offline location in case you misplace some or all of your contact list. You can use a number of apps to easily backup iPhone contacts to your PC.
To prevent messing up with your iPhone contacts list via using the iCloud, have a look at the video below which quickly shows how to export and backup iPhone cotnacts to your computer before syncing with iCloud: