Every once in a while, while levelling up the crystarium for a character or monster, I get a "Crystarium Expanded" message, and am able to choose some special bonus. Do these happen at regular intervals that I can track somehow? How many bonuses is it possible to get for your your characters?
The Crystarium is broken up into several levels, or stages: each stage has an number of nodes. If you scroll around the Crystarium grid, you should see all the nodes for the stage.
When you complete a stage by activating all the nodes, the Crystarium expands to the next stage and you get a bonus.
For Serah and Noel, there are 22 Crystarium stages, allowing you to unlock 21 expansion bonuses. As I recall, that's all the expansion bonuses available, so it's just a matter of prioritizing which ones you want first.
For monsters, it depends entirely on the monster how many stages they have: early peakers (like the Pulse Knight) might only have one Crystarium stage, whereas late bloomers will have several.