"We have to assume that this is the missing Sebastian," a police spokeswoman said on Wednesday.
Police had mobilised helicopters, boats, and tracker dogs in their three-day search for the boy, who went missing from a "pirate ship" playground on Amrum, a tiny island off the coast of the German state of Schleswig-Holstein.
"A holiday photo showed where the boy was last digging in the sand," police spokesman Matthias Glamann said. Police then dug at that spot, stopping at 1.5 metres when they found a body.
"The rescue workers soon found a lifeless child," Glamann said. He refused to answer the question of whether there was any sign of violence on the body.
Sebastian was last seen playing at the playground on Sunday with another boy, named Lukas, who told police that he left the playground at around 4:30pm.
Sebastian's parents reported him missing at 8pm.
The playground was only around 200 metres from Sebastian's parents' holiday home.