Rosdeep Kular, who appeared in court under her married name of Rosdeep Adekoya, had been charged with the murder of her son Mikaeel Kular, but pleaded guilty to a reduced charge of culpable homicide when she appeared at the high court in Edinburgh today.
The 34-year-old admitted assaulting and killing Mikaeel at the family's flat in Edinburgh and hiding his body in a woodland in Fife.
Rosdeep had initially claimed Mikaeel disappeared from their home, triggering a major operation as hundreds of people helped police search for the little boy in the two days before his body was found 20 miles away.
She pleaded guilty to repeatedly punching her son and causing his body to hit against a hard object or inflicting blunt injuries on his head and body between January 12 and 15.
More From This Section
Prosecutors say she wrapped the boy in a duvet, put his body in a suitcase and drove him to a house in Fife where the family used to live with a relative before burying him in a woodland there.
The court heard that Rosdeep's internet history showed searches including "I find it hard to love my son", "I love all of my children except one", "Why am I so aggressive with my son" and "Get rid of bruises".
Mikaeel died on the night of January 14 from injuries inflicted the previous Sunday.
She smacked him and struck him on the body and head with a clenched fist.
When Mikaeel was sick for a third time, she dragged him to the shower by his arms and "beat him heavily" on his back as he lay over the bath edge.
Prentice said "It's likely that the internal damage was inflicted during this last beating".
Over the next few days Mikaeel's condition worsened and he was kept out of nursery.
His mother did not take him to a doctor because of the bruising, the court heard.