If you shoot raw rather than jpeg and have a decent camera your files are likely to be very large. Of the online storage options, Google Photos has the best search capabilities for finding particular shots. But Google’s free service only applies to “high resolution” files rather than the originals. To create these files, Google will take your raw files and compress them into jpegs that do not exceed 16 MB. If you google this process you will find comparisons that seem to show that the compression is not bad, and in many cases the compressed files are difficult to distinguish from the originals. Still, this somewhat defeats the purpose of shooting with a good-quality camera as opposed to a smart phone. Unfortunately, uploading the original files (as opposed to letting Google compress them) can get rather expensive if you shoot a lot (like me, as I bracket all my photos, resulting in three versions of every shot).
Amazon Prime offers free unlimited storage of raw camera files, which is great, though in practice, their uploader seems quite slow for some reason. Still, this will provide online backup of the unaltered original files. However, the Amazon service, unlike Google’s is not smart enough to capture the exif data, which in raw is stored in separate .xmp files. This means that all your raw photos will be thrown in a big basket called “undated.” I find this unsatisfactory because in a crisis if I had to depend on this it would be an enormous headache to sort through this big random basket of files.
My current solution is to upload the raw files to both services, letting Google compress the files. That way all of the dates and shooting information are available in Google Photos, but if I need the originals I could get them from Amazon by searching for the file name (in practice, everything lives in local storage, but it’s a good idea to have online backup as, well, a backup (I also use iDrive to backup my whole computer.)
I think this solution should work fine. Until the vendors change their terms, that is!