Abstract: A method of measuring the transit time of an ultrasonic wave in a medium, by passing an ultrasonic wave pulse through a timing path in the medium, receiving the ultrasonic wave pulse at the exit of the timing path and comparing a first signal representative of the ultrasonic wave pulse on entry to the timing path with a second signal representative of the ultrasonic wave pulse received at the exit of the timing path. At least one cycle and associated zero-crossing point of the first signal is correlated with a corresponding cycle and zero-crossing point of the second signal, and the time interval is measured between the zero crossing points, in order to determine the transit time of the ultrasonic wave through the medium. The method is useful in a sensor for measuring gas composition, as well as bulk gas flow velocity. The sensor and method may be used in a dual channel apparatus for investigating vapour sorption by a substrate.