I backed up my iphone's whatsapp chat history and tried to restore it to my Samsung galaxy s6 when install whatsapp. I've tried this countless times and always got 0 messages restored (also making sure to uninstall the app every time I try again). I even rebooted the phone, but none of it helped. and yes, I redid the icloud backup that time.
It seems like Wazzap Migrator was the answer, it costs money to restore media as well.
To extract the conversations + media:
1. Download the free backup extractor http://www.wazzapmigrator.com/faq/free-itunes-backup-extractor-windows.
2. Open it and select your iPhone (it should be plugged in to your PC of course).
3. Go into advanced and check "Applications".
4. Click "extract selected files".
5. The conversations should be stored in "Desktop\Extracted from backup for WazzapMigrator\Applications\net.whatsapp.WhatsApp\Documents\ChatStorage.sqlite" and the media folder in "Desktop\Extracted from backup for WazzapMigrator\Applications\net.whatsapp.WhatsApp\Library".
Make sure your have to paid version of Wazzap Migrator installed on your android phone. (Or you will only be able to restore conversations without media).
To put the extracted conversations + media on your android device to select in Wazzap Migrator:
1. Plug your android phone into your PC.
2. Go into your phone's internal storage via Explorer.
3. Create a folder, named anything, and drag
ChatStorage.sqlite and the media folder into it.
1. Install Whatsapp.
2. Open Wazzap Migrator.
3. Select your conversation file and media folder manually.
4. Start the conversion.
5. Reinstall and start Whatsapp.
6. If it detects a backup in your devices storage, tap restore.
7. That's it.
Keep in mind that my memory of what I did is sort of fuzzy. You should know what to do, however.