Managing images and files could become a pain

A very annoying thing, maybe a deal breaker... When adding images or files, it takes some time. From a content type that has an attachment field, click add, then it opens up another window with a completely different content type, media. Then you must add tags to every uploaded file, then click multiple times to get back to the original content. If the original content is a blog article, this is not so bad. But if the original content is something like a photograph, a logo, a slideshow, something that inherently is that file, then this is very redundant. Adding many photos to the system would be unnecessarily time consuming.
A more important issue is that all uploads are managed in one list, in the "media library”, exactly like Wordpress! For a “headless” CMS that is to be used for applications with many custom content types, this is unaceptable. It’s time consuming and error prone to constantly search through all the uploads by tag. You’ll have to remember to add a tag or tags to each uploaded media file, then remember which tag you used. They let you search by tag, but you can’t see a list of all the tags ever used. You’ll have to remember which keyword to search for.

☝️ The above issue is not a problem (for fields) if using Cloudinary

Contentful can easily be integrated with Cloudinary. Highly recommend you to use Cloudinary. It’s the best, the industry leading way to manage to manage images, and is also good at hosting videos. This integration is seamless. Cloudinary has a generous free tier. So, no reason not to. 💯👍👏 However, if you do not use Contentful, and have many images, then read the next section.

😭 Unfortunately, images inside blog posts (text area) are a problem

Cloudinary can NOT be used for images which are embedded into the body of a text/article. You’ll have to add to the built-in media library. That is a flat list. So, it’s difficult to organize. Fortunately, if you’re only using these uploads for images inside the body of a text, then you don’t need to have nested folders. One flat list is fine.
But, how to handle resizing, optimizing, and transforming of images embedded into the body of a text? Idk. That is a limitation! You’ll have to make sure to resize and edit the image before uploading to Contentful. They let you upload from a URL, which could point to a Cloudinary URL, but that is not so useful, because Contentful just saves that file to its own servers. If you did not use the correct URL variables (non-technical users will probably not choose correct variables), then the image will be forever saved as the wrong size.