Please be aware that Beijing and Shanghai has multiple airports and that these results are for all airports serving the city.
The best month to fly between Beijing and Shanghai is July and the most expensive month to fly is October. (Average prices, based on 2544 datapoints.)
The best day to arrive at Beijing is Monday and it would be best to avoid Friday, as prices are on average 23.3% higher than on Monday. (Average prices, based on 914 datapoints.)
The cheapest airline flying from Beijing to Shanghai is China United Airlines. They are 73% cheaper than Air China. (Average prices, based on 2550 datapoints.)
The best time to fly is at around 7. (Average prices, based on 2630 datapoints.)