Is there a rule of thumb when to create a new zpool instead of expanding the current?
Right now I have 100TB and can either expand with another 100TB or create an extra.
It depends on your zpool arrangement, RAID type and whether you'll have any desire/ability to rewrite the data.
If you're using ZFS in a group of RAIDZ vdevs, you can only expand by adding vdevs. New data will utilize the full set of drives, but existing data will not be redistributed.
The same applies to zpool mirrors, but you can add those in smaller drive increments (2 disks).
In terms of pool size, it depends on what you're doing. Do you need 200TB in one pool? Ideally, you're separating this out into multiple exports, so the underlying pool may not matter. That's more of an environment-specific issue.