The posts, like this one, usually created by good middle developers, but not seniors. This is why. All pros and cons what you mentioned here are about two extremes. Nobody uses pure REST API nowadays. You always can create mixed endpoints, with serializers, to get or post any data with any fields you need. At the same time, it's too complicated to use GraphQL in small or medium projects and support all of these query abilities. Which is not optimized in most cases, because this is the payment for the universal endpoint. GraphQL was invented on Facebook as a response to its growing departments and amount of developers. It was easier for them to provide the Query sublanguage than every second day making changes in many endpoints. But we aren't Facebook or Netflix. We don't work in a company with thousands of developers. And we don't need this GraphQL just because this is the next popular hype. Senior developers must bear this in mind when they choose a stack of technologies.