Christmas Number 1 2017: Ed Sheeran versus Eminem at the midweek stage of the week

See how the 2017 Official Christmas Chart Top 40 is shaping up at the halfway mark.

Ed Sheeran and Eminem are fighting it out for the 2017 Official Christmas Number 1 as they pull ahead of the competition in the race for the festive crown, can confirm.

Based on sales and streams up to midnight last night, Ed’s Perfect is currently holding its lead over the midweek Top 40, with the song on track to be the week's biggest seller. However, Eminem's River ft. Ed Sheeran, taken from the rapper’s new album Revival, is currently outperforming Ed on streaming, meaning it's still all to play for between now and Friday’s final whistle.

Perfect reached Number 1 on the Official Singles Chart two weeks ago, propelled to the top after a new version of the track with Beyoncé was released. 

Wham's Last Christmas trails closely behind Eminem at Number 3 midweek. Last Christmas is the best-selling song ever never to reach Number 1, and this year, a campaign backed by bandmate Andrew Ridgeley has been launched to get the festive classic to the top one year after George Michael's death. Rita Ora’s Anywhere is up one place to Number 4 at the midway stage.

Elsewhere, Mariah Carey's All I Want For Christmas Is You is on course for a Top 5 finish (5) and could continue to climb in the run up to Christmas, while rapper Big Shaq lifts two places to Number 6 with Man's Not Hot following a special Christmas Edition release of the song. Take a look at the full list of Christmas Number 1 contenders.

Two more new Eminem songs are Top 40-bound this week: In Your Head starts at Number 13, and his Beyonce collaboration Walk On Water is set to rebound back into the Top 20, currently at 15.

MORE: Look back at every Christmas Number 1 ever

In addition to Wham and Mariah, a further 12 Christmas songs are set to land in Friday’s Official Christmas Chart Top 40, including The Pogues' Fairytale Of New York ft. Kirsty MacColl at 8, Band Aid's do They Know It's Christmas at 16, Shakin' Stevens' Merry Christmas Everyone at 19 and Brenda Lee's Rockin' Around The Christmas Tree at 22.

View the Top 100 Official Singles Chart Update in full