I discovered a tool called rClone a few months back.
If you're not sure what rsync is, this isn't going to be for you.
rClone supports something like 50 cloud providers and after just a small amount of inconvenience supplying it with API keys you can quite quickly start using it to back up all your cloud data.
That was kind of my use-case and how I discovered it in the first place, though Sadly, iCloud isn't supported.. because Apple are awful at that stuff.
Anyhow tonight I had a different need; to migrate over 900GB of data from one service to another. I was dreading doing this (again! fml!) over my home broadband, which is a 4G affair, when it struck me that rClone could probably help.
My 4G broadband astonishes me by the way. I live in the middle of nowhere and I get 35Mbs pretty syncronously. It's unlimited quota too, though in the smallprint you will find a 1TB/month AUP.
I've gone over this, occasionally by a lot and it's never been enforced.
Anyhow, 15 minutes later, I had a Digitalocean VM running with rClone installed and had configured both Dropbox and Google Drive as sources.
bash> rclone sync -vv dropbox: googledrive:
Then with this single command, all my data begain hairpining through this new box at something averaging 400+Mbs without coming anywhere near my home network.
When it was finished, I killed it. Total cost of about 12h usage which is about 14p. This would have taken me all week to manage properly at home.
Anyhow, you're looking to move between cloudy providers, I highly recommend it. rClone for the win.