The 18-year-old went missing on the evening of 20 November and was last seen at a bus stop in Plymouth.
She was due to travel to the city centre to meet friends but never arrived.
Three days later, her body was discovered near Bovisard Beach – about seven miles away from her home.
Wearing jeans and a grey jumper, Cody Ackland appeared at Plymouth Crown Court on Tuesday morning to enter his plea.
The 24-year-old spoke only to confirm his name, and date of birth and admit to murdering the teenager on a date between 19 and 23 November.
Judge Robert Linford listed his case for sentencing on 19 May and warned him he would receive a statutory sentence of life imprisonment, adding: “The only issue will be the minimum term.”
Close family members of Miss McLeod, including her mother, father and brother, sat in the courtroom while friends watched proceedings on a video link from an adjacent court.