If you have a Mac with sufficient storage, you can just enable iCloud to store photos locally, then export them. That could miss some data (I think descriptions you set for a photo were not exported the last time I checked), but it is most of the data.
And, I may have conflated issues: Iphone Storage < Icloud storage vs opposite way.
I would imagine this doesn't work well after a certain amount of data. I’m also not sure they were the originals.
I guess it's because the core offering is still some version of "a folder that syncs", and the photo gallery is just a view bolted on top.
I steer clear of any solutions scoped to photos only, as it always turns out they either screw you up by reducing quality and throwing away the originals, or trying to lock you in by only offering metadata they keep in a database they will not let you export.
I remember seeing a longer blogpost re the topic of retroengineering the Apple phot sync story, but I could not find it.
[1] github.com/rcarmo/PhotosExport [2] https://github.com/craigtrim/icloud-photo-export [3] https://icloud-photos-downloader.github.io/icloud_photos_dow...
The answer is : it's hard. If you only have a iphone and more photos on your icloud than can fit on your phone, you're kinda screwed if you don't know what you're doing.
AFAIK Apple makes it very difficult to get all your icloud photos bulk downloaded, original quality off icloud.
Google is no better.
It's much easier to start backing up from the beginning but once you're stuck on icloud it's hard.