Eae Kadu, beleza? Parabéns, é isso ai mesmo. Acho que se a pessoa não consegue identificar/entender este erro, é porque ela não entendeu ainda o funcionamento do React.

Vou deixar um vídeo aqui que o pessoal da Rocketseat fez, falando justamente deste ponto. Abraço: https://www.youtube.com/watch?v=kCpca2z2cls

Uma coisa que eu percebi é que se você está utilizando o useEffect para atualizar o valor de um estado com base no valor de outro estado, provavelmente você está cometendo esse erro de ter várias renderizações sem necessidade.

acho que e por isso que as pessoas tão migrando pra outros frameworks como svelte,ele simplesmente funciona sem maluquisse e problemas de performance

como o Matheus falou, quando aprendemos os principais hooks ( useState / useEffect ) achamos que é a solução pra tudo pq é bem mais simples, mas algumas vezes pode ser desnecessário por não saber o real motivo de usá-los.
É normal quando você aprende os hooks useState e useEffect querer sair usando por todo o código, sem entender realmente qual o objetivo deles. Como eu disse, se você entende o fluxo de renderização do React, em quais momentos ele vai recalcular e renderizar o componente novamente e atualizar os dados, dificilmente você vai cair nesses problemas, ou se cair, vai identificar rapidamente.