Context.Extracting precise pulse times of arrival (TOAs) and their uncertainties is the first and most fundamental step in high-precision pulsar timing. In the classical method, TOAs are derived from total intensity pulse profiles of pulsars via cross-correlation with an idealised 1D template of that profile. While a number of results have been presented in the literature that rely on the ever increasing sensitivity of these pulsar timing experiments, there is no consensus on the most reliable methods for creating TOAs, and, more importantly, on the associated TOA uncertainties for each scheme.Aims.We present a comprehensive comparison of TOA determination practices. We focus on creating timing templates, TOA determination methods, and the most useful TOA bandwidth. The aim is to present a possible approach towards TOA optimisation, the (partial) identification of an optimal TOA-creation scheme, and the demonstration of optimisation differences between pulsars and data sets.Methods.We compared the values of data-derived template profiles with analytic profiles and evaluated the three most commonly used template-matching methods. Finally, we studied the relation between timing precision and TOA bandwidth to identify any potential breaks in this relation. As a practical demonstration, we applied our selected methods to European Pulsar Timing Array data on three test pulsars, PSRs J0218+4232, J1713+0747, and J2145−0750.Results.Our demonstration shows that data-derived and smoothed templates are typically preferred to some more commonly applied alternatives. The template-matching method called Fourier domain with Markov chain Monte Carlo is generally superior to or competitive with other methods. While the optimal TOA bandwidth is strongly dependent on pulsar brightness, telescope sensitivity, and scintillation properties, some significant frequency averaging seems required for the data we investigated.