There is no single answer for this because it depends both on the amount of data you are subscribing for and on your willingness to tolerate latency when starting up and when changing routes.
waitOn
is a powerful tool, but it's also perfectly reasonable to activate global subscriptions. It's important to note that iron-router typically starts and stops subscriptions as routes change. I can imagine a scenario where, depending on the requested routes, you would continually start and stop a particular subscription. That latency could have been avoided by starting the subscription outside of the router, but that would exchange route latency for startup latency.
You will need to experiment and see how these things affect your application performance in order to determine the best option. I'll caution you that because the size of the data being subscribed to is a big factor in the latency, you may find that your results change as you move from development to production.
The only suggestion I have for measuring load time is to use APM. I haven't tried it myself yet, but I have heard it can help give a great deal of insight into performance.