I can’t speak to everything that was bad with our Gatsby site because it wasn’t my domain but the two biggest issues were complexity and performance.
Gatsby introduces a ton of (in most cases imo) unnecessary complexity both in the developer experience and in the front-end rendering. The front-end complexity caused us issues with Gatsby trying to be too clever by trying to make a static site be more like a single-page-app, reducing page load performance and outright breaking things at times, especially when service workers were involved.
On the build performance front, the difference between Gatsby and Hugo is so far apart it’s crazy. We had ~10min builds with Gatsby and no working option for incremental builds, with Hugo full site builds are <5s.
Of course, both SSGs have their pros and cons so I don’t want to knock Gatsby unnecessarily, just that for our use-cases Hugo was the clear winner.