Austin Sigg, 18, entered his plea to 15 counts, including first-degree murder, against the advice of his lawyers just days ahead of his scheduled trial, The Denver Post reported. Jefferson County District Court Chief Judge Stephen Munsinger accepted his plea.
Sigg, who appeared in court in dress clothes, answered "yes" when asked by the judge if the charges were based in fact. His mother Mindy Sigg cried as he made the admission, the Post said.
Some of Jessica's family were also in the courtroom, including her mother.
Sigg faces life in prison with the possibility of parole after 40 years on the murder count alone. He will be sentenced at a two-day hearing set for Nov. 18-19, the newspaper said.
Jessica disappeared on her way to school in Westminster in October 2012.
Sigg's mother called police to turn him in.
Reindeer recovered after escaping from Santa during lighting ceremony
Trader Joe's: Car crashes into Long Island store, injuring 11