A couple common pitfalls:

Rebuilding far more of the UI than expected each frame.
To track widget rebuilds, see Show performance data.

Building a large list of children directly, rather than
using a ListView.

For more information on evaluating performance
including information on common pitfalls,
see the following docs:

Performance best practices

Flutter performance profiling

Mobile-only advice

Do you see noticeable jank on your mobile app, but only on
the first run of an animation? If so, see
Reduce shader animation jank on mobile.

Web-only advice

The following series of articles cover what the Flutter Material
team learned when improving performance of the Flutter Gallery
app on the web:

Optimizing performance in Flutter web apps with tree shaking and deferred loading

Improving perceived performance with image placeholders, precaching, and disabled navigation transitions