Generally speaking you should try to keep FSMs as small as possible. Use multiple small FSMs that talk to each other instead of one giant FSM. A giant FSM is harder to understand and maintain.
The same goes for States. Each State should perform a specific, discrete task. Smaller States are easier to understand and maintain.
If you end up with a large State that's doing too much work, you can drag actions out of it to quickly make new states: