The frequency of public transport during non-peak hours is typically lower than that during peak hours. This can result in extremely poor service quality during non-peak hours, with long waits for buses or trains.
It is possible to increase the frequency of public transport for off-peak hours, but that typically requires additional resources. This could mean a general rise in public transport fares. However, I am wondering if a time-differentiated fare structure would be a superior option. Such a fare structure would charge different fares, dependent on the time of boarding/arrival.
A first thought is to increase off-peak transport charges, to pay for the additional services deployed. This helps to make off-peak transport less of a loss-making venture, or even marginally profitable. However, increasing charges on non-peak rides would change public transport usage patterns, as some riders may instead seek to leave earlier or later to use the cheaper peak-hour transport. This increases the peak-hour burden, and simultaneously decreases the ridership (and profitability) of off-peak public transport. Therefore it is not a good option to charge more for off-peak fares.
The reverse fare structure seems to be a better idea. Charging more for peak-hour fares reshapes transport-usage patterns in a beneficial way, reducing the rush-hour load and increasing the ridership for off-peak transport. Furthermore, the additional charges ought to go a far way in subsidizing buses or trains running during less-profitable hours.