Flutter › State Management with setState

How can excessively calling setState too frequently, or calling it at too high a level within your widget tree, genuinely lead to noticeable performance problems within your app?

Intermediate

Answer

Calling setState causes the entire enclosing State object's own build method to run again, meaning if that particular setState call happens at a genuinely quite high level within your overall widget tree, an unnecessarily large portion of your entire interface may genuinely end up being needlessly rebuilt even though only some genuinely small, narrowly specific part of it actually genuinely needed to actually change, and properly and deliberately keeping your StatefulWidgets genuinely narrowly scoped, extracting only the genuinely specific part that actually needs to rebuild into its own genuinely separate smaller widget, helps meaningfully avoid this particular kind of common, quite easily overlooked performance problem.
// A narrowly scoped StatefulWidget limits the impact of each setState call
class Counter extends StatefulWidget { ... }

// Rather than managing the counter's state at a genuinely much higher level
Real-world example A developer notices their entire complex screen unnecessarily rebuilds every single time a genuinely small counter widget's own value changes, and properly fixes this particular performance problem by extracting that specific counter into its own genuinely separate, narrowly scoped StatefulWidget instead.

Common follow-ups: How do you actually properly identify precisely which specific setState call is actually genuinely causing an unnecessary widespread rebuild?;What genuinely other specific techniques besides simply narrowing scope help mitigate this exact same kind of performance concern?